我希望能够访问包含Web应用程序的同一主机上的多个容器。所以,我的主机可以通过ip地址进行访问,我希望从外部能够使用以下URL访问我的容器:
ip_host/container1
为了使其有效,我找到了Traefik解决方案。首先,我跟踪了traefick quick start。
所以这里是我的docker-compose.yml文件:
version: "2"
services:
traefik:
image: traefik
command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
ports:
- "80:80"
- "8080:8080"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /dev/null:/traefik.toml
php1:
image: php:7.0-apache
labels:
- "traefik.backend=php1"
- "traefik.frontend.rule=Host:php1"
volumes:
- ./php1:/var/www/html
php2:
image: php:7.0-apache
labels:
- "traefik.backend=php2"
- "traefik.frontend.rule=Host:php2"
volumes:
- ./php2:/var/www/html
之后
docker-compose up -d
我无法使用以下命令卷曲/访问任何我的收件人:
curl -H Host:php1 http://host01
我是否理解Traefick的用途?这只是我构建它的方式并不好吗?我是否必须在/ etc / hosts中添加一些新条目?
答案 0 :(得分:1)
请尝试:
curl -H Host:php1 http://php1