cimg/postgres pulls statistics
By cimg (24 listings) · Docker Hub · Databases & storage
cimg/postgres has 837,922,240 recorded pulls on Docker Hub, ranking #13 of 1,265 tracked listings.
About cimg/postgres
This image is designed to supercede the legacy CircleCI PostgreSQL image, circleci/postgres.
cimg/postgres is a Docker image created by CircleCI with continuous integration builds in mind.
Table of Contents
Getting Started
This image can be used with the CircleCI docker executor as a secondary image.
For example:
jobs:
build:
docker:
- image: cimg/go:1.17
- image: cimg/postgres:13.2
steps:
- checkout
In the above example, the CircleCI Go Docker image is used for the primary container while the PostgreSQL image is used as a secondary.
More specifically, the tag 13.2 is used meaning the version of PostgreSQL will be v13.2.
You can now connect to a PostgreSQL instance from the primary image within the steps for this job.
How This Image Works
This image contains the PostgreSQL database and its complete toolchain.
Variants
Variant images typically contain the same base software, but with a few additional modifications.
PostGIS
The PostGIS variant is the same PostgreSQL image but with PostGIS (and its several dependencies) pre-installed.
The PostGIS variant can be used by appending -postgis to the end of an existing cimg/postgres tag.
jobs:
build:
docker:
- image: cimg/go:1.17
- image: cimg/postgres:13.1-postgis
steps:
- checkout
- run: echo "Do things"
RAM
The legacy version of this image, circleci/postgres had a RAM variant.
This is no longer the case.
We're determining how much of a performance increase does this variant actually give before we decide to bring it back.
If you used the legacy PostgreSQL image and you have data on the ram vs non-ram variant build times, please open a GitHub Issue and let us know.
Tagging Scheme
This image has the following tagging scheme:
cimg/postgres:<pg-version>
<pg-version> - The version of PostgreSQL to use.
Development
Images can be built and run locally with this repository. This has the following requirements:
- local machine of Linux (Ubuntu tested) or macOS
- modern version of Bash (v4+)
- modern version of Docker Engine (v19.03+)
Cloning For Community Users (no write access to this repository)
Fork this repository on GitHub.
When you get your clone URL, you'll want to add --recurse-submodules to the clone command in order to populate the Git submodule contained in this repo.
It would look something like this:
git clone --recurse-submodules <my-clone-url>
If you missed this step and already cloned, you can just run git submodule update --recursive to populate the submodule.
Then you can optionally add this repo as an upstream to your own:
git remote add upstream https://github.com/CircleCI-Public/cimg-postgres.git
Cloning For Maintainers ( you have write access to this repository)
Clone the project with the following command so that you populate the submodule:
git clone --recurse-submodules git@github.com:CircleCI-Public/cimg-postgres.git
Generating Dockerfiles
Dockerfiles can be generated for a specific PostgreSQL version using the gen-dockerfiles.sh script.
For example, to generate the Dockerfile for v13.2, you would run the following from the root of the repo:
./shared/gen-dockerfiles.sh 13.2
The generated Dockerfile will be located at ./13.2/Dockefile.
To build this image locally and try it out, you can run the following:
cd 13.2
docker build -t test/postgres:13.2 .
docker run -it test/postgres:13.2 bash
Building the Dockerfiles
To build the Docker images locally as this repository does, you'll want to run the build-images.sh script:
./build-images.sh
This would need to be run after generating the Dockerfiles first. When releasing proper images for CircleCI, this script is run from a CircleCI pipeline and not locally.
Publishing Official Images (for Maintainers only)
The individual scripts (above) can be used to create the correct files for an image, and then added to a new git branch, committed, etc. A release script is included to make this process easier. To make a proper release for this image, let's use the fake PostgreSQL version of v9.99, you would run the following from the repo root:
./shared/release.sh 9.99
```…
Description from the Docker Hub listing.
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Listing placement
Listing placement
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Pulls on a linear scale. Placement is projected from pulls, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (6)Similar Docker Hub Databases & storage plugins
All 20 cimg/postgres alternativesData source
Cumulative pull counts and stars come from the public Docker Hub API. Pulls count image downloads (including automated CI pulls), not installs or users.
Listing: https://hub.docker.com/r/cimg/postgres. First seen Oct 16, 2026; last successful collection Oct 21, 2026. See the methodology.