我需要运行多个WordPress容器链接到一个单一的MySQL容器+ Nginx反向代理,以便于处理VIRTUAL_HOSTS。Docker Nginx反向代理
这里是我想要(现在只有一个WP)做:
- WordPress的(hub.docker.com/_/wordpress/)
- 的Mysql(hub.docker。 COM/_/mysql /下)
- Nginx的反向代理(github.com/jwilder/nginx-proxy)
我工作的OSX,这是我在终端运行:
docker run -d -p 80:80 -v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy
docker run --name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest
docker run -e VIRTUAL_HOST=wordpress.mylocal.com --name wordpress --link some-mysql:mysql -p 8080:80 -d wordpress
我的Docker在192.168.99.100上运行,这使我得到了503的nginx/1.9.12错误。
然后192.168.99.100:8080使我如预期的那样进入WordPress。
但是http://wordpress.mylocal.com它不工作;它不是重定向到192.168.99.100:8080,我不明白我在做什么错。
有什么建议吗?谢谢!
虚拟主机端口8080,让nginx直接路由到容器,而不是通过主机。 – tpbowden
尝试没有暴露8080,但仍然是相同的结果:( 正如这里描述的'github.com/jwilder/nginx-proxy'的容器需要公开端口 – Kianda
容器需要*公开端口,但没有必要*发布*他们(所以,你可以删除'-p 8080:80'(和'-p 3306:3306',如果你不使用外部工具连接到MySQL)。你有一个通配符DNS设置,或者编辑您的主机文件,使“wordpress.mylocal.com”解析为192.168.99.100? – thaJeztah