docker-从另一个容器连接到mysql容器

前端之家收集整理的这篇文章主要介绍了docker-从另一个容器连接到mysql容器 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图从撰写文件指定的同一网络上的另一个容器中连接到mysql容器.

version: "2"
services:
  web:
    build:
      context: .
      dockerfile: Nginx/Dockerfile
    ports:
      - "8080:80"
    volumes:
      - ./data:/srv
  PHP:
    build:
      context: .
      dockerfile: PHP-fpm/Dockerfile
    volumes:
      - ./data:/srv
  MysqL:
    image: MysqL
    environment:
      - MysqL_ALLOW_EMPTY_PASSWORD=yes
      - MysqL_USER=dummy_user
      - MysqL_PASSWORD=12345

我不确定如果尝试从PHP容器连接到MysqL容器,连接参数将是什么.

具体来说,来自同一docker-compose网络的另一个容器中MysqL容器的主机和端口是什么?

我试过主机:MysqL端口:3306,但这似乎不起作用.

最佳答案
您应该链接容器.将端口部分添加MysqL容器,并将链接部分添加PHP容器.

version: "2"
services:
  web:
    build:
      context: .
      dockerfile: Nginx/Dockerfile
    ports:
      - "8080:80"
    volumes:
      - ./data:/srv
  PHP:
    build:
      context: .
      dockerfile: PHP-fpm/Dockerfile
    links:
      - MysqL:MysqL
    volumes:
      - ./data:/srv
  MysqL:
    image: MysqL
    ports:
      - "3306:3306"
    environment:
      - MysqL_ALLOW_EMPTY_PASSWORD=yes
      - MysqL_USER=dummy_user
      - MysqL_PASSWORD=12345

使用该配置,您将能够使用MysqL:3306从PHP访问MysqL容器

一点文档:https://docs.docker.com/compose/networking/#updating-containers

猜你在找的Docker相关文章