docker - 使用 Docker Compose 创建同一服务的多个容器

标签 docker docker-compose redis yaml

我目前正在开始使用 Docker Compose,我想知道如何创建同一服务“Redis”的多个容器。我已经尝试过 docker-compose up --scale redis=3,但它给出了一个错误,我一直在通过 Google 搜索可能的解决方案,但我找不到。

提前谢谢您。

这是我的 docker-compose.yml

version: '3'
services:
  redis:
    container_name: redis
    hostname: redis
    image: redis

  redis-commander:
    container_name: redis-dbms
    hostname: redis-commander
    image: rediscommander/redis-commander:latest
    restart: always
    environment:
    - REDIS_HOSTS=local:redis:6379
    ports:
    - "8081:8081"

这是它给我的错误。

docker-compose up --scale redis=3

Creating network "ex2_default" with the default driver
WARNING: The "redis" service is using the custom container name "redis". Docker requires each container to have a unique name. Remove the custom name to scale the service.
Creating redis-dbms ...
Creating redis      ... done
Creating redis      ...
Creating redis      ...
Creating redis-dbms ... done
ERROR: for redis  Cannot create container for service redis: Conflict. The container name "/redis" is already in use by container "d4c93ae4ca68da0b6430e5eddc657d9dda0f40002c7a81c89368535df05eae24". You have to remove (or rename) that container to be able to reuse that name.

ERROR: for redis  Cannot create container for service redis: Conflict. The container name "/redis" is already in use by container "d4c93ae4ca68da0b6430e5eddc657d9dda0f40002c7a81c89368535df05eae24". You have to remove (or rename) that container to be able to reuse that name.

最佳答案

出现错误的原因如下: 链接:https://docs.docker.com/compose/compose-file/compose-file-v3/#container_name

Because Docker container names must be unique, you cannot scale a service beyond 1 container if you have specified a custom name. Attempting to do so results in an error.

您可以在此处阅读更多内容:https://github.com/docker/compose/issues/3722

关于docker - 使用 Docker Compose 创建同一服务的多个容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70148404/

相关文章:

docker - 如何用来自dockerfile的信息标记docker镜像?

docker - 无法使用 docker-compose 在 Docker 容器中运行 Traefik

python - Redis - 爬虫访问过的站点列表

docker - 在 nodejs Docker 镜像上运行 redis

docker - 已中止与 db : 'acore_auth' user: 'root' host: '172.18.0.3' (Got an error reading communication packets) 的连接 10

redis - 在 Jedis 中获得异常

python - flask 、 react 和 Docker : Non-Zero Codes

docker - 如果手动创建vert.x实例,则群集Vert.x在docker中不起作用

Docker copy 命令从目标文件夹复制 jar 文件

docker - nodemon不使用docker进行充值