gpt4 book ai didi

没有卷的 docker-compose 服务

转载 作者:行者123 更新时间:2023-12-02 19:49:11 25 4
gpt4 key购买 nike

我在 docker-compose.yml 文件中定义了这样的 redis 服务:

redis:
container_name: redis
image: redis
ports:
- "6379:6379"

如您所见,此处没有定义卷。 Redis 数据库在调用 docker run/docker-compose run 之间是否会持续存在?当我使用 docker runredis-cli 时,我可以在数据库中看到一些数据,所以我很好奇它来自哪里。

最佳答案

这里可能会发生一些事情。

如果您重复运行docker-compose up -d ,它将努力保持现有容器的活力。如果您处于普通开发周期并反复docker-compose stop app; docker-compose up --build -d ,这只会重新启动已停止的容器,因此按此顺序数据库容器将永远不会停止和删除;您将拥有相同的数据库容器。

发生的第二件事是 Redis Dockerfile 声明 VOLUME /data 。如果您没有使用 volumes: 为该目录指定任何其他内容声明后,Docker 会为该目录创建一个匿名卷。 Docker Compose 将跟踪这些,并且匿名卷将保持与特定服务的关联,直到您明确 docker-compose down -v 或者使用 docker-compose up --renew-anon-volumes 重新启动服务.

关于没有卷的 docker-compose 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58588066/

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