gpt4 book ai didi

容器名称的 Docker-Compose 问题

转载 作者:IT老高 更新时间:2023-10-28 21:23:50 25 4
gpt4 key购买 nike

我创建了一个包含所需软件包的 docker 镜像。我已经运行了指定主机和 guest 端口的 docker 镜像以及所需的卷安装示例:


sudo docker run -it --name CONTAINERNAME -v /host:/guest -p
hostportno:guestportno

我的容器已启动并运行良好。
我正在尝试使用 docker-compose 将我的容器迁移到新的 docker 镜像。
我已经创建了 docker-compose.yml 文件并指定了所需的参数,如下所示:

image: test1
ports
- "1234:123"
- "2000:223"
volumes:
- /home:/test
-container_name: dockercomposetest
working_dir: /test
command: /bin/bash

我无法使用 docker-compose 迁移它。
我遇到了如下所述的问题:

Conflict. The name "test" is already in use by container eeedac72bb25.
You have to delete (or rename) that container to be able to reuse that
name.

目前的解决方法是我必须停止并移除容器并执行 docker-compose up
我可以不使用与我在正常 docker run 进程中启动的名称相同的 docker-compose 重新启动/迁移容器吗?

最佳答案

不,您不能拥有两个同名的容器。您必须为 container_name 字段选择不同的名称。需要先移除之前的容器,然后才能重新使用该名称。

如果您希望 Compose 将容器视为它已创建它,您必须像 Compose 一样设置容器标签。找到这些的最简单方法是让 compose 创建一个容器(可能通过删除 container_name 字段),然后使用 docker inspect 查看标签。

关于容器名称的 Docker-Compose 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34627037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com