「彻底卸载 Quay 容器仓库」:干净移除服务、镜像与配置的全流程指南
文章目录
- 🧹 第一步:停止并禁用 systemd 服务
- 🚮 第二步:移除 Podman 容器与相关资源
- 1. 删除 quay-app 容器
- 2. 删除镜像(如果你想彻底清理)
- 3. 删除挂载卷(比如 SQLite 存储)
- 📁 第三步:清理配置文件和数据目录
- 📦 第四步:清除镜像仓库服务端口(可选)
- 🔄 第五步:验证清理结果
🧹 第一步:停止并禁用 systemd 服务
systemctl stop quay-app.service
systemctl disable quay-app.service
rm -f /etc/systemd/system/quay-app.service
systemctl daemon-reload
🚮 第二步:移除 Podman 容器与相关资源
1. 删除 quay-app 容器
podman rm -f quay-app
如果你用了 Pod 网络模式(--pod
)也可以查下:
podman pod ps
podman pod rm -f <pod-name-or-id>
2. 删除镜像(如果你想彻底清理)
podman images | grep quay
podman rmi <IMAGE_ID>
或者清理所有 quay 相关镜像:
podman rmi -f $(podman images --format "{{.Repository}}:{{.Tag}}" | grep quay)
3. 删除挂载卷(比如 SQLite 存储)
你提到有个挂载卷叫 sqlite-storage
,可以用以下方式删除:
podman volume ls
podman volume rm sqlite-storage
📁 第三步:清理配置文件和数据目录
你之前挂载了:
-v /data/images/quay-config:/quay-registry/conf/stack:Z
清理方法:
rm -rf /data/images/quay-config
如果你还部署了 Redis 或其它服务,也可以一并清除它们的容器:
podman rm -f quay-redis
podman rmi -f registry.redhat.io/rhel8/redis-6:1-190
📦 第四步:清除镜像仓库服务端口(可选)
你可能映射了 8443
端口,如果需要腾出此端口,可以:
fuser -v -n tcp 8443
fuser -k -n tcp 8443
🔄 第五步:验证清理结果
podman ps -a # 应该没有 quay 相关容器
podman volume ls # 没有 sqlite-storage 等卷
podman images # 不再包含 quay 相关镜像
ls /data/images/ # 配置目录是否清空