v1.0.51: 部署配套 - ①config/database.php 支持 env 注入(DB_HOST/PORT/NAME/USER/PASS/CHARSET,缺省回落本地开发);②新增sql/schema_v1.0.51_base.sql全量业务库基准schema(仓库原仅增量迁移,27表按代码反推重建,含source_channels种子);③新增deploy/容器化编排(php8.2-fpm+nginx+mysql8.0,web暴露宿主8081,DB仅内网,对齐license_server既有compose风格):Dockerfile/nginx/default.conf/mysql初始化(01导入基准+字典/02种子超管角色与admin账号及12个迁移版本标记)/.env.example;④.gitignore防护.env与运行产物. 已在服务器106.55.169.92用一次性mysql:8.0容器验证:27表+字典(3632区域/12来源渠道)+admin/超管+cert版本标记全部导入成功

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
qianqiuwanzi
2026-09-17 15:30:19 +08:00
parent c86f08c325
commit 43bd11db0b
9 changed files with 744 additions and 9 deletions
+65
View File
@@ -0,0 +1,65 @@
# SuperLink 部署编排(对齐服务器 license_server 既有 compose 风格)
# 服务:db(MySQL8) / app(PHP-FPM) / web(nginx)
# 使用:cp .env.example .env 并填好口令;docker compose up -d --build
# 访问:http://<服务器IP>:8081/
name: mysuperlink
services:
db:
image: mysql:8.0
restart: unless-stopped
env_file: .env
environment:
MYSQL_DATABASE: ${DB_NAME}
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${DB_PASS}
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --default-authentication-plugin=mysql_native_password
volumes:
- db_data:/var/lib/mysql
- ./mysql/initdb/01_schema_base.sh:/docker-entrypoint-initdb.d/01_schema_base.sh:ro
- .:/repo # 挂载部署目录,init 脚本 source 仓库 sql
- ../../sql:/repo/sql:ro # 仓库 sql 目录(基准 + 字典 + 迁移)
- ../../config:/repo/config:ro
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -u$$MYSQL_USER -p$$MYSQL_PASSWORD --silent"]
interval: 5s
timeout: 5s
retries: 30
start_period: 30s
app:
build: ./php
restart: unless-stopped
env_file: .env
environment:
DB_HOST: db
DB_PORT: "3306"
DB_NAME: ${DB_NAME}
DB_USER: ${DB_USER}
DB_PASS: ${DB_PASS}
DB_CHARSET: utf8mb4
volumes:
- ../../:/var/www/html
depends_on:
db:
condition: service_healthy
web:
image: nginx:1.25-alpine
restart: unless-stopped
ports:
- "8081:80"
environment:
- TZ=Asia/Shanghai
volumes:
- ../../:/var/www/html:ro
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- app
volumes:
db_data: