Dockerで作業している時に設定のエラーとかでコンテナを立ち上げ直しになった際、コンテナ立ち上げ時と同じコンテナ名が使用されていると以下のようなエラーが出ます。
docker: Error response from daemon: Conflict. The container name "/jenkins" is already in use by container "15f941c1aa1a569795a19a1c8a67d54ee57aa6d9535dbf088079cdf8e8a927b5". You have to remove (or rename) that container to be able to reuse that name. See 'docker run --help'.
コンテナの名前は同じものを使用することができないので、一旦古いほうを消してから立ち上げる必要があります。
(今回だとjenkins
と言うコンテナ名がもうすでに使われている。)
まず初めにdocker ps
コマンドを使用して、現在の状態を確認します。
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
今回の場合だと、すでにエラーでコンテナが終了しているため単純なdocker ps
コマンドを実行しても何も出てこないです。
docker ps -a
コマンドを実行します。 (docker ps --all
も可)
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 15f941c1aa1a jenkins/jenkins:lts "/sbin/tini -- /usr/…" 18 minutes ago Created jenkins d3205628fd18 metasploitframework/metasploit-framework:latest "docker/entrypoint.s…" 2 days ago Exited (0) 2 days ago hungry_noyce 8cda07974a38 hello-world "/hello" 2 days ago Exited (0) 2 days ago nifty_easley 857fef3861a7 metasploitframework/metasploit-framework:latest "docker/entrypoint.s…" 5 weeks ago Exited (0) 5 weeks ago dazzling_bassi
一番上にいました。
jenkinsコンテナは15f941c1aa1aと言うIDを持っているためこれをdocker rm
コマンドにて削除します。
$ docker rm 15f941c1aa1a
もしくは単純にコンテナ名で消すこともできます。
$ docker rm jenkins
動作しているコンテナもdocker stop [コンテナ名]
をせずにdocker rm
でそのまま消せますが、restartが設定されているコンテナはdocker rm
だけでは消せません。
その際はdocker rm -f
を使用してみてください。
コンテナ・ベース・オーケストレーション Docker/Kubernetesで作るクラウド時代のシステム基盤
[改訂第3版]Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
コメント