Files
computer-playbook/roles/svc-db-postgres
kevinveenbirkenbachandClaude Opus 4.8 01124a3238 fix(svc-db-postgres): run the readiness probe on the node hosting postgres
The probe execs into the postgres container, but the old container
address resolved the id on the local node only, so it failed with 'No
such container' whenever swarm scheduled postgres on a worker instead of
the primary. Resolve the hosting node and container id via
resolve_host_cid and delegate the probe there. Compose resolves to the
local host and container name, so it is byte-identical to before.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 21:41:43 +02:00
..

PostgreSQL

Description

This Ansible role deploys and configures a PostgreSQL database in a Docker container using Docker Compose. It is designed to simplify database administration by automating the creation of networks, containers, and essential database tasks (such as database and user creation) for a secure and high-performance environment.

Overview

Built for environments that demand reliability and ease of management, this role:

  • Sets up a dedicated Docker network for PostgreSQL.
  • Deploys a PostgreSQL container with secure configurations and automated healthchecks.
  • Automates tasks like database creation, user setup, and privilege assignments to streamline your workflows.

Purpose

The purpose of this role is to provide an effortless way to deploy a PostgreSQL database via Docker. It minimizes manual interventions while ensuring that your database is configured securely and reliably for both production and development scenarios.

Features

  • Automated Deployment: Installs PostgreSQL with minimal manual steps.
  • Robust Administration: Automatically creates databases, users, and assigns privileges.
  • Enhanced Security: The service is bound to 127.0.0.1:5432, restricting access and enhancing security.
  • Seamless Docker Integration: Works harmoniously with Docker Compose and other roles in your infrastructure.

Credits

Implemented by Kevin Veen-Birkenbach. Part of the Infinito.Nexus Project and maintained by Kevin Veen-Birkenbach. Licensed under the Infinito.Nexus Community License (Non-Commercial).