質問編集履歴

1 誤字

t_shirakihara

t_shirakihara score 4

2021/06/26 19:23  投稿

dockerにて起動したコンテナにアクセスして、「phpinfo」と「phpMyAdmin」にログインしたい
### 前提・実現したいこと
dockerにてPHPの開発環境の構築を行なっているのですが、起動したコンテナにサーバーにてアクセスをしたいのですが、できない状況にあります。
実現したいこととしては、PHPの開発環境をMAMPからdockerに移行したいと考えています。
###使用機器とバージョン
macOS BigSur
MacBook Pro (13-inch, 2016, Four Thunderbolt 3 Ports)
Docker version 20.10.7, build f0df350
docker-compose version 1.29.2, build 5becea4c
###現状の問題点
▷phpmyadminにログインできない
dockerにてphpの開発環境を構築中、docler-compose up -dにて起動を確認できたのですが、サファリにてアクセスしようとすると、「サーバーに接続できません」と表示されてしまいます。
![イメージ説明](91ed8b949d3d970b7d8a271795c6b52d.png)
ターミナルのコマンド入力画面
```
waibukkupuro:php-test-2 takashi$ docker --version
Docker version 20.10.7, build f0df350
waibukkupuro:php-test-2 takashi$ docker-compose stop
waibukkupuro:php-test-2 takashi$ docker-compose up -d
Starting php-test-2_db_1 ... done
Starting php-test-2_phpmyadmin_1 ... done
Starting php-test-2_php_1       ... done
Starting php-test-2_nginx_1     ... done
```
全て「done」と表示されているのでコンテナに起動自体は成功しているのではないかと思います。前回はMAMPにてPHPの学習をしていたのですが、その際の影響もあるのか、phpMyAdminのロゴがMAMPなのが気になります。
![イメージ説明](5a63f61c3606b062c6b7ca2f37eec063.png)
###ディレクトリ・ファイル
```
.
├── docker-compose.yml
├── mysql
│   └── data
├── nginx
│   └── nginx.conf
├── php
│   ├── Dockerfile
│   └── php.ini
└── www
   └── html
       └── index.php
```
###docker-compose.yml
```
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;
       fasrcgi_params SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include        fastcgi_params; 
   }
}
```
###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;
       fasrcgi_params SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include        fastcgi_params; 
   }
}
```
###Dockerfile
```
FROM php:7.4-fpm
COPY php.ini /usr/local/etc/php/
RUN docker-php-ext-install pdo_mysql
```
###開発手順
参考にしたサイト:[リンク内容](https://qiita.com/yamaking/items/b9d44b979a6d4abf438f)
こちらのサイトを参考にしながら開発環境の構築をしております。それぞれのファイルの中身は参考ページの内容をそのまま書いております。[docler-compose up -d]にて起動までは確認が取れている状況です。
### 発生している問題・エラーメッセージ
①http://localhost:8080/を開くことができない『サーバーに接続できません』と表示される
②http://localhost:8888/nite,phpmyadminには接続できるが、ログインができない。
### 試したこと
[リンク内容](https://web.plus-idea.net/on/docker-web-server-access-denied/)
こちらのサイトをもとに取り組んでみたのですが、ほぼ手付かずの状態でお手上げ状態になっています。
説明不足なところや下手くそなところが多いかと思いますが、助言をいただけると幸いです。
  • PHP

    38384 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • phpMyAdmin

    1268 questions

    phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

  • Docker

    3370 questions

    Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

  • docker-compose

    1157 questions

    docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る