Skip to content

docs: 修正 .env.example 默认值并补全 PGADMIN_PASSWORD#29

Open
F1sh2712 wants to merge 1 commit intoInvolutionHell:mainfrom
F1sh2712:docs/env-example-default-local
Open

docs: 修正 .env.example 默认值并补全 PGADMIN_PASSWORD#29
F1sh2712 wants to merge 1 commit intoInvolutionHell:mainfrom
F1sh2712:docs/env-example-default-local

Conversation

@F1sh2712
Copy link
Copy Markdown

@F1sh2712 F1sh2712 commented May 8, 2026

What

修正 .env.examplecp .env.example .env 后默认开箱即用,并补全缺失的 PGADMIN_PASSWORD 变量。

Why

当前 .env.example 存在两个让新贡献者卡住的问题:

问题 1:默认配置指向不存在的 Neon 占位符

数据库段默认是:
PGHOST=ep-xxxx.ap-southeast-2.aws.neon.tech
PGUSER=neondb_owner
SPRING_DATASOURCE_URL=jdbc:postgresql://ep-xxxx.ap-southeast-2.aws.neon.tech/neondb?sslmode=require

新人 cp .env.example .env 后启动后端会因为 DNS 解析失败(ep-xxxx 是占位符)而无法连接数据库。

问题 2:缺失 PGADMIN_PASSWORD 变量

docker-compose.ymlPGADMIN_PASSWORD${PGADMIN_PASSWORD:?...} 强制要求设置:

PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_PASSWORD:?PGADMIN_PASSWORD must be set in .env}

.env.example 完全没有这个变量。即使用户不启动 pgadmin 服务,docker compose ps / docker compose up 等命令在解析 yml 时也会校验所有强制变量,直接报错:
required variable PGADMIN_PASSWORD is missing a value

Closes #25

How

数据库段重排

  • 把本地 Docker 配置(localhost / involution / involution_hell / disable)作为默认值
  • 把 Neon 配置整段注释,作为可选参考保留
  • SPRING_SQL_INIT_MODE 默认改为 always(首次启动需要执行 schema.sql 建表)

补全 pgAdmin 配置

新增 pgAdmin 段,包含 PGADMIN_EMAIL 和必填的 PGADMIN_PASSWORD,并在注释里说明"即使不启动 pgadmin 也必须设置"。

保留的部分

  • POSTGRES_DB / POSTGRES_USER / POSTGRES_PASSWORD 段保留,docker-compose 创建容器时使用(POSTGRES_PASSWORD 同样是强制变量)
  • 其他段(GitHub OAuth / AI / Actuator / Caddy)未改动

Testing

本地实测验证流程:

  1. cp .env.example .env(完全不修改任何字段)
  2. docker compose up -d postgres(容器进入 healthy 状态)
  3. 在 IDEA 中启动 BackendApplication(EnvFile 插件加载 .env)
  4. curl -X POST http://127.0.0.1:8080/auth/login -d '{"username":"admin","password":"Admin@123456"}'

返回:

{
  "success": true,
  "message": "登录成功",
  "data": { "tokenName": "satoken", "tokenValue": "...", "user": {...} }
}

整条链路完全跑通,无需任何手动修改 .env。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

新贡献者本地启动后端时遇到的多个问题汇总

1 participant