x-r*_*ray 1 postgresql arm docker alpine-linux postgresql-9.6
我需要在 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]
Run Code Online (Sandbox Code Playgroud)
如何安装正确版本的 postgresql-contrib?或者我可以在 PostgreSQL 9.6.9 中使用 postgresql-contrib-10.4-r0 吗?
只需使用基本的 alpine 映像并从 Alpine 的官方软件包中完全安装 PostgreSQL:postgresql和postgresql-contrib. 最后一个稳定的 Alpine 提供 PostgreSQL 9.6 是 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 上回应此类问题的次数。
| 归档时间: |
|
| 查看次数: |
10260 次 |
| 最近记录: |