AgentStack
SKILL verified MIT Self-run

Odoo Docker

skill-ahmed-lakosha-odoo-plugins-odoo-docker · by ahmed-lakosha

|

No reviews yet
0 installs
10 views
0.0% view→install

Install

$ agentstack add skill-ahmed-lakosha-odoo-plugins-odoo-docker

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Odoo Docker? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Odoo Docker Infrastructure Skill

1. Overview

Docker infrastructure and deployment expert for multi-version Odoo Enterprise environments. Handles production deployment, nginx configuration, CI/CD pipelines, performance tuning, security hardening, and container troubleshooting.

> v2.1: Nginx config, debugging, and performance tuning are handled via natural language. > For project init, compose generation, deployment, and builds, use /odoo-docker sub-commands.

What This Skill Does

  • Production Deployment: docker-compose with nginx, SSL, PostgreSQL tuning, resource limits, warm-up
  • CI/CD Pipelines: Build and push multi-version Docker images via GitHub Actions
  • Performance Tuning: Data-driven recommendations from real stress tests
  • Nginx Configuration: Optimized configs with gzip (90% CSS reduction), WebSocket, asset caching
  • Container Debugging: Systematic troubleshooting using known issue patterns
  • Project Setup: Auto-detect Odoo version, scan modules, generate all configs + IDE integration
  • Compose Generation: Smart compose for dev/staging/production scenarios
  • Image Management: Build, tag, push images for Odoo 14-19 (amd64 + arm64)

When to Use This Skill vs odoo-service

| Use odoo-service for... | Use odoo-docker for... | |---|---| | Starting/stopping servers | Deploying to production | | Basic docker up/down/logs | Configuring nginx reverse proxy | | Database backup/restore | CI/CD pipeline setup | | IDE configuration | Performance analysis & tuning | | Environment initialization | Container debugging & troubleshooting | | Module install/update | Building & pushing Docker images |

Natural Language Triggers

  • "deploy to production", "production docker setup", "deploy odoo with nginx"
  • "configure nginx for odoo", "add reverse proxy", "enable gzip"
  • "optimize docker performance", "slow containers", "tune workers"
  • "build docker image", "push to docker hub", "ci/cd pipeline"
  • "container won't start", "500 errors in docker", "debug container"
  • "set up docker for this project", "initialize docker environment"
  • "generate docker-compose", "create compose file"

2. User Configuration

Users can customize this plugin by creating ~/.claude/odoo-docker.local.md with YAML frontmatter. See odoo-docker.local.md.example in the plugin root for the full template.

Key settings:

  • image_prefix: Docker Hub org/image prefix (default: myorg/odoo)
  • default_version: Default Odoo version when not auto-detected (default: 17)
  • git_org: GitHub organization for source clone suggestions

When generating configs, check for user overrides in .local.md first. If not found, use template defaults and prompt the user for their image prefix on first use.


3. Architecture

Core Principle: Source Mounted, Not Baked

Docker Hub:  {image_prefix}:19.0-enterprise   (pre-built base image)

Workspace:
  sources/odoo-19/           Many containers. No rebuilding per project.

Key Design Decisions

  1. Source code is NOT baked into the image — mounted at runtime via Docker volumes (read-only)
  2. Two deployment models: Standalone workspaces (per-version Dockerfile) and centralized workspace (pre-built images from Docker Hub)
  3. Container isolation: Each project gets its own Docker network, named volumes, port mappings

Container Directory Structure

/opt/odoo/source/                       # Start containers
./scripts/start.sh  --dev      # Start with auto-reload
./scripts/stop.sh              # Stop containers
./scripts/logs.sh              # Odoo logs
./scripts/shell.sh  19         # Bash into container

Running Multiple Projects

Assign unique ports per project in .env:

RELIEF_CENTER_HTTP_PORT=8069
SOQYA_HTTP_PORT=8169
TAQAT_HTTP_PORT=8269

13. Database Management in Docker

Create Database via API

curl -s -X POST http://localhost:8069/web/database/create \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"call","params":{"master_pwd":"changeme","name":"my_db","lang":"en_US","password":"admin","login":"admin"}}'

Access from Host

psql -h localhost -p 5433 -U odoo -d my_database

Backup and Restore

docker exec {db_container} pg_dump -U odoo my_database > backup.sql
docker exec -i {db_container} psql -U odoo -d my_database < backup.sql

14. Debugging & Development

Dev Mode

DEV_MODE=1 docker compose up -d

Remote Debugger (debugpy)

  1. Set ENABLE_DEBUGGER=1 in .env
  2. Expose port 5678:5678 in docker-compose
  3. Container waits for IDE attach
  4. VS Code config:
{
  "name": "Attach to Odoo Docker",
  "type": "debugpy",
  "request": "attach",
  "connect": { "host": "localhost", "port": 5678 },
  "pathMappings": [
    { "localRoot": "${workspaceFolder}", "remoteRoot": "/opt/odoo/source" }
  ]
}

Module Management Inside Container

python -m odoo -c /etc/odoo/odoo.conf -d {db} -u {module} --stop-after-init
python -m odoo -c /etc/odoo/odoo.conf -d {db} -i {module} --stop-after-init

15. Troubleshooting

For the full troubleshooting reference with all known issue patterns and diagnostic commands, read ${CLAUDE_PLUGIN_ROOT}/reference/troubleshooting.md.

For performance-related patterns and lessons learned from stress tests, read ${CLAUDE_PLUGIN_ROOT}/reference/docker-patterns.md.

For the production deployment checklist, read ${CLAUDE_PLUGIN_ROOT}/reference/production-checklist.md.


16. Quick Command Reference

# Build local image
docker compose build

# Pull pre-built image
docker pull {image_prefix}:19.0-enterprise

# Start / Stop
docker compose up -d
docker compose down

# Logs / Shell
docker compose logs -f odoo
docker compose exec odoo bash

# Module update inside container
python -m odoo -c /etc/odoo/odoo.conf -d {db} -u {module} --stop-after-init

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.