Hin*_*sum 37 containers list nginx docker
我首先得到了我的nginx docker图像:
docker pull nginx
Run Code Online (Sandbox Code Playgroud)
然后我开始了:
docker run -d -p 80:80 --name webserver nginx
Run Code Online (Sandbox Code Playgroud)
然后我停了下来:
docker stop webserver
Run Code Online (Sandbox Code Playgroud)
然后我尝试重新启动它:
$docker run -d -p 80:80 --name webserver nginx
docker: Error response from daemon: Conflict. The container name "/webserver" is already in use by container 036a0bcd196c5b23431dcd9876cac62082063bf62a492145dd8a55141f4dfd74. You have to remove (or rename) that container to be able to reuse that name..
See 'docker run --help'.
Run Code Online (Sandbox Code Playgroud)
嗯,这是一个错误.但实际上现在容器列表中没有任何内容:
docker container list
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Run Code Online (Sandbox Code Playgroud)
为什么我重启nginx图片失败了?怎么解决?
Rao*_*Rao 69
这是因为
--name
开关.你发现它停了下来
docker ps -a
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令启动它:
docker start webserver
Run Code Online (Sandbox Code Playgroud)
编辑:替代品 如果你想每次用下面的命令启动容器,
docker run -d -p 80:80 --name webserver nginx
Run Code Online (Sandbox Code Playgroud)
然后使用以下之一:
方法1:使用--rm
开关即,容器一停止就自动销毁
docker run -d -p 80:80 --rm --name webserver nginx
Run Code Online (Sandbox Code Playgroud)
方法2:在启动当前使用的命令之前停止容器后显式删除它.
docker stop <container name>
docker rm <container name>
Run Code Online (Sandbox Code Playgroud)
正如错误所说.
您必须删除(或重命名)该容器才能重用该名称
这给你两个选择.
您可以使用该命令删除使用名称"webserver"的容器
docker rm 036a0bcd196c5b23431dcd9876cac62082063bf62a492145dd8a55141f4dfd74
然后重试.
最好删除不需要的docker并重用该名称.
归档时间: |
|
查看次数: |
32531 次 |
最近记录: |