Agent skill · software engineering · sickn33

odoo-docker-deployment

Production-ready Docker and docker-compose setup for Odoo with PostgreSQL, persistent volumes, environment-based configuration, and Nginx reverse proxy.

Why this skill is useful

Provides a complete Docker setup for Odoo with PostgreSQL, including environment configurations and best practices that are not commonly known.

What it needs

Requires docker, docker-compose installed locally. About 3k tokens when loaded. Last updated 2026-08-07. 44,571 stars on the source repository.

What this skill does

Odoo Docker Deployment Overview This skill provides a complete, production-ready Docker setup for Odoo, including PostgreSQL, persistent file storage, environment variable configuration, and an optional Nginx reverse proxy with SSL. It covers both development and production configurations. When to Use This Skill Spinning up a local Odoo development environment with Docker. Deploying Odoo to a VPS or cloud server (AWS, DigitalOcean, etc.). Troubleshooting Odoo container startup failures or database connection errors. Adding a reverse proxy with SSL to an existing Odoo Docker setup. How It Works 1. Activate: Mention @odoo-docker-deployment and describe your deployment scenario. 2. Generate: Receive a complete docker-compose.yml and odoo.conf ready to run. 3. Debug: Describe your container error and get a diagnosis with a fix. Examples Example 1: Production docker-compose.yml Example 2: odoo.conf Example 3: Common Commands Best Practices ✅ Do: Store all secrets in a .env file and reference them with ${VAR} — never hardcode passwords in docker-compose.yml. ✅ Do: Use dependson: condition: servicehealthy with a PostgreSQL healthcheck to prevent Odoo starting before the DB is ready. ✅ Do: Put Nginx in front of Odoo for SSL termination (Let's Encrypt / Certbot) — never expose Odoo directly on port 80/443. ✅ Do: Set workers = (CPU cores × 2) + 1 in odoo.conf — workers = 0 uses single-threaded mode and blocks all users. ❌ Don't: Expose port 5432 (PostgreSQL) to the public internet — keep it on the internal Docker network only. ❌ Don't: Use the latest or 17 Docker image tags in production — always pin to a specific patch-level tag (e.g., odoo:17.0). ❌ Don't: Mount odoo.conf and rely on it for secrets in CI/CD — use Docker secrets or environment variables instead. Limitations This skill covers self-hosted Docker deployments — Odoo.sh (cloud-managed hosting) has a completely different deployment model. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills sickn33/odoo-docker-deployment

View the source on GitHub

Browse the @skills marketplace