Docker容器在本地连接到MySQL数据库 – >redirect到另一个容器

我是Docker的新手。

我已经读过,最好每个容器保持一个应用程序。

我需要运行Web应用程序(LAMP堆栈)。 所以我find了运行PHP + Apache的容器。

现在我需要build立一个MySQL容器。 但是我不确定什么是正确的做法。

我读了可以将多个容器连接在一起。

当它尝试连接到本地mysql数据库时,它的想法是让它运行PHP + Apache的容器。

但将所有本地连接redirect到另一个容器。

我的另一个想法是提供环境variables与主机在哪里应该所有的连接去。 在这种情况下,我需要有公共可访问的MySQL服务器,但我需要保持私有和只能在本地访问。

你可以请build议一个更好的select在我的情况下select?

谢谢

使用docker-compose :

例如,从这个docker-compose.yml 。 把它放在你的PHP Dockerfile相同的目录:

 version: "3" services: web: build: . ports: - 8000:80 depends_on: - db db: image: mysql environment: - MYSQL_ROOT_PASSWORD=something volumes: - ./mysql-data:/var/lib/mysql 

然后:

 docker-compose up 

所以感谢Dockernetworking,你可以像这样指出你的PHP: db:3306