docker-compose.yml使い回してたらエラーになった

どうもーbzyです。今回はタイトルの通りですー。スラスラいきますー(・ω・)

事象

laravelの開発環境をdocker-composeで作成していました。別のディレクトリにlaravelの開発環境で使用していたdocker-compose.ymlを使用して開発環境を作成しました。

再度laravelの開発環境でdocker-compose up -dしたら以下のエラーとなりました。

docker-compose up -d

WARNING: Found orphan containers (docker-for-laravel_php_vue_1, docker-for-laravel_mysql_vue_1, docker-for-laravel_nginx_vue_1) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Starting docker-for-laravel_mysql_1 ... error

ERROR: for docker-for-laravel_mysql_1  Cannot start service mysql: network f4e7e1143e74191aa5a1567db6c4a226bc51989a269061a36d1edc166e416e46 not found

ERROR: for mysql  Cannot start service mysql: network f4e7e1143e74191aa5a1567db6c4a226bc51989a269061a36d1edc166e416e46 not found
ERROR: Encountered errors while bringing up the project.

解決方法

docker-compose up -d  するときに-pオプションでプロジェクト名を明示すると起動できました。

起動

docker-compose -p <project name> up -d

ステータス確認

docker-compose -p <project name>  ps

コンテナログイン

docker-compose -p <project name> exec <container name> /bin/bash

停止

docker-compose -p <project name> stop

実行コマンドに-p <project name>をつけなくてはいけません。
-p <project name> をつけないとデフォルトのプロジェクトをみているため注意が必要です。

原因

docker環境をgitで管理しているためdocker起動ディレクトリが同じだったことが原因です。

docker-compose up -dするディレクトリ名が同じ場合にプロジェクト名が同じですよと警告が出るので-p <project name>をつけるようにしましょう。

こちらの公式サイトにもちょろっと記載されていました。

でも、いちいちプロジェクト名を指定するのも面倒だなぁ(・Д・)

今回は以上です。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です