私はドッカーには新しく、システムを稼働させるために2日間戦っています。私の作成ファイルは、nginx、php-fpm、mysql、およびphpmyadminの各コンテナを作成します。私はお互いにすべてのコンテナをpingできます。しかし、マウントされたpublic_htmlボリュームからデータベースに何かをインストールしようとすると(データベースにテーブルを作成する必要があるアプリケーションをインストールする場合など)、アプリケーションは単にデータベースに接続できません。私は以上の資格情報が正しいことを確認しました。私の人生にとって、私はどこが間違っているのか分かりません。どんな助けでも大歓迎です。私は以下の自分の作成ファイルを含めます:mysqlにリンクされたDockerコンテナは接続できません
version: '3'
services:
www:
container_name: site1-www
image: nginx:1.13.7-alpine
expose:
- "80"
ports:
- 8001:80
networks:
datacentre:
aliases:
- site1www
env_file:
- ".env"
environment:
- NGINX_HOST=localhost
volumes:
- /mnt/www/site1.test/public_html:/usr/share/nginx/html/
-
/mnt/www/site1.test/conf/default.conf:/etc/nginx/conf.d/default.conf
depends_on:
- db
links
- db
phpfpm:
build: ./phpfpm
container_name: site1-phpfpm
networks:
datacentre:
aliases:
- site1php
volumes:
- /mnt/www/site1.test/public_html:/usr/share/nginx/html
- /mnt/www/site1.test/conf/php.ini:/usr/local/etc/php/php.ini
depends_on:
- db
links
- db
db:
container_name: site1-db
image: mariadb:10.3.2
ports:
- 3400:3306
env_file:
- ".env"
environment:
- MYSQL_DATABASE=test1db
- MYSQL_ROOT_PASSWORD=password
- MYSQL_USER=test1user
- MYSQL_PASSWORD=password
networks:
datacentre:
aliases:
- site1db
volumes:
- /mnt/dbdata:/var/lib/mysql
dbadmin:
image: phpmyadmin/phpmyadmin:latest
container_name: site1-dbadmin
ports:
- 8000:80
networks:
datacentre:
aliases:
- site1dbadmin
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
depends_on:
- db
links
- db
networks:
datacentre:
external:
name: datacentre_net
あなたのリンク設定が 'links'または' links: ' – Apolozeus
であるかどうか確認してください。あなたの 'app'がポート3400に接続していない可能性がありますか? – Forbs
ドッカーネットワーク上の@Forbsポート3306 – Matt