我尝试为克隆的应用程序安装 postgresql-9.3-postgis-2.1 或 postgresql-9.1-postgis-2.1,但我只能在从 python 构建的 Ubuntu docker 镜像上获取 postgresql-9.4-postgis-2.1: 2.7 图片。
我查看了图像,发现它在 Ubuntu 14.04.1 图像上。我尝试在我的 Xubuntu 14.04.2 VM 上安装 postgis,一切正常。
我怎样才能使安装工作正常?
Dockerfile 非常简单:
FROM python:2.7
RUN mkdir /workspace
RUN mkdir /data
WORKDIR /workspace
RUN apt-get update
RUN apt-get install postgresql postgresql-common postgresql-9.3-postgis-2.1
错误码也很正常:
E: Unable to locate package postgresql-9.3-postgis-2.1
E: Couldn't find any package by regex 'postgresql-9.3-postgis-2.1'
最佳答案
请提供更多信息,例如 dockerfile 和您遇到的错误。
从您的评论来看,您似乎在 postgresql 库之前加载了 python 库。我假设您的 python 应用程序需要 postgresql 访问权限,并且它使用 postgresql C 库周围的 python 包装器之一。
如果是这种情况,请在安装 python 库之前安装 postgresql 库,并且不要忘记添加 -dev 库。
在这种情况下,我所做的是制作一个最小的 docker 镜像,在容器中启动一个 root shell 并手动安装,做笔记并使用它们来更新 docker 文件。或者你可以运行
$ docker exec -t -i bash -i
在容器中获取 shell 并尝试需要完成的操作。
关于postgresql - 无法在 Ubuntu 14.04.1 Docker 容器上获取 postgresql-9.3-postgis-2.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30047094/