小编Raf*_*-WO的帖子

通过 Docker 的 Liquibase - 更改日志未写入磁盘

我想为本地运行(而不是在容器中)的 PostgreSQL 数据库设置 Liquibase(使用 Docker)。我学习了多个教程,包括Docker Hub上的教程。

按照建议,我liquibase.docker.properties在我的中创建了一个文件<PATH TO CHANGELOG DIR>

classpath: /liquibase/changelog
url: jdbc:postgresql://localhost:5432/mydb?currentSchema=public
changeLogFile: changelog.xml
username: myuser
password: mypass
Run Code Online (Sandbox Code Playgroud)

才能跑docker run --rm --net="host" -v <PATH TO CHANGELOG DIR>:/liquibase/changelog liquibase/liquibase --defaultsFile=/liquibase/changelog/liquibase.docker.properties <COMMAND>

当我运行时[...] generateChangeLog,我得到以下输出(带有选项--logLevel info):

classpath: /liquibase/changelog
url: jdbc:postgresql://localhost:5432/mydb?currentSchema=public
changeLogFile: changelog.xml
username: myuser
password: mypass
Run Code Online (Sandbox Code Playgroud)

看起来命令“成功”运行,但我无法changelog.xml在我安装的本地目录中找到该文件,即<PATH TO CHANGELOG DIR>. 然而,安装必须有效,因为它已成功连接到数据库,即容器能够访问和读取liquibase.docker.properties.

首先,我想我可能必须对 Docker “说”它可以在我的磁盘上写入,但似乎应该支持这一点 [来自 Docker Hub 上的描述]:

/liquibase/changelog 卷还可用于写入输出的命令,例如generateChangeLog

我缺少什么?预先感谢您的任何帮助! …

postgresql liquibase docker

5
推荐指数
1
解决办法
3470
查看次数

标签 统计

docker ×1

liquibase ×1

postgresql ×1