optimize: docker up 自动清理历史 build cache,新增 docker clean 子命令
This commit is contained in:
1 parent
b25ad8705f
commit
d3c3fb546d
1 file changed
+24
@@ -319,6 +319,13 @@ cmd_docker() {
|
||||
banner "========== Docker Compose 启动 =========="
|
||||
$DOCKER_COMPOSE up -d --build
|
||||
echo ""
|
||||
# 清理历史 build cache,防止占满磁盘
|
||||
info "清理历史构建缓存..."
|
||||
local before_prune=$(df -h / | awk 'NR==2{print $5}')
|
||||
docker builder prune -f 2>/dev/null || true
|
||||
local after_prune=$(df -h / | awk 'NR==2{print $5}')
|
||||
info "磁盘使用: ${before_prune} → ${after_prune}"
|
||||
echo ""
|
||||
info "等待服务就绪..."
|
||||
sleep 5
|
||||
$DOCKER_COMPOSE ps
|
||||
@@ -349,6 +356,22 @@ cmd_docker() {
|
||||
ps|status)
|
||||
$DOCKER_COMPOSE ps
|
||||
;;
|
||||
clean|prune)
|
||||
banner "========== Docker 缓存清理 =========="
|
||||
info "清理前磁盘使用:"
|
||||
echo " $(df -h / | awk 'NR==2{print $3, "used /", $2, "total ("$5")"}')"
|
||||
echo ""
|
||||
info "清理 dangling 镜像..."
|
||||
docker image prune -f 2>/dev/null || true
|
||||
info "清理构建缓存..."
|
||||
docker builder prune -f 2>/dev/null || true
|
||||
info "清理未使用的网络..."
|
||||
docker network prune -f 2>/dev/null || true
|
||||
echo ""
|
||||
info "清理后磁盘使用:"
|
||||
echo " $(df -h / | awk 'NR==2{print $3, "used /", $2, "total ("$5")"}')"
|
||||
success "清理完成"
|
||||
;;
|
||||
help|--help|-h)
|
||||
echo "Docker Compose 部署命令:"
|
||||
echo " ./run.sh docker up 构建并启动所有容器"
|
||||
@@ -357,6 +380,7 @@ cmd_docker() {
|
||||
echo " ./run.sh docker restart 重启容器"
|
||||
echo " ./run.sh docker logs 查看实时日志"
|
||||
echo " ./run.sh docker ps 查看容器状态"
|
||||
echo " ./run.sh docker clean 清理构建缓存/无用镜像"
|
||||
;;
|
||||
*)
|
||||
error "未知 docker 子命令: $action"
|
||||
|
||||
Reference in new issue
Block a user