LoginSignup
2
1

More than 3 years have passed since last update.

LaraDockでポート番号重なっててエラー

Last updated at Posted at 2020-04-27

LaraDockを利用してLaravel開発環境を整えたかったので、勉強のためLaraDockをgit cloneしたり消したり。

ERROR: for phpmyadmin  Cannot start service phpmyadmin: driver failed programming external connectivity on endpoint laradock_phpmyadmin_1 (d4818c2cc0081852102cd2ab3404e96ed4db6253aeb0ed1f249c9d18fa854cd7): Bind for 0.0.0.0:8080 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.

とエラーがでてきて立ち上がらないコンテナがでてきてたので、メモとして残しておきたいと思います。

環境

Mac OS X Catalina 10.15.4
Docker version 19.03.8
docker-compose version 1.25.4

エラーが起きた状態

LaraDockをgit cloneしたり消したりを繰り返して勉強していました。
いろんなQiita投稿記事を参考にしていたあと、公式ページ様にある手順で起動させようとしたところ、上記エラーが。

Creating laradock_docker-in-docker_1 ... done
Creating laradock_mysql_1            ... done
Creating laradock_redis_1            ... done
Creating laradock_workspace_1        ... 
Creating laradock_phpmyadmin_1       ... 
Creating laradock_phpmyadmin_1       ... error

Creating laradock_workspace_1        ... done
18fa854cd7): Bind for 0.0.0.0:8080 failed: port is already allocated
Creating laradock_php-fpm_1          ... done
Creating laradock_nginx_1            ... done

ん?
そのあと最初のエラーが表示されました。

エラーの中身

エラー文がほぼ答えなのですが、phpmyadminが使うportが既に使われているからでした。

じゃ何と衝突してるのか。

$ docker ps
CONTAINER ID        IMAGE                COMMAND                  CREATED             STATUS              PORTS                                                                                                    NAMES
94a10dcc3de2        laradock_nginx       "/bin/bash /opt/star…"   2 minutes ago       Up 2 minutes        0.0.0.0:80-81->80-81/tcp, 0.0.0.0:443->443/tcp                                                           laradock_nginx_1
abf30e97d0df        laradock_php-fpm     "docker-php-entrypoi…"   2 minutes ago       Up 2 minutes        9000/tcp                                                                                                 laradock_php-fpm_1
8a8fd63f2169        laradock_workspace   "/sbin/my_init"          2 minutes ago       Up 2 minutes        0.0.0.0:3000-3001->3000-3001/tcp, 0.0.0.0:8080->8080/tcp, 0.0.0.0:2222->22/tcp, 0.0.0.0:8001->8000/tcp   laradock_workspace_1
c71e9e79dd9a        docker:19.03-dind    "dockerd-entrypoint.…"   2 minutes ago       Up 2 minutes        2375-2376/tcp                                                                                            laradock_docker-in-docker_1
cfec401604c1        laradock_redis       "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:6379->6379/tcp                                                                                   laradock_redis_1
07264164c48a        laradock_mysql       "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:3306->3306/tcp, 33060/tcp                                                                        laradock_mysql_1

分かりにくかったんですが、laradock_workspaceと衝突してました。
最初のエラー文に書いてあるポート番号と同じのが見えますね。

それぞれが利用するポートはLaraDockディレクトリ内のdocker-compose.ymlにあり、そこを変更しました。

スクリーンショット 2020-04-27 11.47.40.png
これを直接指定しました。

スクリーンショット 2020-04-27 11.48.27.png

8080が被ってるなら8081で良いかなと思ったんですが、どこかで8081って見た気がしたので8082に指定しました。他のと被ってたらまたエラー出るかな...
こんないい加減じゃダメですね。

起動して確認

コンテナ削除してやり直し。
そうすると、

 Name                          Command               State                                                          Ports                                                        
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
laradock_docker-in-docker_1   dockerd-entrypoint.sh            Up      2375/tcp, 2376/tcp                                                                                                  
laradock_mysql_1              docker-entrypoint.sh mysqld      Up      0.0.0.0:3306->3306/tcp, 33060/tcp                                                                                   
laradock_nginx_1              /bin/bash /opt/startup.sh        Up      0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:81->81/tcp                                                        
laradock_php-fpm_1            docker-php-entrypoint php-fpm    Up      9000/tcp                                                                                                            
laradock_phpmyadmin_1         /docker-entrypoint.sh apac ...   Up      0.0.0.0:8082->80/tcp                                                                                                
laradock_redis_1              docker-entrypoint.sh redis ...   Up      0.0.0.0:6379->6379/tcp                                                                                              
laradock_workspace_1          /sbin/my_init                    Up      0.0.0.0:2222->22/tcp, 0.0.0.0:3000->3000/tcp, 0.0.0.0:3001->3001/tcp, 0.0.0.0:8001->8000/tcp, 0.0.0.0:8080->8080/tcp

なんとか起動できました。

こちらの記事を思いっきり参考にさせてもらいました。
ありがとうございました。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1