ghcr.io/cloudnative-pg/postgresql:17-bookworm linux/amd64

ghcr.io/cloudnative-pg/postgresql:17-bookworm - 国内下载镜像源 浏览次数:13

这是一个 Cloud Native PG 提供的 PostgreSQL 数据库服务器 Docker 镜像。它提供了一种便捷的方式来在 Docker 环境中运行和管理 PostgreSQL 数据库。

源镜像 ghcr.io/cloudnative-pg/postgresql:17-bookworm
国内镜像 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm
镜像ID sha256:60dbe63eb1a54216554bf772653ca24cf9fe2ad01f3f50c301d2a9826dcb739f
镜像TAG 17-bookworm
大小 651.76MB
镜像源 ghcr.io
CMD postgres
启动入口 docker-entrypoint.sh
工作目录
OS/平台 linux/amd64
浏览量 13 次
贡献者
镜像创建 2025-09-01T15:33:29.166851759Z
同步时间 2025-09-02 02:13
更新时间 2025-09-02 18:05
开放端口
5432/tcp
目录挂载
/var/lib/postgresql/data
环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin GOSU_VERSION=1.17 LANG=en_US.utf8 PG_MAJOR=17 PG_VERSION=17.6-1.pgdg12+1 PGDATA=/var/lib/postgresql/data
镜像标签
This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.: description PostgreSQL Container Images: name This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.: org.opencontainers.image.description 4: release PostgreSQL Container images.: summary The CloudNativePG Contributors: vendor 17.6-1.pgdg12+1: version

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm  ghcr.io/cloudnative-pg/postgresql:17-bookworm

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm  ghcr.io/cloudnative-pg/postgresql:17-bookworm

Shell快速替换命令

sed -i 's#ghcr.io/cloudnative-pg/postgresql:17-bookworm#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm  ghcr.io/cloudnative-pg/postgresql:17-bookworm'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm  ghcr.io/cloudnative-pg/postgresql:17-bookworm'

镜像构建历史


# 2025-09-01 23:33:29  0.00B 指定运行容器时使用的用户
USER 26
                        
# 2025-09-01 23:33:29  1.78KB 执行命令并创建新的镜像层
RUN /bin/sh -c usermod -u 26 postgres # buildkit
                        
# 2025-09-01 23:33:29  211.10MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -xe; 	apt-get update; 	apt-get install -y --no-install-recommends 		build-essential python3-dev 		python3-pip 		python3-psycopg2 		python3-setuptools 	; 	pip3 install --break-system-packages --upgrade pip; 	pip3 install --break-system-packages --no-deps -r requirements.txt; 	apt-get remove -y --purge --autoremove build-essential python3-dev; 	rm -rf /var/lib/apt/lists/*; # buildkit
                        
# 2025-09-01 23:33:06  2.14MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -xe; 	rm -fr /var/lib/postgresql/data; 	apt-get update; 	if apt-get -s upgrade | grep "^Inst postgres"; then 		echo "ERROR: Upgradable postgres packages found!"; 		apt-get -s upgrade | grep "^Inst postgres"; 		exit 1; 	fi; 	apt-get install -y --no-install-recommends 		"postgresql-${PG_MAJOR}-pgaudit" 		"postgresql-${PG_MAJOR}-pgvector" 		"postgresql-${PG_MAJOR}-pg-failover-slots" 	; 	rm -fr /tmp/* ; 	rm -rf /var/lib/apt/lists/*; # buildkit
                        
# 2025-09-01 23:33:01  50.22KB 复制新文件或目录到容器中
COPY requirements.txt / # buildkit
                        
# 2025-09-01 23:33:01  0.00B 添加元数据标签
LABEL org.opencontainers.image.description=This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.
                        
# 2025-09-01 23:33:01  0.00B 添加元数据标签
LABEL name=PostgreSQL Container Images vendor=The CloudNativePG Contributors version=17.6-1.pgdg12+1 release=4 summary=PostgreSQL Container images. description=This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.
                        
# 2025-08-15 01:12:46  0.00B 设置默认要执行的命令
CMD ["postgres"]
                        
# 2025-08-15 01:12:46  0.00B 声明容器运行时监听的端口
EXPOSE map[5432/tcp:{}]
                        
# 2025-08-15 01:12:46  0.00B 设置停止容器时发送的系统调用信号
STOPSIGNAL SIGINT
                        
# 2025-08-15 01:12:46  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2025-08-15 01:12:46  23.00B 执行命令并创建新的镜像层
RUN /bin/sh -c ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh # buildkit
                        
# 2025-08-15 01:12:46  16.50KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/ # buildkit
                        
# 2025-08-15 01:12:46  0.00B 创建挂载点用于持久化数据或共享数据
VOLUME [/var/lib/postgresql/data]
                        
# 2025-08-15 01:12:46  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA" # buildkit
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 PGDATA
ENV PGDATA=/var/lib/postgresql/data
                        
# 2025-08-15 01:12:46  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql # buildkit
                        
# 2025-08-15 01:12:46  61.95KB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	dpkg-divert --add --rename --divert "/usr/share/postgresql/postgresql.conf.sample.dpkg" "/usr/share/postgresql/$PG_MAJOR/postgresql.conf.sample"; 	cp -v /usr/share/postgresql/postgresql.conf.sample.dpkg /usr/share/postgresql/postgresql.conf.sample; 	ln -sv ../postgresql.conf.sample "/usr/share/postgresql/$PG_MAJOR/"; 	sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/share/postgresql/postgresql.conf.sample; 	grep -F "listen_addresses = '*'" /usr/share/postgresql/postgresql.conf.sample # buildkit
                        
# 2025-08-15 01:12:46  321.11MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; 		export PYTHONDONTWRITEBYTECODE=1; 		dpkgArch="$(dpkg --print-architecture)"; 	aptRepo="[ signed-by=/usr/local/share/keyrings/postgres.gpg.asc ] http://apt.postgresql.org/pub/repos/apt/ bookworm-pgdg main $PG_MAJOR"; 	case "$dpkgArch" in 		amd64 | arm64 | ppc64el) 			echo "deb $aptRepo" > /etc/apt/sources.list.d/pgdg.list; 			apt-get update; 			;; 		*) 			echo "deb-src $aptRepo" > /etc/apt/sources.list.d/pgdg.list; 						savedAptMark="$(apt-mark showmanual)"; 						tempDir="$(mktemp -d)"; 			cd "$tempDir"; 						apt-get update; 			apt-get install -y --no-install-recommends dpkg-dev; 			echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list; 			_update_repo() { 				dpkg-scanpackages . > Packages; 				apt-get -o Acquire::GzipIndexes=false update; 			}; 			_update_repo; 						nproc="$(nproc)"; 			export DEB_BUILD_OPTIONS="nocheck parallel=$nproc"; 			apt-get build-dep -y postgresql-common-dev; 			apt-get source --compile postgresql-common-dev; 			_update_repo; 			apt-get build-dep -y "postgresql-$PG_MAJOR=$PG_VERSION"; 			apt-get source --compile "postgresql-$PG_MAJOR=$PG_VERSION"; 									apt-mark showmanual | xargs apt-mark auto > /dev/null; 			apt-mark manual $savedAptMark; 						ls -lAFh; 			_update_repo; 			grep '^Package: ' Packages; 			cd /; 			;; 	esac; 		apt-get install -y --no-install-recommends postgresql-common; 	sed -ri 's/#(create_main_cluster) .*$/\1 = false/' /etc/postgresql-common/createcluster.conf; 	apt-get install -y --no-install-recommends 		"postgresql-$PG_MAJOR=$PG_VERSION" 	; 		rm -rf /var/lib/apt/lists/*; 		if [ -n "$tempDir" ]; then 		apt-get purge -y --auto-remove; 		rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; 	fi; 		find /usr -name '*.pyc' -type f -exec bash -c 'for pyc; do dpkg -S "$pyc" &> /dev/null || rm -vf "$pyc"; done' -- '{}' +; 		postgres --version # buildkit
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 PG_VERSION
ENV PG_VERSION=17.6-1.pgdg12+1
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 PATH
ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 PG_MAJOR
ENV PG_MAJOR=17
                        
# 2025-08-15 01:12:46  3.98KB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; 	key='B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8'; 	export GNUPGHOME="$(mktemp -d)"; 	mkdir -p /usr/local/share/keyrings/; 	gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; 	gpg --batch --export --armor "$key" > /usr/local/share/keyrings/postgres.gpg.asc; 	gpgconf --kill all; 	rm -rf "$GNUPGHOME" # buildkit
                        
# 2025-08-15 01:12:46  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir /docker-entrypoint-initdb.d # buildkit
                        
# 2025-08-15 01:12:46  3.18MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	apt-get update; 	apt-get install -y --no-install-recommends 		libnss-wrapper 		xz-utils 		zstd 	; 	rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 LANG
ENV LANG=en_US.utf8
                        
# 2025-08-15 01:12:46  25.19MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	if [ -f /etc/dpkg/dpkg.cfg.d/docker ]; then 		grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; 		sed -ri '/\/usr\/share\/locale/d' /etc/dpkg/dpkg.cfg.d/docker; 		! grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; 	fi; 	apt-get update; apt-get install -y --no-install-recommends locales; rm -rf /var/lib/apt/lists/*; 	echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen; 	locale-gen; 	locale -a | grep 'en_US.utf8' # buildkit
                        
# 2025-08-15 01:12:46  4.16MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	savedAptMark="$(apt-mark showmanual)"; 	apt-get update; 	apt-get install -y --no-install-recommends ca-certificates wget; 	rm -rf /var/lib/apt/lists/*; 	dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; 	wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; 	wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; 	export GNUPGHOME="$(mktemp -d)"; 	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; 	gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; 	gpgconf --kill all; 	rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; 	apt-mark auto '.*' > /dev/null; 	[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; 	apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; 	chmod +x /usr/local/bin/gosu; 	gosu --version; 	gosu nobody true # buildkit
                        
# 2025-08-15 01:12:46  0.00B 设置环境变量 GOSU_VERSION
ENV GOSU_VERSION=1.17
                        
# 2025-08-15 01:12:46  9.93MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; 	apt-get update; 	apt-get install -y --no-install-recommends 		gnupg 		less 	; 	rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2025-08-15 01:12:46  4.32KB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	groupadd -r postgres --gid=999; 	useradd -r -g postgres --uid=999 --home-dir=/var/lib/postgresql --shell=/bin/bash postgres; 	install --verbose --directory --owner postgres --group postgres --mode 1777 /var/lib/postgresql # buildkit
                        
# 2025-08-11 08:00:00  74.81MB 
# debian.sh --arch 'amd64' out/ 'bookworm' '@1754870400'
                        
                    

镜像信息

{
    "Id": "sha256:60dbe63eb1a54216554bf772653ca24cf9fe2ad01f3f50c301d2a9826dcb739f",
    "RepoTags": [
        "ghcr.io/cloudnative-pg/postgresql:17-bookworm",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql:17-bookworm"
    ],
    "RepoDigests": [
        "ghcr.io/cloudnative-pg/postgresql@sha256:184f7535266f17ba0c7afc55bce137ee03b1685a8d79cdc9800f0506a96799f7",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cloudnative-pg/postgresql@sha256:78b028841346c1aedcbe0d4928b9ee61a6460cb6d2b94fabfc3397225a89193d"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2025-09-01T15:33:29.166851759Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "26",
        "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/17/bin",
            "GOSU_VERSION=1.17",
            "LANG=en_US.utf8",
            "PG_MAJOR=17",
            "PG_VERSION=17.6-1.pgdg12+1",
            "PGDATA=/var/lib/postgresql/data"
        ],
        "Cmd": [
            "postgres"
        ],
        "Image": "",
        "Volumes": {
            "/var/lib/postgresql/data": {}
        },
        "WorkingDir": "",
        "Entrypoint": [
            "docker-entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "description": "This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.",
            "name": "PostgreSQL Container Images",
            "org.opencontainers.image.description": "This Docker image contains PostgreSQL and Barman Cloud based on Postgres 17.6-bookworm.",
            "release": "4",
            "summary": "PostgreSQL Container images.",
            "vendor": "The CloudNativePG Contributors",
            "version": "17.6-1.pgdg12+1"
        },
        "StopSignal": "SIGINT"
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 651756552,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/04cad22f710f4f6be29d1f5ba968013c0eecf07b52dabbcd451378b85ed0d1e3/diff:/var/lib/docker/overlay2/bf28bd474cfb9c5e70ebac46848b1487dbd93c8a39c10231058a4eddb0867ba5/diff:/var/lib/docker/overlay2/721e42479e8689b2a5834fc0f63a9268db4842e4e48e26c1bd7b2c4fb8eef330/diff:/var/lib/docker/overlay2/c2273b3bd123d8a8e183d99f8984fb4ee72a0708ee934f0cb2cf05e8dc99e252/diff:/var/lib/docker/overlay2/62c9ef0088ea460dd63ec9fc449c994809b3039e181abc8de29ed83d30ab59b1/diff:/var/lib/docker/overlay2/6a6d053817b5db061019cf98b662ff965a08eb20f6c31b6ee62bc74ab732d5c2/diff:/var/lib/docker/overlay2/6b010c0667bd8388c7217e212cdcf3ea28e47c9f8f5097062c0baaa9198c5588/diff:/var/lib/docker/overlay2/2f3a027eaaacc36ccce242669a7bb27f80122d3c851f2e119f728bfe2a2e76b7/diff:/var/lib/docker/overlay2/59e6d162c7924f4ab25f377390153791845757ef1b7714e0396a4a7aaebf8107/diff:/var/lib/docker/overlay2/ba51a8e92b026dafefd574ab423490a713c0f6e70c9b08310cef141a3f5235af/diff:/var/lib/docker/overlay2/59d331dd352d8d571f2885f26dfed665b501762c3a1eaefe2265320266a85b24/diff:/var/lib/docker/overlay2/5ad2a9d4509209214f988c30aaba50f2589aefb3d0bceb522fba15774c28a034/diff:/var/lib/docker/overlay2/0bfcd687260370afa0948e36a79f83c3b04dd28fd45a9291e342a68282b75a02/diff:/var/lib/docker/overlay2/8a30e49d1dca546f5afac4f47ac447225dd41d0356ed3cf52553f542064af9b3/diff:/var/lib/docker/overlay2/cb2cb550dfd65269f64bb765191eb5b39674b1002ae7a9acc6db0cdf6e8db5e5/diff:/var/lib/docker/overlay2/36b96ac4f5b97a4116b5c1e61eb1f0b4f8b0ca960650d668f1a6b9f711d7dc09/diff:/var/lib/docker/overlay2/290eb6ac57e6dfc054ed31dd0ef054e499c396af9d5cbcb44bb77944ae96e92d/diff",
            "MergedDir": "/var/lib/docker/overlay2/0eeda21061d7d1031bfaca3f902b3f6dbffd52814342a66904cdccba95b8edb4/merged",
            "UpperDir": "/var/lib/docker/overlay2/0eeda21061d7d1031bfaca3f902b3f6dbffd52814342a66904cdccba95b8edb4/diff",
            "WorkDir": "/var/lib/docker/overlay2/0eeda21061d7d1031bfaca3f902b3f6dbffd52814342a66904cdccba95b8edb4/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:eb5f13bce9936c760b9fa73aeb1b608787daa36106cc888104132e353ed37252",
            "sha256:dc6969b468050d7d28c0c8a018f47263496b7a10c90597af467bbaa65f10cec4",
            "sha256:60868fa055b6cf4a06233a38055f3279377f2d2f65223cf39a7eea2309cc3271",
            "sha256:ffb1fe023b42a4b59f138f78fb8f1e5faffeb6829ed5b1a5babf98869c35b805",
            "sha256:0545742c3c8eec7a8cd3b90b08ec0ebcfb375666d8a4aefd5ea9d511ebf9ae14",
            "sha256:42b2038a449279a0cd712a33ece54bd0a36c30b6c32b5a623e0f337b31e57b98",
            "sha256:eafdacd0d90ec061ec8fb7a62694dcb89c78d4dba07cad53000f123f6e755f57",
            "sha256:2774749831e7b72f4cad03b5003979934c588849eeb9c3f19d7accac3521fea8",
            "sha256:48a81e9fe91d3dc857d332b11d91052201a536bb25edef7d3370b031c458c5de",
            "sha256:fe7c0ed57564d6dd7a6010be3603627bd7b1b65ab72b8e96f8a891c089d8c0e5",
            "sha256:9c2892567c8771582778b868f8a6cf6147e29224d59c12e9105ebd4aaaf5c864",
            "sha256:d2d2cb2e48e8e65504553a6bbaa517175b27f6b2fe5e452c6d84d7c84ea72b74",
            "sha256:2f37a0c331fd66ee782382d69fc7b59c2471a7f89a4f364e9196dc01d2305648",
            "sha256:64afc3c40f500702953caa0fdeb2010f09d40060a37052b4d45100a34db4aff0",
            "sha256:c8e1203825c412d5e3b78ef8080a9ee30dd004195817ccc99b2d5381a7284b21",
            "sha256:dde51c66cdfafd991331bb61cbee008839b7bfb9edbe592018497fb357058226",
            "sha256:e1b039e66bf8a3a0739e2ba3868c5af8729c2ba1320286a9c0879755290292e9",
            "sha256:7652f3849d8047f864fd427cb0069ed85a617467e6ad7fa50d98942abf930d3a"
        ]
    },
    "Metadata": {
        "LastTagTime": "2025-09-02T02:13:41.827250754+08:00"
    }
}

更多版本

ghcr.io/cloudnative-pg/postgresql:15

linux/amd64 ghcr.io610.35MB2025-05-06 09:53
384

ghcr.io/cloudnative-pg/postgresql:17-bookworm

linux/amd64 ghcr.io651.76MB2025-09-02 02:13
12