使用以下命令运行docker注册表总是会抛出一个错误:

dev:tmp me$ docker run \
     -d --name registry-v1 \
     -e SETTINGS_FLAVOR=local \
     -e STORAGE_PATH=/registry \
     -e SEARCH_BACKEND=sqlalchemy \
     -e LOGLEVEL=DEBUG \
     -p 5000:5000 \
     registry:0.9.1
Error response from daemon: Conflict. The name "registry-v1" is already in use by container f9e5798a82e0. You have to delete (or rename) that container to be able to reuse that name.

如何避免这种错误?


当前回答

这里我所做的,它工作得很好。

第一步:(它列出了docker容器的名称)

docker ps -a

步骤2:

docker rm name_of_the_docker_container

其他回答

你可以使用sudo docker rm YOUR_CONTAINER_ID命令删除它,然后使用sudo docker run… 或者使用sudo docker start YOUR_CONTAINER_ID重新启动一个现有的容器

好吧,所以我也不明白,然后我离开了我的电脑,去做其他的事情,当我回来时,它点击:D

下载一个docker映像文件。Docker pull *image-name*将只从Docker hub中拉出图像而不运行它。 现在,你使用docker运行,并给它一个名字(例如newWebServer)。 docker运行-d -p 8080:8080 -v volume——name newWebServer image-name/version

你可能只需要docker run——name* name* *image*,但是其他的东西很快就会有用。

-d (detached) -表示当用于运行容器的根进程退出时,容器将退出。

-p (port) -指定容器端口和主机端口。内部和外部端口。内部的是容器使用的端口,外部的是你在容器外部使用的端口,如果这是你访问应用程序的方式,它可能是你需要放在浏览器中的端口。

——name(你想给这个容器的实例起什么名字)——你可以有同一个容器的几个实例,它们都有不同的名字,这在你试图测试一些东西的时候很有用。

image-name/version是您想从中创建容器的实际映像。您可以使用docker images -a查看系统上所有映像的列表。您可能有多个版本,因此请确保选择正确的/标记。

-v (volume)——最初可能不需要,但很快你就会希望在容器退出后持久化数据。

好的。docker run刚刚从映像创建了一个容器。如果它没有运行,你现在可以用它的名字启动它:

docker start newWebServer

您可以检查所有容器(它们可能正在运行,也可能没有运行)

docker ps -a

你可以通过container id列中的容器名称或容器id(或者只是容器id的前几个字符)来停止和启动它们(或暂停它们),例如:

docker stop newWebServer

docker start c3028a89462c

并列出你所有的图片,与

docker images -a

简单地说,下载一个图像;Docker运行从它创建一个容器;使用docker Start(名称或容器id)启动它;用docker Stop(名称或容器id)停止它。

这意味着您已经在过去使用该参数启动了容器

docker run --name registry-v1 ...

您需要先删除它,然后才能重新创建具有相同名称的容器

docker rm registry-v1

当容器仍在运行时,您需要先停止它,然后才能删除它

docker stop registry-v1

或者直接为新容器选择一个不同的名称。

来获取现有容器及其名称的列表

docker ps -a

下面是我在ubuntu 18上解决这个问题的方法:

$ sudo docker ps -a 复制容器ID

对于每个容器,请:

$ sudo docker stop container_ID $ sudo docker rm container_ID

我也被这个弄糊涂了。这里有两个相关命令:

docker run  # Run a command in a **new** container
docker start  # Start one or more stopped containers