本地测试要显式覆盖数据源
正确做法
- 模型/密钥配置沿用根 env(那部分本来就是要共享的);
DATABASE_URL/REDIS_URL这类数据源必须显式覆盖到本地容器(如127.0.0.1:55432/127.0.0.1:56379)。
也就是说:source 根 env 之后追加覆盖,而不是"整套 env 二选一"。
为什么会踩
- 上一次成功的启动可能用了启动参数显式覆盖,所以"之前一直好好的";换了启动方式就丢了覆盖。
- 软链让"分支自己的配置"看起来存在,实际内容是主目录那份。
判据:启动前问一句「这个进程连的是哪套库」,而不是「我 source 了哪个文件」。
相关
- 本地开发脚本可能连生产资源 —— 同一风险:本地进程吃生产资源
- worktree是独立目录产物与配置都隔离 —— 软链 env 是它的常见变体
- 无入站流量的服务靠数据与配置隔离环境 —— 隔离手段:数据与配置
- 本地能跑不等于环境里能跑