gpt4 book ai didi

Docker 容器中 Alpine Linux (arm32v6) 上的 PostgreSQL 9.6.9 - 如何安装正确的 postgresql-contrib 包?

转载 作者:行者123 更新时间:2023-11-29 12:52:12 26 4
gpt4 key购买 nike

我需要在 32 位 ARM 系统(它是 QNAP NAS,CPU:Annapurna Labs Alpine AL-314)上的 Docker 容器中安装支持 uuid-ossp 的 PostgreSQL 9.6.9。

我找到了 arm32v6/postgres图像并安装 arm32v6/postgres:9.6.9-alpine。这工作顺利,但缺少 postgresql-contrib 包。据我了解,我需要安装 postgresql-contrib 以获得 uuid-ossp 支持。

我在容器中打开了一个 CLI 并尝试了:

# apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/armhf/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/armhf/APKINDEX.tar.gz
v3.7.0-215-g16971064c0 [http://dl-cdn.alpinelinux.org/alpine/v3.7/main]
v3.7.0-207-gac61833f9b [http://dl-cdn.alpinelinux.org/alpine/v3.7/community]
OK: 8879 distinct packages available
# apk add postgresql-contrib=9.6.9-r0
ERROR: unsatisfiable constraints:
postgresql-contrib-10.4-r0:
breaks: world[postgresql-contrib=9.6.9-r0]

如何安装正确版本的 postgresql-contrib?或者我可以只将 postgresql-contrib-10.4-r0 与 PostgreSQL 9.6.9 一起使用吗?

最佳答案

只需使用基本的 alpine 镜像并从 Alpine 的官方包中完全安装 PostgreSQL:postgresqlpostgresql-contrib。提供 PostgreSQL 9.6 的最后一个稳定的 Alpine 是 v3.6,它落后两个版本,但仍然支持。 Alpine v3.7 只提供 10.4。

也不要为 apk add 指定确切的版本。 Alpine 每个分支只提供单一版本的包(例如 v3.7、v3.8、edge)。一旦我们发布 postgresql-contrib 9.6.9-r1 或 9.6.10-r0(例如修复一些安全问题),9.6.9-r0 将不再可用并且您的 apk add postgresql-contrib=9.6.9- r0 将失败。

这些专门的 Docker 镜像“打包”了一些已经在 Alpine 中正确打包的东西,它们大多完全没有用,只会引起困惑和问题。我什至数不清我在 SO 上回应了多少次此类问题。

关于Docker 容器中 Alpine Linux (arm32v6) 上的 PostgreSQL 9.6.9 - 如何安装正确的 postgresql-contrib 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51189923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com