test
This commit is contained in:
@@ -16,8 +16,7 @@ NC='\033[0m' # No Color
|
||||
PROJECT_NAME="digital-archive"
|
||||
VERSION="latest"
|
||||
DEFAULT_DEPLOY_DIR="/root/server/archive"
|
||||
DOCKERFILE="Dockerfile.stable"
|
||||
FAST_BUILD=false
|
||||
DOCKERFILE="Dockerfile"
|
||||
VERBOSE=false
|
||||
|
||||
# 显示横幅
|
||||
@@ -39,7 +38,6 @@ show_help() {
|
||||
echo ""
|
||||
echo -e "${BLUE}命令:${NC}"
|
||||
echo " build 构建Docker镜像"
|
||||
echo " build --fast 快速构建镜像(跳过Tesseract)"
|
||||
echo " deploy 部署应用到指定目录"
|
||||
echo " check 检查环境配置"
|
||||
echo " start 启动服务"
|
||||
@@ -60,8 +58,7 @@ show_help() {
|
||||
echo " 部署目录 目标部署目录 (默认: ${DEFAULT_DEPLOY_DIR})"
|
||||
echo ""
|
||||
echo -e "${YELLOW}示例:${NC}"
|
||||
echo " $0 build # 完整构建镜像"
|
||||
echo " $0 build -f # 快速构建镜像(跳过Tesseract)"
|
||||
echo " $0 build # 构建镜像"
|
||||
echo " $0 deploy /opt/myapp # 部署到指定目录"
|
||||
echo " $0 check # 检查环境"
|
||||
echo " $0 start # 启动服务"
|
||||
@@ -127,17 +124,6 @@ build_image() {
|
||||
# 检查必需文件
|
||||
check_scripts
|
||||
|
||||
# 选择构建类型
|
||||
if [ "$FAST_BUILD" = true ]; then
|
||||
DOCKERFILE="Dockerfile.fast"
|
||||
VERSION="fast"
|
||||
log_info "使用快速构建模式 (跳过Tesseract,预计3-5分钟)"
|
||||
else
|
||||
DOCKERFILE="Dockerfile.stable"
|
||||
VERSION="stable"
|
||||
log_info "使用完整构建模式 (包含所有功能,预计10-15分钟)"
|
||||
fi
|
||||
|
||||
# 构建镜像
|
||||
docker build -f ${DOCKERFILE} -t ${PROJECT_NAME}:${VERSION} .
|
||||
|
||||
@@ -197,43 +183,12 @@ deploy_app() {
|
||||
|
||||
log_info "部署应用到: $deploy_dir"
|
||||
|
||||
# 自动检测可用的镜像版本
|
||||
local fast_image=$(docker images "${PROJECT_NAME}:fast" --format "{{.Repository}}:{{.Tag}}" | head -1)
|
||||
local stable_image=$(docker images "${PROJECT_NAME}:stable" --format "{{.Repository}}:{{.Tag}}" | head -1)
|
||||
|
||||
if [ "$FAST_BUILD" = true ] && [ -n "$fast_image" ]; then
|
||||
VERSION="fast"
|
||||
log_info "使用快速构建版本: ${PROJECT_NAME}:fast"
|
||||
elif [ -n "$stable_image" ]; then
|
||||
VERSION="stable"
|
||||
log_info "使用完整构建版本: ${PROJECT_NAME}:stable"
|
||||
elif [ -n "$fast_image" ]; then
|
||||
VERSION="fast"
|
||||
log_info "找到快速版本,使用: ${PROJECT_NAME}:fast"
|
||||
else
|
||||
log_error "未找到任何可用的镜像"
|
||||
log_error "请先构建镜像: $0 build"
|
||||
# 检查镜像
|
||||
if ! docker images | grep -q "${PROJECT_NAME}:${VERSION}"; then
|
||||
log_error "镜像 ${PROJECT_NAME}:${VERSION} 不存在,请先构建: $0 build"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 检查镜像 - 更可靠的检测方式
|
||||
local image_exists=$(docker images "${PROJECT_NAME}:${VERSION}" --format "{{.Repository}}:{{.Tag}}" | head -1)
|
||||
if [ -z "$image_exists" ]; then
|
||||
log_error "镜像 ${PROJECT_NAME}:${VERSION} 不存在"
|
||||
log_error "请先构建镜像:"
|
||||
if [ "$VERSION" = "fast" ]; then
|
||||
log_error " $0 build -f"
|
||||
else
|
||||
log_error " $0 build"
|
||||
fi
|
||||
echo
|
||||
log_info "可用的镜像列表:"
|
||||
docker images "${PROJECT_NAME}*" --format "table {{.Repository}}\t{{.Tag}}\t{{.Size}}" 2>/dev/null || echo " 无可用镜像"
|
||||
exit 1
|
||||
else
|
||||
log_success "找到镜像: $image_exists"
|
||||
fi
|
||||
|
||||
# 创建部署目录
|
||||
mkdir -p "$deploy_dir"/{data/{upload,temp,unzip,images,reports,elasticsearch},logs,nginx}
|
||||
|
||||
@@ -580,10 +535,6 @@ main() {
|
||||
VERBOSE=true
|
||||
shift
|
||||
;;
|
||||
-f|--fast)
|
||||
FAST_BUILD=true
|
||||
shift
|
||||
;;
|
||||
--force)
|
||||
FORCE=true
|
||||
shift
|
||||
|
||||
Reference in New Issue
Block a user