我需要運行多個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