Resources
3Install
npx skillscat add pluginagentmarketplace/custom-plugin-postgresql/postgresql-docker Install via the SkillsCat registry.
About this skill
This skill provides configuration templates and deployment patterns for running PostgreSQL in Docker, Docker Compose, and Kubernetes environments. It addresses the need for reproducible, production-ready containerized database setups with proper resource limits, health checks, and persistent storage. Developers and agents should use it when containerizing PostgreSQL for development, staging, or production deployments.
SKILL.md
PostgreSQL Docker Skill
Atomic skill for containerized PostgreSQL
Overview
Production-ready patterns for Docker and Kubernetes PostgreSQL deployments.
Prerequisites
- Docker or Kubernetes
- Understanding of volumes
- Resource planning
Parameters
parameters:
platform:
type: string
required: true
enum: [docker, kubernetes, compose]
environment:
type: string
enum: [development, staging, production]Quick Reference
Docker Compose
version: '3.8'
services:
postgres:
image: postgres:16-alpine
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready"]
interval: 10s
deploy:
resources:
limits:
memory: 4G
command:
- postgres
- -c
- shared_buffers=1GB
- -c
- max_connections=200
volumes:
postgres_data:Kubernetes StatefulSet
apiVersion: apps/v1
kind: StatefulSet
spec:
template:
spec:
containers:
- name: postgres
image: postgres:16
resources:
limits:
memory: "4Gi"
readinessProbe:
exec:
command: ["pg_isready"]
volumeMounts:
- name: data
mountPath: /var/lib/postgresql/dataConfiguration Tips
# Pass config via command
postgres -c shared_buffers=1GB -c work_mem=64MB
# Use init scripts
./init.sql -> /docker-entrypoint-initdb.d/Resource Guidelines
| Workload | Memory | CPU |
|---|---|---|
| Dev | 512MB | 0.5 |
| Staging | 2GB | 1 |
| Production | 4GB+ | 2+ |
Troubleshooting
| Problem | Cause | Solution |
|---|---|---|
| OOM killed | Low memory limit | Increase limits |
| Slow startup | No init cache | Use pg_prewarm |
| Data loss | No volume | Mount persistent volume |
Usage
Skill("postgresql-docker")