Skip to main content
Version: 1.25

Container Image Requirements

The CloudNativePG operator for Kubernetes is designed to work with any compatible container image of PostgreSQL that complies with the following requirements:

  • PostgreSQL executables that must be in the path:
    • initdb
    • postgres
    • pg_ctl
    • pg_controldata
    • pg_basebackup
  • Barman Cloud executables that must be in the path:
    • barman-cloud-backup
    • barman-cloud-backup-delete
    • barman-cloud-backup-list
    • barman-cloud-check-wal-archive
    • barman-cloud-restore
    • barman-cloud-wal-archive
    • barman-cloud-wal-restore
  • PGAudit extension installed (optional - only if PGAudit is required in the deployed clusters)
  • Appropriate locale settings
  • du (optional, for kubectl cnpg status)

No entry point and/or command is required in the image definition, as CloudNativePG overrides it with its instance manager.

warning

Application Container Images will be used by CloudNativePG in a Primary with multiple/optional Hot Standby Servers Architecture only.

The CloudNativePG community provides and supports public PostgreSQL container images that work with CloudNativePG, and publishes them on ghcr.io.

Image Tag Requirements​

To ensure the operator makes informed decisions, it must accurately detect the PostgreSQL major version. This detection can occur in two ways:

  1. Utilizing the major field of the imageCatalogRef, if defined.
  2. Auto-detecting the major version from the image tag of the imageName if not explicitly specified.

For auto-detection to work, the image tag must adhere to a specific format. It should commence with a valid PostgreSQL major version number (e.g., 15.6 or 16), optionally followed by a dot and the patch level.

Following this, the tag can include any character combination valid and accepted in a Docker tag, preceded by a dot, an underscore, or a minus sign.

Examples of accepted image tags:

  • 12.1
  • 13.3.2.1-1
  • 13.4
  • 14
  • 15.5-10
  • 16.0
warning

latest is not considered a valid tag for the image.

note

Image tag requirements do not apply for images defined in a catalog.