どうもー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>
をつけるようにしましょう。
こちらの公式サイトにもちょろっと記載されていました。
でも、いちいちプロジェクト名を指定するのも面倒だなぁ(・Д・)
今回は以上です。