【发布时间】:2021-10-26 14:52:24
【问题描述】:
我正在使用这个配置(简化)
version: '3.8'
services:
mysql:
container_name: mysql
image: mysql:8.0
restart: always
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: test
MYSQL_USER: symfony
MYSQL_PASSWORD: symfony
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
ports:
- 3306:3306
volumes:
- db-data:/var/lib/mysql
networks:
- dev
labels:
traefik.enable: true
traefik.http.routers.mysql.rule: Host(`mysql.vws.dev`)
traefik.http.services.mysql.loadbalancer.server.port: 3306
phpmyadmin:
image: phpmyadmin
container_name: phpmyadmin
restart: always
depends_on:
- mysql
ports:
- 8090:80
links:
- mysql
environment:
PMA_HOST: mysql
PMA_PORT: 3306
networks:
- dev
labels:
traefik.enable: true
traefik.http.routers.phpmyadmin.rule: Host(`phpmyadmin.vws.dev`)
traefik.http.services.phpmyadmin.loadbalancer.server.port: 80
reverse-proxy:
container_name: traefik
image: traefik:v2.5
command: --api.insecure=true --providers.docker
ports:
- "80:80"
- "8080:8080"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
volumes:
db-data:
networks:
dev:
所以 mysql 和 phpmyadmin 容器可以很好地通信,但是当我尝试通过 http://phpmyadmin.vws.dev/ 在浏览器中访问 phpmyadmin 时,我有一个网关超时。
注意:当我从 phpmyadmin 规范中删除 Network: dev 时,我可以正常访问 phpmyadmin,但是当我尝试登录时,它无法访问 mysql db
【问题讨论】:
标签: docker docker-compose traefik