前提・実現したいこと
docker初心者です。
docker-composeにてphpの開発環境を構築したいと思ったため、環境の構築を行なっていたのですがphpmyadminに接続ができません。
もともとMAMPにてphpやmysqlなどの学習を行なっていましたが、今回dockerにて再度開発環境を整えてみたいと思い、リンク内容←こちらのサイトを参考に各ファイルを作成しました。ファイル内容は該当フォルダに記載させていただきます。
参考サイトをもとに、ディレクトリ・ファイルとその中身をコーディングしていきました。ファイルの準備が終わった段階で、[docker-compose up -d]をターミナルに入力し、コンテナの起動には成功したのですが、phpmyadminにのみアクスができない状況です。
localhost:8080は接続ができたのですが、localhost:8888に接続すると、アクセス拒否されてしまいます。
以前使用していたmampが影響しているのではないかと考えたため、[AppCleaner]をインストールし、MAMPや関連ファイルを削除しましたが、結果は変わりませんでした。
どうすればいいでしょうか?
私自身が学習してまだ経験が浅いため、質問の仕方も下手くそかと思います。必要な情報も載せきれていないと思うので、ご指摘いただけると幸いです。
###コンテナの起動時のターミナル画面
Starting mysql_host ... done Starting php-test_php_1 ... done Starting test_phpmyadmin ... done Starting php-test_nginx_1 ... done
###ディレクトリ・フォルダ
php-test ├── docker-compose.yml ├── mysql │ └── data ├── nginx │ └── nginx.conf ├── php │ ├── Dockerfile │ └── php.ini └── www └── html └── index.php
発生している問題・エラーメッセージ①
MySQL のメッセージ 接続できません。設定が無効です
発生している問題・エラーメッセージ②
mysqli::real_connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known
発生している問題・エラーメッセージ③
mysqli::real_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: Name or service not known
発生している問題・エラーメッセージ④
MySQL サーバに接続しようとしましたが拒否されました。config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください。
###docker-compose.yml
version: '3' services: nginx: image: nginx:latest ports: - 8080:80 volumes: - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf - ./www/html:/var/www/html depends_on: - php php: build: ./php volumes: - ./www/html:/var/www/html depends_on: - db db: image: mysql:5.7 ports: - 13306:3306 volumes: - ./mysql:/var/lib/mysql container_name: mysql_host environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: test_database MYSQL_USER: docker MYSQL_PASSWORD: docker TZ: 'Asia/Tokyo' command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci ports: - 3306:3306 phpmyadmin: image: phpmyadmin/phpmyadmin:latest ports: - 8888:80 depends_on: - db container_name: test_phpmyadmin environment: - PMA_ARBITRARY=1 - PMA_HOSTS=mysql_host - PMA_USER=root - PMA_PASSWORD=root
###nginx.conf
server { listen 80; server_name _; root /var/www/html; index index.php index.html; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
###Dockerfile
FROM php:7.2-fpm COPY php.ini /usr/local/etc/php/ RUN docker-php-ext-install pdo_mysql
###php.ini
date.timezone = "Asia/Tokyo"
試したこと
以前使用していたmampが関係しているのではないかと考えたため、「AppCleaner」を使用して、MAMPと関連ファイルの削除を行いました。しかし結果は何も変わりませんでした。
また、「config.inc.php」を確認しろのようなエラーが出ているため、config.inc.phpをターミナルの「find」を使って探したのですが、見つかりませんでした。
プログラムの誤字、脱字がないかを比較ツールを使って調べましたが、こちらもありませんでした。
MAMPが関連しているのではないかと推測したため、自分なりに検索をしてみたのですが、こちらもヒットせず...
補足情報(FW/ツールのバージョンなど)
macOS BigSur バージョン11.4
MacBook Pro (13-inch, 2016, Four Thunderbolt 3 Ports)
Docker version 20.10.7, build f0df350
docker-compose version 1.29.2, build 5becea4c
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/27 12:42 編集
2021/06/27 12:47
2021/06/27 12:55
2021/06/27 14:25