github上的代码包含另一个图像postgres:11-alpine与问题中定义的图像进行比较
alpine:latest。
软件包gdal-
dev,geos-
dev,protobuf-c-
dev不再位于边缘仓库测试分支中,它们已迁移到稳定的v3.11存储库中。还被
proj4-dev重命名为proj-
dev,它也位于稳定的v3.11存储库中。
因此,要解决此问题,
Dockerfile我们只需要从v3.11 repo安装上述软件包,即更改这部分代码:
&& apk add --no-cache --virtual .build-deps autoconf automake g++ json-c-dev libtool libxml2-dev make perl \&& apk add --no-cache --virtual .build-deps-edge --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing --repository http://dl-cdn.alpinelinux.org/alpine/edge/main gdal-dev geos-dev proj4-dev protobuf-c-dev proj4-dev protobuf-c-dev
对此:
&& apk add --no-cache --virtual .build-deps autoconf automake g++ gdal-dev geos-dev json-c-dev libtool libxml2-dev make perl proj-dev protobuf-c-dev \
最终
Dockerfile是:
FROM alpine:3.11RUN apk add -U postgresql# install PostGISENV POSTGIS_VERSION 2.5.2ENV POSTGIS_SHA256 225aeaece00a1a6a9af15526af81bef2af27f4c198de820af1367a792ee1d1a9RUN set -ex && apk add --no-cache --virtual .fetch-deps ca-certificates openssl tar && wget -O postgis.tar.gz "https://github.com/postgis/postgis/archive/$POSTGIS_VERSION.tar.gz" && echo "$POSTGIS_SHA256 *postgis.tar.gz" | sha256sum -c - && mkdir -p /usr/src/postgis && tar --extract --file postgis.tar.gz --directory /usr/src/postgis --strip-components 1 && rm postgis.tar.gz && apk add --no-cache --virtual .build-deps autoconf automake g++ gdal-dev geos-dev json-c-dev libtool libxml2-dev make perl proj-dev protobuf-c-dev && cd /usr/src/postgis && ./autogen.sh # configure options taken from:# https://anonscm.debian.org/cgit/pkg-grass/postgis.git/tree/debian/rules?h=jessie && ./configure # --with-gui && make && make install && apk add --no-cache --virtual .postgis-rundeps json-c && apk add --no-cache --virtual .postgis-rundeps-edge --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing --repository http://dl-cdn.alpinelinux.org/alpine/edge/main geos gdal proj4 protobuf-c && cd / && rm -rf /usr/src/postgis && apk del .fetch-deps .build-deps .build-deps-edgeCOPY ./db-creator.sh /db-creator.shCMD ["./db-creator.sh"]



