postgresql-advanced
Postgresql-Advanced Overview
Secure your stack with a hardened Postgres image freshly-built by Minimus. Minimus images always include the most up-to-date package version for all packages and dependencies.
Use this image to set up a database server to store and retrieve data securely whenever an extensible, object-relational database is needed.
About Minimus Advanced Images
Minimus Advanced images are designed to be deployed in Kubernetes, often with Helm charts. Advanced images add operational tooling including pre-configured environment variables, lifecycle hooks (pre-start, post-start, shutdown), and helper scripts, so you can deploy and manage applications with minimal manual setup.
Try It Out
Postgresql-Advanced can be deployed via Helm charts. See the related charts tab to get started.
Once installed, verify PostgreSQL is running. To check that the pod was successfully created run:
kubectl get pods -n postgresql-advanced -l app.kubernetes.io/name=postgresqlYou should see output similar to:
NAME READY STATUS RESTARTS AGE
my-postgresql-advanced-0 2/2 Running 0 2mThe Pod contains:
-
Postgresql as the main database container.
-
Metrics as the metrics exporter (only if metrics.enabled=true).
If volumePermissions.enabled=true (default in hardened charts), an init container will be used but will not appear in the READY count:
init-chmod-data => reg.mini.dev/os-shell-advanced:latest
You can now test the database connection to verify PostgreSQL is accepting connections.
Get the PostgreSQL password from the secret:
kubectl get secret my-postgresql-advanced -n postgresql-advanced -o jsonpath='{.data.postgres-password}' | base64 -dConnect to PostgreSQL using port-forwarding:
kubectl port-forward svc/my-postgresql-advanced 5432:5432 -n postgresql-advancedIn another terminal, test the connection:
PGPASSWORD=<password> psql -h localhost -U postgres -d postgresYou should be able to run SQL commands:
SELECT version();If you see the PostgreSQL version, the deployment is fully operational.
Technical Considerations
The Postgres-Advanced image provided by Minimus is a slim, security-hardened alternative to the public image. The images are largely interchangeable, with a few differences as noted below.
Postgres-Advanced built by Minimus:
- The Postgres process runs as nonroot. Note that the entrypoint script runs as root as it requires permissions to set up the environment for the Postgres process. The user is then changed to postgres before running the actual postgres process. The public image runs as root.
- Drill down on the version specification tab to see the default user, listening ports, entrypoint, volumes, environment variables, etc.
The Payoff
A hardened, minimal image that will remain more secure for the long run and accrue vulnerabilities at a slower rate.
- See the risk reduction dashboard for a detailed CVE comparison over the past 30 days.
- Review the compliance report to see the default hardening and security configurations for the image.
Terms & Info
Trademark
This catalog is published by Minimus. All product names, logos, and marks, other than those belonging to Minimus, shown are owned by their respective rights holders and appear here only to identify the open source software each image contains. Minimus claims no ownership of those marks and implies no affiliation with, endorsement by, certification by, or sponsorship by any rights holder.
Disclaimer
Images are provided "as-is" without warranty of any kind. "Hardened" refers to the security configuration applied at the time of build and does not constitute a guarantee of ongoing security or absence of vulnerabilities. The free tier is provided without support, SLA, or guaranteed patching timelines. Security updates may be applied to paid subscriptions before or instead of free tier images. By pulling or using any image you agree to our Terms of Use.