Docker 编写到 mariaDB 的链接

Docker compose linking to mariaDB

我正在尝试创建一个基本的开发机器 运行 php7nginxmariaDB,使用 docker-compose

我的compose文件精简版如下:

wwwroot:
 container_name: wwwroot
 image: wwwroot
 volumes:
  - .:/var/www
 restart: always
nginx:
 container_name: nginx
 image: nginx
 links:
  - php70  
 volumes_from:
  - wwwroot
 ports:
  - "80:80"
  - "443:443"
 restart: always
php70:
 container_name: php70
 image: kreable/php70
 volumes_from:
  - wwwroot
 links:
  - mariadb
 restart: always
mariadb:
 container_name: mariadb
 image: mariadb
 environment:
  DB_ADMIN_PASS: pass
 ports:
  - "3306:3306"
 restart: always

这工作正常并创建了所需的容器。问题在于尝试将基本 PHP 脚本连接到数据库。我总是得到:

SQLSTATE[HY000] [2002] Connection refused

我的 PHP 应用程序在 wwwroot 容器中。

我是否需要做任何进一步的配置才能让我的 PHP 应用程序连接到 mariaDB 容器?

谢谢。

查看您的代码,您已经设置了一个从 php70mariadb 容器的 link,但是 wwwroot 容器中没有。如果您尝试从您的 wwwroot 容器连接,那么您还需要从那里向 mariadb 添加一个 link。或者看起来您可能想要连接到 php70 容器。

此外,最好显示您用来尝试连接到 mariadb 的 PHP 代码,它会导致错误。