首页 > 解决方案 > 使用脚本更新 postgres docker 容器中的现有表

问题描述

我有一个使用 docker/compose 调出的 postgres 容器。我已经附加了一个卷,所以当容器再次启动时,现有的数据库会被保留。我想做的是创建一个 SQL 脚本来更改现有表或添加新表。但由于数据库已经存在,我在日志中看到以下行:

PostgreSQL Database directory appears to contain a database; Skipping initialization

目前,我将这些脚本传递到 postgres init 目录,在我的 Dockerfile 中包含以下内容:

COPY ./scripts/init/*.sql /docker-entrypoint-initdb.d/

即使数据库已经存在,是否有一个位置可以传递将由 postgres 容器运行的附加脚本?

标签: postgresqldocker

解决方案


推荐阅读