脚本更新
This commit is contained in:
+13
-37
@@ -1,14 +1,8 @@
|
|||||||
# AI Knowledge Link — Docker Compose (生产)
|
# AI Knowledge Link — Docker Compose (生产)
|
||||||
#
|
#
|
||||||
# 用法:
|
# 用宝塔 Nginx 反代,不启动容器内 Nginx
|
||||||
# 1. 把代码上传到服务器
|
|
||||||
# 2. cp .env.example .env && 修改 SECRET_KEY
|
|
||||||
# 3. docker compose up -d --build
|
|
||||||
# 4. docker compose exec backend alembic upgrade head (首次)
|
|
||||||
# 5. 访问 http://服务器IP
|
|
||||||
#
|
#
|
||||||
# 更新部署:
|
# 更新:git pull && bash update.sh
|
||||||
# git pull && docker compose up -d --build
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
# ---------- MySQL ----------
|
# ---------- MySQL ----------
|
||||||
@@ -23,17 +17,11 @@ services:
|
|||||||
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
||||||
volumes:
|
volumes:
|
||||||
- mysql_data:/var/lib/mysql
|
- mysql_data:/var/lib/mysql
|
||||||
# 不暴露端口到宿主机,backend 通过 Docker 内部网络连接
|
dns:
|
||||||
# 如需外部访问(Navicat),取消下面注释:
|
- 223.5.5.5
|
||||||
# ports:
|
- 223.6.6.6
|
||||||
# - "33306:3306"
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
|
||||||
interval: 10s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 10
|
|
||||||
|
|
||||||
# ---------- 后端 ----------
|
# ---------- 后端(暴露 8000 给宝塔 Nginx 反代)----------
|
||||||
backend:
|
backend:
|
||||||
build:
|
build:
|
||||||
context: ./backend
|
context: ./backend
|
||||||
@@ -44,7 +32,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
ENVIRONMENT: production
|
ENVIRONMENT: production
|
||||||
SECRET_KEY: ${SECRET_KEY:-change-me-to-a-real-secret-key}
|
SECRET_KEY: ${SECRET_KEY:-change-me-to-a-real-secret-key}
|
||||||
DATABASE_URL: mysql+pymysql://amb:${MYSQL_PASSWORD:-Lzcc6-01}@mysql:3306/amb_rag?charset=utf8mb4 # 容器内用 3306,外部访问用 33306
|
DATABASE_URL: mysql+pymysql://amb:${MYSQL_PASSWORD:-Lzcc6-01}@mysql:3306/amb_rag?charset=utf8mb4
|
||||||
STORAGE_ROOT: /app/data
|
STORAGE_ROOT: /app/data
|
||||||
DEFAULT_STORAGE_QUOTA: "104857600"
|
DEFAULT_STORAGE_QUOTA: "104857600"
|
||||||
DEFAULT_MAX_FILE_SIZE: "20971520"
|
DEFAULT_MAX_FILE_SIZE: "20971520"
|
||||||
@@ -53,8 +41,8 @@ services:
|
|||||||
FRONTEND_ORIGIN: http://localhost
|
FRONTEND_ORIGIN: http://localhost
|
||||||
volumes:
|
volumes:
|
||||||
- app_data:/app/data
|
- app_data:/app/data
|
||||||
expose:
|
ports:
|
||||||
- "8000"
|
- "8000:8000"
|
||||||
depends_on:
|
depends_on:
|
||||||
mysql:
|
mysql:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
@@ -64,7 +52,9 @@ services:
|
|||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
||||||
# ---------- 前端 ----------
|
# ---------- 前端(构建后由宝塔 Nginx 直接 serve 静态文件)----------
|
||||||
|
# 不需要运行容器,构建完把 dist 目录复制到服务器即可
|
||||||
|
# 或者用下面的容器暴露 5173 端口
|
||||||
frontend:
|
frontend:
|
||||||
build:
|
build:
|
||||||
context: ./frontend
|
context: ./frontend
|
||||||
@@ -72,22 +62,8 @@ services:
|
|||||||
dns:
|
dns:
|
||||||
- 223.5.5.5
|
- 223.5.5.5
|
||||||
- 223.6.6.6
|
- 223.6.6.6
|
||||||
expose:
|
|
||||||
- "80"
|
|
||||||
|
|
||||||
# ---------- Nginx ----------
|
|
||||||
nginx:
|
|
||||||
image: nginx:1.27-alpine
|
|
||||||
restart: unless-stopped
|
|
||||||
ports:
|
ports:
|
||||||
- "80:80"
|
- "5173:80"
|
||||||
volumes:
|
|
||||||
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
||||||
depends_on:
|
|
||||||
backend:
|
|
||||||
condition: service_healthy
|
|
||||||
frontend:
|
|
||||||
condition: service_started
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
mysql_data:
|
mysql_data:
|
||||||
|
|||||||
Reference in New Issue
Block a user