chore(release): 版本发布 - publish v1.0.2

This commit is contained in:
ddCat
2026-07-22 23:51:40 +08:00
parent e3133577d7
commit 0ddeb4a3d4
6 changed files with 90 additions and 15 deletions

View File

@@ -6,6 +6,7 @@ REPOSITORY_URL="${REPOSITORY_URL:-https://github.com/ddcat-ai/open-ai-canvas.git
REPOSITORY_REF="${REPOSITORY_REF:-main}"
INSTALL_DIR="${INSTALL_DIR:-/opt/open-ai-canvas}"
CANVAS_HTTP_PORT="${CANVAS_HTTP_PORT:-3000}"
CANVAS_IMAGE_TAG="${CANVAS_IMAGE_TAG:-latest}"
COMPOSE_FILE="docker-compose.deploy.yml"
step() {
@@ -24,6 +25,7 @@ require_root() {
[[ "$(uname -s)" == "Linux" ]] || fail "一键部署脚本仅支持 Linux 服务器"
[[ "$CANVAS_HTTP_PORT" =~ ^[0-9]+$ ]] || fail "CANVAS_HTTP_PORT 必须是 1 到 65535 的数字"
((CANVAS_HTTP_PORT >= 1 && CANVAS_HTTP_PORT <= 65535)) || fail "CANVAS_HTTP_PORT 必须是 1 到 65535 的数字"
[[ "$CANVAS_IMAGE_TAG" =~ ^[A-Za-z0-9_][A-Za-z0-9_.-]{0,127}$ ]] || fail "CANVAS_IMAGE_TAG 不是有效的 Docker 镜像标签"
}
install_packages() {
@@ -90,6 +92,12 @@ prepare_environment() {
((configured_http_port >= 1 && configured_http_port <= 65535)) || fail ".env 中的 CANVAS_HTTP_PORT 无效"
CANVAS_HTTP_PORT="$configured_http_port"
fi
local configured_image_tag
configured_image_tag="$(sed -n 's/^CANVAS_IMAGE_TAG=//p' .env | tail -n 1)"
if [[ -n "$configured_image_tag" ]]; then
[[ "$configured_image_tag" =~ ^[A-Za-z0-9_][A-Za-z0-9_.-]{0,127}$ ]] || fail ".env 中的 CANVAS_IMAGE_TAG 无效"
CANVAS_IMAGE_TAG="$configured_image_tag"
fi
return
fi
@@ -103,6 +111,7 @@ POSTGRES_USER=open_ai_canvas
POSTGRES_PASSWORD=${database_password}
DATABASE_URL=postgresql://open_ai_canvas:${database_password}@postgres:5432/open_ai_canvas?sslmode=disable
CANVAS_HTTP_PORT=${CANVAS_HTTP_PORT}
CANVAS_IMAGE_TAG=${CANVAS_IMAGE_TAG}
CANVAS_REGISTRATION_ENABLED=false
CANVAS_ALLOW_PRIVATE_UPSTREAMS=false
CANVAS_ALLOWED_PRIVATE_UPSTREAM_HOSTS=
@@ -111,8 +120,9 @@ EOF
}
start_services() {
step "构建并启动 PostgreSQL、Redis、后端和网页服务"
docker compose --env-file .env -f "$COMPOSE_FILE" up -d --build --remove-orphans --wait --wait-timeout 600
step "拉取并启动 PostgreSQL、Redis、后端和网页服务"
docker compose --env-file .env -f "$COMPOSE_FILE" pull
docker compose --env-file .env -f "$COMPOSE_FILE" up -d --remove-orphans --wait --wait-timeout 600
}
print_result() {