Compare commits
75
Commits
v1.2.0
...
codex/shiyan
No files matched your search
@@ -8,9 +8,16 @@ MYSQL_USER=jiaowu
|
||||
MYSQL_PASSWORD=
|
||||
MYSQL_ROOT_PASSWORD=
|
||||
|
||||
RABBITMQ_USER=jiaowu
|
||||
RABBITMQ_PASSWORD=
|
||||
BACKGROUND_JOB_AUTOMATIC_SCHEDULE_CONCURRENCY=1
|
||||
BACKGROUND_JOB_SCHEDULE_PUBLISH_CONCURRENCY=1
|
||||
BACKGROUND_JOB_MAKEUP_EXAM_AUTO_CONCURRENCY=1
|
||||
|
||||
JWT_KEY=
|
||||
ALLOWED_HOSTS=localhost
|
||||
CORS_ORIGIN=http://localhost:8080
|
||||
OFFICIAL_DOCUMENTS_PUBLIC_BASE_URL=http://localhost:8080
|
||||
|
||||
# 仅首次创建演示管理员时使用;演示数据成功写入后删除下面三行。
|
||||
SEED_ADMIN_USERNAME=demo-admin
|
||||
|
||||
+76
-1
@@ -6,9 +6,26 @@ Database__Provider=MySql
|
||||
Database__ApplyMigrationsOnStartup=false
|
||||
Database__CommandTimeoutSeconds=30
|
||||
ConnectionStrings__MySql="Server=db.example.edu.cn;Port=3306;Database=jiaowu;User=APP_USER;Password=REPLACE_WITH_A_STRONG_PASSWORD;SslMode=VerifyFull;SslCa=/etc/jiaowu/mysql-ca.pem;"
|
||||
# 仅供备份与隔离恢复演练使用。该账号需要读取业务库,并仅能创建/删除
|
||||
# jiaowu_restore_drill_* 临时库;不要在此复用日常业务账号。
|
||||
# ConnectionStrings__OperationsMySql="Server=db.example.edu.cn;Port=3306;Database=jiaowu;User=OPS_USER;Password=REPLACE_WITH_A_STRONG_PASSWORD;SslMode=VerifyFull;SslCa=/etc/jiaowu/mysql-ca.pem;"
|
||||
# Redis 是可选加速器;留空时应用仅使用进程内缓存。
|
||||
# ConnectionStrings__Redis="redis.example.edu.cn:6380,user=jiaowu,password=REPLACE_WITH_A_STRONG_PASSWORD,ssl=true,abortConnect=false"
|
||||
|
||||
# 单机可继续使用 InMemory;多实例生产部署建议启用 RabbitMQ。
|
||||
BackgroundJobs__Transport=InMemory
|
||||
BackgroundJobs__AutomaticScheduleConcurrency=1
|
||||
BackgroundJobs__SchedulePublishConcurrency=1
|
||||
BackgroundJobs__MakeupExamAutoConcurrency=1
|
||||
BackgroundJobs__ExamArrangementConcurrency=1
|
||||
# RabbitMq__HostName=rabbitmq.example.edu.cn
|
||||
# RabbitMq__Port=5671
|
||||
# RabbitMq__UserName=jiaowu
|
||||
# RabbitMq__Password=REPLACE_WITH_A_STRONG_PASSWORD
|
||||
# RabbitMq__VirtualHost=/jiaowu
|
||||
# RabbitMq__UseTls=true
|
||||
# RabbitMq__TlsServerName=rabbitmq.example.edu.cn
|
||||
|
||||
Cache__Enabled=true
|
||||
Cache__KeyPrefix=jiaowu:v1
|
||||
Cache__ReferenceExpirationMinutes=30
|
||||
@@ -19,13 +36,71 @@ Cache__AnalyticsExpirationMinutes=3
|
||||
Cache__AnalyticsLocalExpirationSeconds=30
|
||||
Cache__MaximumPayloadKilobytes=2048
|
||||
|
||||
# OpenTelemetry 默认收集 HTTP、运行时和数据库指标;配置 OTLP 地址后才会外发。
|
||||
Observability__Enabled=true
|
||||
Observability__ServiceName=jiaowu-api
|
||||
Observability__SlowQueryThresholdMilliseconds=500
|
||||
# 默认不记录完整 SQL,避免日志或追踪系统接触业务数据。
|
||||
Observability__IncludeSqlText=false
|
||||
Observability__MaximumSqlTextLength=2000
|
||||
# OTEL_EXPORTER_OTLP_ENDPOINT=https://otel-collector.example.edu.cn:4317
|
||||
# OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer%20REPLACE_WITH_TOKEN
|
||||
|
||||
# 系统内“运维与审计 → 系统性能”从 Prometheus 只读查询汇总指标。
|
||||
PerformanceReporting__Enabled=false
|
||||
# PerformanceReporting__PrometheusBaseUrl=https://prometheus.example.edu.cn/
|
||||
# PerformanceReporting__BearerToken=REPLACE_WITH_READ_ONLY_TOKEN
|
||||
# PerformanceReporting__GrafanaBaseUrl=https://grafana.example.edu.cn/
|
||||
PerformanceReporting__CacheSeconds=30
|
||||
PerformanceReporting__TimeoutSeconds=10
|
||||
|
||||
# 运维控制台备份目录必须位于持久化、仅服务账号可写的位置。
|
||||
Operations__BackupDirectory=/var/lib/jiaowu/backups
|
||||
Operations__BackupWarningHours=24
|
||||
Operations__ToolTimeoutMinutes=30
|
||||
Operations__MySqlDumpPath=mysqldump
|
||||
Operations__MySqlClientPath=mysql
|
||||
# 按实际客户端补充 TLS 参数;Oracle MySQL 客户端示例:
|
||||
# Operations__MySqlAdditionalArguments__0=--ssl-mode=VERIFY_IDENTITY
|
||||
# Operations__MySqlAdditionalArguments__1=--ssl-ca=/etc/jiaowu/mysql-ca.pem
|
||||
|
||||
Jwt__Issuer=Jiaowu.Api
|
||||
Jwt__Audience=Jiaowu.Web
|
||||
Jwt__Key=REPLACE_WITH_AT_LEAST_32_RANDOM_BYTES
|
||||
Jwt__ExpireMinutes=60
|
||||
Jwt__AccessTokenMinutes=10
|
||||
Jwt__WebIdleMinutes=30
|
||||
Jwt__AppIdleMinutes=4320
|
||||
|
||||
# Keycloak SSO(可选)。Authority 必须指向 realm,例如:
|
||||
# https://sso.example.edu.cn/realms/mingxu
|
||||
Sso__Enabled=false
|
||||
# Sso__DisplayName=学校统一身份认证
|
||||
# Sso__Authority=https://sso.example.edu.cn/realms/mingxu
|
||||
# Sso__ClientId=jiaowu-web
|
||||
# Sso__ClientSecret=REPLACE_WITH_KEYCLOAK_CLIENT_SECRET
|
||||
# Sso__UserNameClaim=preferred_username
|
||||
# Sso__RequireHttpsMetadata=true
|
||||
# 首次 SSO 登录优先绑定同名本地账号;用户名不同时由用户输入现有账号密码完成绑定。
|
||||
# 不会自动创建账号或授予角色。
|
||||
# Sso__LinkExistingUsersByUserName=true
|
||||
# 前后端同域部署时留空;开发或分离部署时填写前端公开根地址。
|
||||
# Sso__FrontendBaseUrl=https://jiaowu.example.edu.cn
|
||||
# 必须与 Keycloak 客户端的 Valid redirect URI 完全一致。
|
||||
# Sso__CallbackUrl=https://jiaowu.example.edu.cn/signin-keycloak
|
||||
|
||||
AllowedHosts=jiaowu.example.edu.cn
|
||||
Cors__Origins__0=https://jiaowu.example.edu.cn
|
||||
Cors__Origins__1=capacitor://localhost
|
||||
Cors__Origins__2=https://localhost
|
||||
Cors__Origins__3=http://localhost
|
||||
|
||||
# 二维码使用的公网根地址;反向代理部署时必须填写最终 HTTPS 地址。
|
||||
OfficialDocuments__InstitutionName=明序大学
|
||||
OfficialDocuments__IssuingOffice=教务处
|
||||
OfficialDocuments__DocumentNumberPrefix=MXU
|
||||
OfficialDocuments__PublicBaseUrl=https://jiaowu.example.edu.cn
|
||||
# 默认使用系统中文字体;仅在自定义字体部署时填写绝对路径。
|
||||
# OfficialDocuments__FontPath=/usr/share/fonts/noto/NotoSansCJK-Regular.ttc
|
||||
|
||||
# 仅首次创建管理员时临时取消注释,创建成功后立即删除。
|
||||
# SeedAdmin__UserName=admin
|
||||
|
||||
+9
-1
@@ -30,10 +30,14 @@ FROM mcr.microsoft.com/dotnet/aspnet:10.0-alpine AS final
|
||||
WORKDIR /app
|
||||
ENV ASPNETCORE_ENVIRONMENT=Production \
|
||||
ASPNETCORE_HTTP_PORTS=8080 \
|
||||
DOTNET_EnableDiagnostics=0
|
||||
DOTNET_EnableDiagnostics=0 \
|
||||
Operations__BackupDirectory=/var/lib/jiaowu/backups \
|
||||
Operations__MySqlDumpPath=mariadb-dump \
|
||||
Operations__MySqlClientPath=mariadb
|
||||
EXPOSE 8080
|
||||
COPY --from=build /app/publish/ ./
|
||||
ARG UID=10001
|
||||
RUN apk add --no-cache font-noto-cjk mariadb-client
|
||||
RUN adduser \
|
||||
--disabled-password \
|
||||
--gecos "" \
|
||||
@@ -42,5 +46,9 @@ RUN adduser \
|
||||
--no-create-home \
|
||||
--uid "${UID}" \
|
||||
appuser
|
||||
RUN mkdir -p /var/lib/jiaowu/backups \
|
||||
&& chown appuser:appuser /var/lib/jiaowu/backups \
|
||||
&& chmod 700 /var/lib/jiaowu/backups
|
||||
VOLUME ["/var/lib/jiaowu/backups"]
|
||||
USER appuser
|
||||
ENTRYPOINT ["dotnet", "Jiaowu.Api.dll"]
|
||||
Loaded 3 of 314 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user