Dockerを使用して2つ目以降のコンテナを立ち上げ、以下の手順をメモ
初めてDockerからアプリを作成した際、次のアプリを作成しようと2つ目のコンテナを生成する際、ハマったのでメモ。
docker-compose up -dを利用した際、以下のようなエラーになる模様
Error response from daemon: Conflict. The container name “/*****_mysql_1***” is already in use by container “**************244124ceaac17f4c115f2b6facd5e67d22763d80********“. You have to remove (or rename) that container to be able to reuse that name.
やり方は3つあって、まず1つ目は、既存のコンテナを削除する。
上記のエラー内容では、「**************244124ceaac17f4c115f2b6facd5e67d22763d80********」という既存のコンテナを削除する。
docker rm d8b03340244124ceaac17f4c115f2b6facd5e67d22763d807bf170929049e6b0
これで既存のコンテナが削除されるので、再びdocker-compose up -dを実行しましょう。
私の場合はこれを削除しても、再びいろんなコンテナIDでエラーが出たので、繰り返しやり直す。
あともう一つのやり方は、*****_mysql_1***というコンテナを再利用する事になっているので、docker-compose.ymlの*****_mysql_1***を*****_mysql_2***などにリネームする。
しかし、他にApachとphpAdminもリネームする必要があるようです。
リネーム後に改めてdocker-compose up -d
最後のやり方はコマンドライン上で別の名前にリネームする。
docker rename *****_mysql_1*** new_container_name
- new_container_nameには新しい名前を指定してください。
どの方法を選択するかは、具体的な状況や要件によります。競合するコンテナ名を解決してから、docker-compose up -dコマンドを再実行して新しいコンテナを起動してみてください。