initdb:错误:initdb 需要程序“postgres”,但使用 Circleci ubuntu docker-compose docker-entrypoint-initdb.d 找不到程序“postgres”

问题描述 投票:0回答:2

我在 Circleci 上使用 docker-compose 来启动一个 postgres 容器,并在

/docker-entrypoint-initdb.d/
上安装了一堆 sql 文件。我正在使用 ubuntu 机器映像:
ubuntu-2004:202010-01
,但我收到错误:

popen failure: Cannot allocate memory
initdb: error: program "postgres" is needed by initdb but was not found in the same directory as "/usr/lib/postgresql/15/bin/initdb"

它一直在工作,但在某些时候它停止了工作。对我可以尝试什么有什么建议吗?我已经尝试过一些更大的

resource_type
(即从中到大)和其他一些 ubuntu 机器映像。

postgresql ubuntu docker-compose circleci postgresql-initdb
2个回答
1
投票

我已经可以使用不同的机器映像了

    machine:
      image: ubuntu-2004:2023.04.2

这可能是检查可用图像的有用链接:https://circleci.com/developer/machine/image/ubuntu-2004


0
投票

包括最新版本在内的所有版本都出现了这个问题,当我尝试这个图像时,我几乎一天都在堆栈:

15-bullseye

这是我得到解决方案的github open issues: https://github.com/docker-library/postgres/issues/1099#issuecomment-1593228770

© www.soinside.com 2019 - 2024. All rights reserved.