This commit is contained in:
2025-11-01 16:35:44 +08:00
parent e4cb0bb76e
commit da355d8bd3
2 changed files with 100 additions and 4 deletions

View File

@@ -197,17 +197,86 @@ deploy_app() {
log_info "部署应用到: $deploy_dir"
# 确定要使用的镜像版本
if [ "$FAST_BUILD" = true ]; then
VERSION="fast"
log_info "使用快速构建版本: ${PROJECT_NAME}:fast"
else
VERSION="stable"
log_info "使用完整构建版本: ${PROJECT_NAME}:stable"
fi
# 检查镜像
if ! docker images | grep -q ${PROJECT_NAME}; then
log_error "镜像不存在,请先构建: $0 build"
if ! docker images | grep -q "${PROJECT_NAME}:${VERSION}"; then
log_error "镜像 ${PROJECT_NAME}:${VERSION} 不存在,请先构建: $0 build"
if [ "$FAST_BUILD" = true ]; then
log_error "或使用: $0 build -f"
fi
exit 1
fi
# 创建部署目录
mkdir -p "$deploy_dir"/{data/{upload,temp,unzip,images,reports,elasticsearch},logs,nginx}
# 复制配置文件
cp docker-compose.simple.yml "$deploy_dir/docker-compose.yml"
# 动态生成 docker-compose.yml 文件
cat > "$deploy_dir/docker-compose.yml" << EOF
version: '3.8'
services:
# 主应用服务
app:
image: ${PROJECT_NAME}:${VERSION}
container_name: digital-archive-app
ports:
- "9081:9081"
volumes:
- ./data/upload:/app/data/upload
- ./data/temp:/app/data/temp
- ./data/unzip:/app/data/unzip
- ./data/images:/app/data/images
- ./data/reports:/app/data/reports
- ./logs:/app/logs
environment:
- SPRING_PROFILES_ACTIVE=prod
- SERVER_PORT=9081
# MySQL数据库配置
- DB_HOST=mysql
- DB_PORT=3306
- DB_NAME=enterprise_digital_archives
- DB_USERNAME=root
- DB_PASSWORD=Abc@123456
- DB_DRIVER=com.mysql.jdbc.Driver
# Redis配置
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_PASSWORD=Abc123456
# Elasticsearch配置 - 使用已有的 "es" 容器
- ELASTICSEARCH_HOST=es
- ELASTICSEARCH_PORT=9200
- ELASTICSEARCH_SCHEME=http
# OCR配置
- TESS_PATH=/usr/bin/tesseract
# 其他配置
- SWAGGER_SHOW=false
- LOG_ROOT_LEVEL=info
- LOG_APP_LEVEL=info
networks:
- proxy
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9081/point-strategy/actuator/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
# Elasticsearch - 使用已有的 "es" 容器
# 注意:确保已有的 "es" 容器已连接到 proxy 网络
networks:
proxy:
external: true
EOF
# 创建环境配置
cat > "$deploy_dir/.env" << EOF

27
quick-deploy.sh Executable file
View File

@@ -0,0 +1,27 @@
#!/bin/bash
# 快速部署脚本
echo "🚀 快速部署数字档案系统..."
echo "使用快速构建版本 (digital-archive:fast)"
echo
# 使用 archive-manager.sh 的快速部署模式
./archive-manager.sh deploy -f
if [ $? -eq 0 ]; then
echo
echo "✅ 快速部署完成!"
echo
echo "📋 下一步操作:"
echo " ./archive-manager.sh start -f # 启动服务"
echo " ./archive-manager.sh logs # 查看日志"
echo " ./archive-manager.sh status # 检查状态"
echo
echo "🌐 访问地址:"
echo " http://localhost:9081/point-strategy"
echo " http://localhost:9081/point-strategy/swagger-ui.html"
else
echo
echo "❌ 快速部署失败"
echo "请检查错误信息或先构建镜像: ./quick-build.sh"
fi