镜像构建历史
# 2026-03-24 13:25:31 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/bin/bash" "/scripts/docker-entrypoint.sh"]
# 2026-03-24 13:25:31 642.00B 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c echo 'figlet -t "Kartoza Docker PostGIS"' >> ~/.bashrc # buildkit
# 2026-03-24 13:25:31 46.46KB 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c set -eux && /scripts/setup.sh;rm /scripts/.pass_* # buildkit
# 2026-03-24 13:25:31 36.65KB 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c chmod +x *.sh # buildkit
# 2026-03-24 13:25:31 0.00B 设置工作目录为/scripts
WORKDIR /scripts
# 2026-03-24 13:25:31 43.84KB 复制文件或目录到容器中
ADD ./scripts /scripts # buildkit
# 2026-03-24 13:25:31 0.00B 声明容器运行时监听的端口
EXPOSE [5432/tcp]
# 2026-03-24 13:25:31 0.00B 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c apt-get -y --purge autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
# 2026-03-24 13:25:30 887.07KB 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c wget -O- https://github.com/pgpointcloud/pointcloud/archive/master.tar.gz | tar xz && cd pointcloud-master && ./autogen.sh && ./configure && make -j 4 && make install && cd .. && rm -Rf pointcloud-master # buildkit
# 2026-03-24 13:25:25 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/18/bin
# 2026-03-24 13:25:25 7.00B 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c echo $POSTGRES_MAJOR_VERSION >/tmp/pg_version.txt && echo $POSTGIS_MAJOR_VERSION >/tmp/pg_major_version.txt && echo $POSTGIS_MINOR_RELEASE >/tmp/pg_minor_version.txt # buildkit
# 2026-03-24 13:25:25 0.00B 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c if [ "${BUILD_TIMESCALE}" = "true" ]; then export DEBIAN_FRONTEND=noninteractive && sh -c "echo \"deb [signed-by=/usr/share/keyrings/timescale.keyring] https://packagecloud.io/timescale/timescaledb/debian/ ${IMAGE_VERSION} main\" > /etc/apt/sources.list.d/timescaledb.list" && wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | gpg --dearmor -o /usr/share/keyrings/timescale.keyring && apt-get update && apt-get -y --no-install-recommends install timescaledb-${TIMESCALE_VERSION}-postgresql-${POSTGRES_MAJOR_VERSION} timescaledb-tools; fi; # buildkit
# 2026-03-24 13:25:25 943.84MB 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c set -eux && export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get -y --no-install-recommends install postgresql-client-${POSTGRES_MAJOR_VERSION} postgresql-common postgresql-${POSTGRES_MAJOR_VERSION} postgresql-${POSTGRES_MAJOR_VERSION}-postgis-${POSTGIS_MAJOR_VERSION} postgresql-${POSTGRES_MAJOR_VERSION}-ogr-fdw postgresql-${POSTGRES_MAJOR_VERSION}-postgis-${POSTGIS_MAJOR_VERSION}-scripts postgresql-plpython3-${POSTGRES_MAJOR_VERSION} postgresql-${POSTGRES_MAJOR_VERSION}-pgrouting postgresql-server-dev-${POSTGRES_MAJOR_VERSION} postgresql-${POSTGRES_MAJOR_VERSION}-cron postgresql-${POSTGRES_MAJOR_VERSION}-mysql-fdw postgresql-plperl-${POSTGRES_MAJOR_VERSION} && pgxn install h3 # buildkit
# 2026-03-24 13:24:54 3.78KB 执行命令并创建新的镜像层
RUN |10 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 POSTGRES_MAJOR_VERSION=18 POSTGIS_MAJOR_VERSION=3 POSTGIS_MINOR_RELEASE=6 TIMESCALE_VERSION=2-2.11.2 BUILD_TIMESCALE=false /bin/sh -c set -eux && export DEBIAN_FRONTEND=noninteractive && apt-get update && wget -O- https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sh -c 'cat > /usr/share/keyrings/postgresql.gpg' > /dev/null && echo deb [signed-by=/usr/share/keyrings/postgresql.gpg] https://apt.postgresql.org/pub/repos/apt/ ${IMAGE_VERSION}-pgdg main | tee /etc/apt/sources.list.d/pgdg.list 2>/dev/null && apt-get -y --purge autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* && dpkg-divert --local --rename --add /sbin/initctl # buildkit
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG BUILD_TIMESCALE=false
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG TIMESCALE_VERSION=2-2.11.2
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG POSTGIS_MINOR_RELEASE=6
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG POSTGIS_MAJOR_VERSION=3
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG POSTGRES_MAJOR_VERSION=18
# 2026-03-24 13:24:51 0.00B 定义构建参数
ARG IMAGE_VERSION=trixie
# 2026-03-24 13:24:51 0.00B 执行命令并创建新的镜像层
RUN |5 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 /bin/sh -c apt-get -y --purge autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
# 2026-03-24 13:24:50 35.00B 执行命令并创建新的镜像层
RUN |5 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 /bin/sh -c update-locale ${LANG} # buildkit
# 2026-03-24 13:24:50 222.23MB 执行命令并创建新的镜像层
RUN |5 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie GENERATE_ALL_LOCALE=1 LANGS=en_US.UTF-8,id_ID.UTF-8 LANG=en_US.UTF-8 /bin/sh -c if [ -z "${GENERATE_ALL_LOCALE}" ] || [ $GENERATE_ALL_LOCALE -eq 0 ]; then cat /etc/all.locale.gen | grep "${LANG}" > /etc/locale.gen; /bin/bash /etc/locale-filter.sh; else cp -f /etc/all.locale.gen /etc/locale.gen; fi; set -eux && /usr/sbin/locale-gen # buildkit
# 2026-03-24 13:17:26 235.00B 复制新文件或目录到容器中
COPY ./base_build/scripts/locale-filter.sh /etc/locale-filter.sh # buildkit
# 2026-03-24 13:17:26 8.16KB 复制新文件或目录到容器中
COPY ./base_build/scripts/locale.gen /etc/all.locale.gen # buildkit
# 2026-03-24 13:17:26 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2026-03-24 13:17:26 0.00B 定义构建参数
ARG LANG=en_US.UTF-8
# 2026-03-24 13:17:26 0.00B 定义构建参数
ARG LANGS=en_US.UTF-8,id_ID.UTF-8
# 2026-03-24 13:17:26 0.00B 定义构建参数
ARG GENERATE_ALL_LOCALE=1
# 2026-03-24 13:17:26 728.62MB 执行命令并创建新的镜像层
RUN |2 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie /bin/sh -c set -eux && export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get -y --no-install-recommends install locales gnupg2 wget ca-certificates rpl pwgen iputils-ping apt-transport-https curl gettext pgxnclient cmake && apt-get -y install build-essential autoconf libxml2-dev zlib1g-dev netcat-openbsd gdal-bin figlet toilet gosu; gosu nobody true && dpkg-divert --local --rename --add /sbin/initctl # buildkit
# 2026-03-24 13:16:55 21.25MB 执行命令并创建新的镜像层
RUN |2 CACHE_INVALIDATION_NUMBER=1 IMAGE_VERSION=trixie /bin/sh -c apt-get -qq update --fix-missing && apt-get -qq --yes upgrade # buildkit
# 2026-03-24 13:16:55 0.00B 定义构建参数
ARG IMAGE_VERSION=trixie
# 2026-03-24 13:16:55 0.00B 定义构建参数
ARG CACHE_INVALIDATION_NUMBER=1
# 2026-03-24 13:16:55 0.00B 添加元数据标签
LABEL cache.invalidation.number=1
# 2026-03-24 13:16:55 0.00B 添加元数据标签
LABEL maintainer=Tim Sutton<tim@kartoza.com>
# 2026-03-16 08:00:00 78.61MB
# debian.sh --arch 'amd64' out/ 'trixie' '@1773619200'
镜像信息
{
"Id": "sha256:76e5406491f3cc97a99552f966cd6ce2b5cdc500c35958791f9dee29fcd4ec3b",
"RepoTags": [
"kartoza/postgis:18-3.6--v2026.03.24",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/kartoza/postgis:18-3.6--v2026.03.24"
],
"RepoDigests": [
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/kartoza/postgis@sha256:2b311c38f601970e53531043ea7aab32722b42f6ee9def6f99a15e0f1f18af22"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-03-24T05:25:31.56897737Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"5432/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/18/bin",
"LANG=en_US.UTF-8",
"LANGUAGE=en_US:en",
"LC_ALL=en_US.UTF-8"
],
"Cmd": null,
"Image": "",
"Volumes": null,
"WorkingDir": "/scripts",
"Entrypoint": [
"/bin/bash",
"/scripts/docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"cache.invalidation.number": "1",
"maintainer": "Tim Sutton\u003ctim@kartoza.com\u003e"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 1995573534,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/efd016294f561ad6fad082c3110f09ce7aeb74462565c23f2ba923143fd64a58/diff:/var/lib/docker/overlay2/fd457265b903169a286298116064adfd8e42e8af13390591aa9aac55c0703259/diff:/var/lib/docker/overlay2/1fe19929f7d5a40639586b9869efe0306ca078149a9a223d1c58e7182c2c455e/diff:/var/lib/docker/overlay2/cf5053a7f7982f23500ace94ab7c348de1da04d012dd68a7e50ed418779dd112/diff:/var/lib/docker/overlay2/125aca678d7663bc52f2f97ce8d27d89aa1b768b1f582f87650a921e32bb7c74/diff:/var/lib/docker/overlay2/ad4dcb8c98ea885e58e84260507c20c2705f61b5668b7abc760504e2f9856b7a/diff:/var/lib/docker/overlay2/66f5ec720cbbb48d40150b681f392bd833f7e5792859481aadf9228ce1ad3201/diff:/var/lib/docker/overlay2/87fd36939ec33da03922ca2acbbf6e22e8b2329b156f81b9b6d3f94d72761aea/diff:/var/lib/docker/overlay2/d3a57c52ce923ddfae0bd5ee5801baa8ae06919207d1e653f77156ecd7a4cef9/diff:/var/lib/docker/overlay2/7b3aed403db3c536c2ef380a94cdbe00ae579fc5c96f10869401a20066fe929e/diff:/var/lib/docker/overlay2/508eda8d6264d5672b1a7e64f3878268affe2a07ec88a79206c794adfee5fbe1/diff:/var/lib/docker/overlay2/0e392b9967dce5830d3cb3ee1e511765443e8faf1d4fbb3ecbaa46f623e799ae/diff:/var/lib/docker/overlay2/e5eb1270791eb3c5424dd9a782c021104955ae4001112f8252b4ad26392b832c/diff:/var/lib/docker/overlay2/20d49107e36434b38d23c2a47cdd7f26f483fb9f9261564d70a52437cc4e21be/diff:/var/lib/docker/overlay2/27f2396db7edd50aad0bb0c65115b3632efd95e921fe71b198a46bf416be3030/diff:/var/lib/docker/overlay2/cd34242ce7ec840b6dd689d2cc99d0f1b9df1531cbb3c968d2c4f6be76635446/diff:/var/lib/docker/overlay2/2682206d48e9934139ae7f91d3d944698b9ef16de2a08e5a959306f9ae041c3a/diff:/var/lib/docker/overlay2/232bca50a309f7afc81af9dd4c38b4ed2e3f3351b4afa40f679597eb42090496/diff",
"MergedDir": "/var/lib/docker/overlay2/fea7c211a6297facc625366c228e7d7fc2f01f871d8dc79615b72078abddf8f8/merged",
"UpperDir": "/var/lib/docker/overlay2/fea7c211a6297facc625366c228e7d7fc2f01f871d8dc79615b72078abddf8f8/diff",
"WorkDir": "/var/lib/docker/overlay2/fea7c211a6297facc625366c228e7d7fc2f01f871d8dc79615b72078abddf8f8/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:188c9b34dfbe022075d01fc4f5a305412909ef97de440783c15043e68e1b1913",
"sha256:64aaa9d768dd865b942631cc862e86df05f4e9c8d03a1aa893a386f54a5c1123",
"sha256:5bc185c40f9d29dcc40995d7d3453a7e164f8d35db7f2e99920412859e955016",
"sha256:be8672473d741b512b78c540965bc4498c644185e6e14168cf8b1e3521ee4a11",
"sha256:6571a0f223868b24aaf41d00593e458e865e059e5e6d65ed90838e277c6c9b00",
"sha256:287e8fe6f4b74995c5c237fa0bc5a7c9c9d128ec8041924f4b223a9457bc973b",
"sha256:8f024c41c5b843ca6da5229e9e853baf0327e4e076d18586be5626aadf9bd16a",
"sha256:05ba50cb01bb81219b15cf45b93fce4d0defed5d3b9ada1b156b589c406a7ed8",
"sha256:b8e7ffa8bf3448b9ebe163f9e42f5a72dda51b4beeb796c8a39ea8d4ae5a9cdd",
"sha256:28eade099929e529d8666fda24782a802f560a6bb98e82902e23bcc1abe03db8",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:59e8f7c6ee2b91529357ef13744a419ef1270585d69f682d36c3416a4f105a7a",
"sha256:0f8c5b17f20b2e72c66ca9fcf3642d3cf2373b8078f90cb233ef39e1a0a408e3",
"sha256:bd807803ef7b908aa8d077067e72fba3ff864c51e0fbc452154d03eb82a965ad",
"sha256:fd3b47dde0b0a3555b499c4104e7581acab69b073b57281d4a7a3d822e208b5a",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:ca1241dd195f9f921081bb0bd52242b4d401f7ddf386861533f5cab15f854bf9",
"sha256:75e0962977e358ff4cdec02dbdd4d549e11016c22a126c790e334ee484bccf8f",
"sha256:7cd05d13b11b1719d8cb6a129a2f0e583877e881deaeb69c596784a09c387808"
]
},
"Metadata": {
"LastTagTime": "2026-03-26T09:20:46.128282471+08:00"
}
}