如何在Docker Compose中将单个容器恢复至干净初始状态
单个Docker Compose服务恢复全新初始状态方案
要仅重置指定服务到初始状态,核心是删除该服务对应的容器及关联的匿名卷后再重建,不会影响其他服务的运行状态,具体操作如下:
- 第一步:停止并删除目标服务容器,同时清理关联匿名卷
参数说明:docker-compose rm -fsv <你的服务名>-f:强制删除无需交互确认-s:删除前先停止运行中的容器-v:删除容器关联的匿名卷(就是你提到的postgres这类镜像内置声明的、未在docker-compose.yaml中显式定义的卷,存储了持久化数据)
- 第二步:重新启动该服务,会自动创建全新的容器和对应匿名卷
docker-compose up -d <你的服务名>
注意事项
如果你在docker-compose.yaml中为该服务显式声明了命名持久化卷,上述命令不会自动删除命名卷。如果需要连命名卷的数据也一起清空,可以在执行上述操作前额外执行docker volume rm <对应命名卷名>即可。
内容的提问来源于stack exchange,提问作者benjimin
相关产品推荐
相关产品推荐

