From 8b46e535c55571eeb53a9dbcedf64c5b829b8e2a Mon Sep 17 00:00:00 2001 From: Zhou Weidong <502333560@qq.com> Date: Fri, 16 Oct 2026 14:32:24 +0800 Subject: [PATCH] =?UTF-8?q?fix(deploy):=20=E4=BF=AE=E6=AD=A3=20PG18=20?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=8D=B7=E6=8C=82=E8=BD=BD=E8=B7=AF=E5=BE=84?= =?UTF-8?q?=E4=B8=BA=20/var/lib/postgresql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit docker-library/postgres 自 18 起把数据目录改成 /var/lib/postgresql//, 卷继续挂 /var/lib/postgresql/data 会被 entrypoint 判定为"残留数据"并拒绝启动; 表现为 db 容器反复 Restarting,依赖它的三个服务一起起不来。 改挂父目录后本地实测:docker compose up -d 正常,db 进入 healthy。 --- docker-compose.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 0e8fe30..b73ca55 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -24,7 +24,8 @@ services: # 中文与印尼语内容需要 UTF-8(镜像默认已是 UTF8,这里显式一次) POSTGRES_INITDB_ARGS: "--encoding=UTF8 --locale=C" volumes: - - db-data:/var/lib/postgresql/data + # PostgreSQL 18 起镜像把数据放在 /var/lib/postgresql//,卷必须挂到父目录 + - db-data:/var/lib/postgresql # 首次启动自动建表 + 造种子数据;顺序即文件名顺序(脚本本身幂等,可重复执行) - ./sql/schema.sql:/docker-entrypoint-initdb.d/01-schema.sql:ro - ./sql/schema-phase1.sql:/docker-entrypoint-initdb.d/02-schema-phase1.sql:ro