【问题标题】:Build Docker image with Postgres data included and use for Kubernets构建包含 Postgres 数据的 Docker 映像并用于 Kubernetes
【发布时间】:2021-05-11 07:51:31
【问题描述】:

我正在尝试构建包含 postgres 数据的 docker 映像。我正在关注以下链接。

https://sharmank.medium.com/build-postgres-docker-image-with-data-included-489bd58a1f9e

它是用如下数据构建的。

REPOSITORY                                          TAG                 IMAGE ID            CREATED             SIZE
db_image_with_data                              latest              48b5d776e7d6        2 hours ago        1.67GB

我可以使用以下命令在图像中看到数据


docker run --env PGDATA=postgres -p 5432:5432 -I db_image_with_data

我已将相同的图像推送到 docker hub,并在 kubernets 中配置了相同的图像。

但只有 db 已创建,db 中没有填充数据。

kubectl exec my-database-7c4bb7bdd7-m8sjd -n dev-app -- sh -c 'psql -U "postgres" -d "devapp" -c "select * from execution_groups"'
 id | groupname | grouptype | user_id | tag | created_at | updated_at | group_id 
----+-----------+-----------+---------+--------+------------+------------+----------
(0 rows)

这里有什么我遗漏的吗?

【问题讨论】:

    标签: ruby-on-rails postgresql docker kubernetes


    【解决方案1】:

    自从那篇文章发表以来的许多年里,postgres 社区容器映像似乎已经过调整,以便在 Docker 下运行时自动为数据配置一个卷(通过 VOLUME 指令)。这意味着您的内容存储在正在运行的容器之外,因此不是已保存图像的一部分。 AFAIK 无法禁用此功能,因此您必须构建自己的基础映像(或找到另一个要使用的基础映像)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-21
      • 2022-06-28
      • 1970-01-01
      • 1970-01-01
      • 2018-12-24
      • 1970-01-01
      相关资源
      最近更新 更多