From 1fc6e704f09df6e44feba5de5e570b5de92f1d6b Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Fri, 9 May 2025 15:00:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=95=9C=E5=83=8F=E6=89=93?= =?UTF-8?q?=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 2 ++ {scripts => docker}/download_models.sh | 0 docker/save_docker_images.sh | 39 ++++++++++++++++++++++++++ scripts/run.sh | 22 --------------- scripts/run_docker.sh | 10 ------- 5 files changed, 41 insertions(+), 32 deletions(-) rename {scripts => docker}/download_models.sh (100%) create mode 100644 docker/save_docker_images.sh delete mode 100644 scripts/run.sh delete mode 100644 scripts/run_docker.sh diff --git a/docker-compose.yml b/docker-compose.yml index fbe4018e..b58179d7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,6 +3,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile + image: api:0.1.0 container_name: api-dev working_dir: /app volumes: @@ -30,6 +31,7 @@ services: context: . dockerfile: docker/web.Dockerfile target: development + image: web:0.1.0 container_name: web-dev volumes: - ./web:/app diff --git a/scripts/download_models.sh b/docker/download_models.sh similarity index 100% rename from scripts/download_models.sh rename to docker/download_models.sh diff --git a/docker/save_docker_images.sh b/docker/save_docker_images.sh new file mode 100644 index 00000000..777b99a6 --- /dev/null +++ b/docker/save_docker_images.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +# 创建输出目录 +OUTPUT_DIR="docker_images_backup" +mkdir -p $OUTPUT_DIR + +# 定义输出文件名 +OUTPUT_FILE="$OUTPUT_DIR/docker_images_$(date +%Y%m%d).tar" + +echo "开始导出 Docker 镜像到 $OUTPUT_FILE..." + +# 从各个文件中提取的基础镜像列表 +IMAGES=( + "python:3.12" + "ghcr.io/astral-sh/uv:0.7.2" + "node:latest" + "nginx:alpine" + "neo4j:5.26" + "quay.io/coreos/etcd:v3.5.5" + "minio/minio:RELEASE.2023-03-20T20-16-18Z" + "milvusdb/milvus:v2.5.6" +) + +# 确保所有镜像都已下载 +for IMAGE in "${IMAGES[@]}"; do + echo "正在拉取镜像: $IMAGE" + docker pull $IMAGE +done + +# 保存所有镜像到单个 tar 文件 +echo "正在保存镜像到 tar 文件..." +docker save ${IMAGES[@]} -o $OUTPUT_FILE + +# 计算文件大小 +FILE_SIZE=$(du -h $OUTPUT_FILE | cut -f1) + +echo "完成!" +echo "所有 Docker 镜像已保存到: $OUTPUT_FILE" +echo "文件大小: $FILE_SIZE" \ No newline at end of file diff --git a/scripts/run.sh b/scripts/run.sh deleted file mode 100644 index 60967a79..00000000 --- a/scripts/run.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -# Function to stop the services -stop_services() { - echo "Stopping services..." - pkill -f "npm run server" - pkill -f "uvicorn src.main:app --host 0.0.0.0 --port 5000 --reload" - exit -} - -# Trap signals to stop services -trap stop_services SIGINT SIGTERM - -# Start the server -uvicorn src.main:app --host 0.0.0.0 --port 5000 --reload & - -# Start the frontend service -cd web -npm run server & - -# Wait for all background jobs to finish -wait diff --git a/scripts/run_docker.sh b/scripts/run_docker.sh deleted file mode 100644 index 0007809e..00000000 --- a/scripts/run_docker.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -# 检查是否提供了命令行参数 -if [ $# -eq 0 ]; then - echo "请提供命令参数,例如:up -d 或 down" - exit 1 -fi - -# 将所有命令行参数传递给 docker compose 命令 -docker compose -f docker/docker-compose.dev.yml --env-file src/.env "$@" \ No newline at end of file