配置说明
了解 ContiNew Admin 配置文件的组织方式、环境变量注入规则与配置归属原则,知道某个配置该去哪改。
本文是 4.x 的归档文档(冻结于 v4.2.0)。该分支只接收勘误修正, 内容基本不再变动;文中的源码路径、配置项与版本号均以 4.2.x 为准,不建议用于新项目。
新项目请查看 5.x 最新文档。已在 4.2.x 上运行的项目,本文仍是可靠依据。
ContiNew Admin 后端的配置文件全部位于 continew-server 模块的 src/main/resources/config/ 目录,共四份。本页只回答三个问题:配置怎么分文件、环境变量怎么注入、某个配置该归谁管。具体配置块的含义与取值去对应的任务页查,不在这里复述。
| 文件 | 激活方式 | 内容 |
|---|---|---|
application.yml | 始终加载 | 通用配置,不含端口与凭据 |
application-dev.yml | 默认 profile(PROFILES_ACTIVE 缺省为 dev) | 本地开发,端口 8000,凭据带示例默认值 |
application-prod.yml | PROFILES_ACTIVE=prod | 生产环境,端口 18000,凭据无默认值 |
application-generator.yml | spring.profiles.include: generator 固定引入 | 代码生成器排除表与类型映射 |
dev 与 prod 的差异
| 维度 | dev | prod |
|---|---|---|
| 端口 | 8000 | 18000 |
| 凭据 | 带示例默认值(如 DB_PWD:123456) | 无默认值,缺失即启动失败 |
| SQL 监控 | 数据源经 P6Spy 代理(jdbc:p6spy:mysql://) | 直连驱动 com.mysql.cj.jdbc.Driver |
| 跨域 | allowed-origins: '*' | 白名单化,仅 ${application.url} |
| 访问日志 | continew-starter.log.access-log.enabled: true | false |
| 任务调度 | snail-job.enabled: false,不依赖调度中心 | true,需部署调度中心 |
dev 预置了字段加密的示例 RSA 密钥对与 AES 密钥,仅供本地联调。prod 这些值全部改为环境变量注入,且不得与 dev 共用同一密钥对。
环境变量注入
配置文件中所有 ${VAR} 形式的值都来自环境变量。非凭据类变量在 dev 中带默认值,可以不改;凭据类变量在 prod 中强制注入,缺失即启动失败,这是有意设计,让配置问题在启动期暴露而不是运行到一半才炸。
本地用 IDEA 启动时,在运行配置的 Environment variables 里追加;Docker 部署通过 compose 的 environment 段注入,见部署。完整的变量清单(用途、dev 默认值、prod 是否必填)见环境变量参考。
变量名统一大写下划线风格,与配置里的 ${...} 占位一一对应。新增凭据时沿用同一模式:prod 中不给默认值。
新增环境 profile
需要测试环境这类新 profile 时,复制 application-dev.yml 为 application-test.yml,改端口与连接信息,然后以 PROFILES_ACTIVE=test 启动。多 profile 可逗号分隔组合激活(generator 已由 include 固定引入,无需重复写)。
配置项归属原则
项目里的配置键分属两个层面,写新功能时按下表决定配置放哪里:
- 框架级配置键(
continew-starter.*、sa-token.*、mybatis-plus.*等)由 ContiNew Starter 定义,全部可选项与默认值见配置项参考。Admin 文档只说明 Admin 给这些键填的值,不重复定义。 - 应用级配置键(
application.*、avatar.*、captcha.*、generator.*等)由 Admin 自身定义,直接在对应application-*.yml中维护。 - 页面上维护的运行时配置(网站、安全、登录、邮件、短信、存储、客户端)优先用「系统管理 → 系统配置」页面管理,不写进配置文件。配置文件里的
spring.mail与sms块与页面配置二选一,实际开发时注释或删除另一方,避免两处漂移。见系统配置。
哪里查具体配置
| 你要改什么 | 看哪一页 |
|---|---|
| 本地数据库、Redis、端口 | 快速开始 |
| 生产凭据、跨域、反向代理、调度中心 | 部署 |
| 网站、密码策略、邮件、登录开关 | 系统配置 |
| 双令牌 Cookie 与代理限流 | 认证与安全 |
| 租户隔离与忽略表 | 多租户接入 |
| 第三方登录平台凭据 | JustAuth |