我尝试用vagrant设置本地VPS,并在这个vm中安装了docker。
这是我的流浪汉档案
Vagrant.configure("2") do |config|
config.vm.box = "xenial64"
config.vm.network :forwarded_port, guest: 80, host: 8080
config.vm.provision "docker"
config.vm.provision :shell, :path => "install.sh"
config.vm.synced_folder ".", "/vagrant", :mount_options => ["dmode=777", "fmode=777"]
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024"
vb.cpus = 2
vb.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant", "1"]
end
end
在我处理完这个文件后,我用ssh连接到其中,然后安装docker compose
并运行docker compose。yml公司(
here is my lemp stack source
)
一切正常。我用索引进行了测试。php我甚至运行了opencart,而且它运行正常。
但是,问题是:我无法像往常一样通过mysql WorkBench或SqlYog连接mysql数据库:
SSH Tunnel :
SSH Host Address : 127.0.0.1
Username : vagrant
SSH Port : 2222
Password : vagrant
MySQL :
Mysql Host Address : localhost
Port : 3306
username : root
password : root
我尝试将mySql主机地址更改为172.18.0.2,这是docker内部mySql容器的ip地址
docker inspect <container id>
而且不起作用。
这是我的docker作曲。yml:
version: "2"
services:
nginx:
image: nginx
restart: always
ports:
- 8080:80
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
- ./nginx/log:/var/log/nginx
volumes_from:
- fpm
depends_on:
- fpm
- db
links:
- db
fpm:
build: ./fpm
restart: always
volumes:
- ./app/public:/var/app/public
- ./app/storage:/var/app/storage
links:
- db
db:
image: mysql:5.7
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=application
restart: always
谁能帮帮我吗?非常感谢。