我在 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 机器映像。
所有版本,包括最新版本,都遇到此问题。当我尝试使用这张图片
15-bullseye
解决问题时,我被困了将近一天。
这是我得到解决方案的github open issues: https://github.com/docker-library/postgres/issues/1099#issuecomment-1593228770
我已经可以使用不同的机器映像了
machine:
image: ubuntu-2004:2023.04.2
这可能是检查可用图像的有用链接:https://circleci.com/developer/machine/image/ubuntu-2004