test
This commit is contained in:
@@ -197,17 +197,86 @@ deploy_app() {
|
|||||||
|
|
||||||
log_info "部署应用到: $deploy_dir"
|
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
|
if ! docker images | grep -q "${PROJECT_NAME}:${VERSION}"; then
|
||||||
log_error "镜像不存在,请先构建: $0 build"
|
log_error "镜像 ${PROJECT_NAME}:${VERSION} 不存在,请先构建: $0 build"
|
||||||
|
if [ "$FAST_BUILD" = true ]; then
|
||||||
|
log_error "或使用: $0 build -f"
|
||||||
|
fi
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 创建部署目录
|
# 创建部署目录
|
||||||
mkdir -p "$deploy_dir"/{data/{upload,temp,unzip,images,reports,elasticsearch},logs,nginx}
|
mkdir -p "$deploy_dir"/{data/{upload,temp,unzip,images,reports,elasticsearch},logs,nginx}
|
||||||
|
|
||||||
# 复制配置文件
|
# 动态生成 docker-compose.yml 文件
|
||||||
cp docker-compose.simple.yml "$deploy_dir/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
|
cat > "$deploy_dir/.env" << EOF
|
||||||
|
|||||||
27
quick-deploy.sh
Executable file
27
quick-deploy.sh
Executable 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
|
||||||
Reference in New Issue
Block a user