Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)48 mil · #3722

odoo-docker-deployment

Faz seu agente configurar o Odoo usando Docker para produção. Ele gerencia o banco de dados, os arquivos e a rede de forma segura.

O que ela faz

Esta ferramenta ajuda a configurar o Odoo para rodar em containers (Docker). Ela cria os arquivos necessários para que o Odoo e o banco de dados funcionem juntos de forma segura e eficiente.

Quando usar

  • ✓Configurar um ambiente de teste do Odoo no seu computador.
  • ✓Colocar o Odoo para funcionar em um servidor na internet.
  • ✓Resolver problemas quando o Odoo não inicia ou não se conecta ao banco de dados.

Exemplo do que pedir para a IA

“Configure o Odoo para produção em um servidor.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/odoo-docker-deployment/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/odoo-docker-deployment/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você descreve o que precisa, e a ferramenta gera os arquivos de configuração do Docker. Depois, você usa comandos simples para iniciar, parar ou ver os logs do Odoo.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill odoo-docker-deployment

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/odoo-docker-deployment/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Implantação do Odoo com Docker

Visão Geral

Esta habilidade fornece uma configuração Docker completa e pronta para produção para o Odoo, incluindo PostgreSQL, armazenamento persistente de arquivos, configuração de variáveis de ambiente e um proxy reverso Nginx opcional com SSL. Ela abrange configurações de desenvolvimento e produção.

Quando Usar Esta Habilidade

  • Para iniciar um ambiente de desenvolvimento Odoo local com Docker.
  • Para implantar o Odoo em um VPS ou servidor em nuvem (AWS, DigitalOcean, etc.).
  • Para solucionar falhas na inicialização de contêineres do Odoo ou erros de conexão com o banco de dados.
  • Para adicionar um proxy reverso com SSL a uma configuração Docker do Odoo existente.

Como Funciona

  1. Ativar: Mencione @odoo-docker-deployment e descreva seu cenário de implantação.
  2. Gerar: Receba um docker-compose.yml e odoo.conf completos, prontos para serem executados.
  3. Depurar: Descreva o erro do seu contêiner e receba um diagnóstico com uma correção.

Exemplos

Exemplo 1: docker-compose.yml de Produção

# Note: The top-level 'version' key is deprecated in Docker Compose v2+
# and can be safely omitted. Remove it to avoid warnings.

services:
  db:
    image: postgres:15
    restart: always
    environment:
      POSTGRES_DB: odoo
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - postgres-data:/var/lib/postgresql/data
    networks:
      - odoo-net

  odoo:
    image: odoo:17.0
    restart: always
    depends_on:
      db:
        condition: service_healthy
    ports:
      - "8069:8069"
      - "8072:8072"   # Longpolling for live chat / bus
    environment:
      HOST: db
      USER: odoo
      PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./addons:/mnt/extra-addons   # Custom modules
      - ./odoo.conf:/etc/odoo/odoo.conf
    networks:
      - odoo-net

volumes:
  postgres-data:
  odoo-web-data:

networks:
  odoo-net:

Exemplo 2: odoo.conf

[options]
admin_passwd = ${ODOO_MASTER_PASSWORD}    ; set via env or .env file
db_host = db
db_port = 5432
db_user = odoo
db_password = ${POSTGRES_PASSWORD}        ; set via env or .env file

; addons_path inside the official Odoo Docker image (Debian-based)
addons_path = /mnt/extra-addons,/usr/lib/python3/dist-packages/odoo/addons

logfile = /var/log/odoo/odoo.log
log_level = warn

; Worker tuning for a 4-core / 8GB server:
workers = 9                ; (CPU cores × 2) + 1
max_cron_threads = 2
limit_memory_soft = 1610612736   ; 1.5 GB — soft kill threshold
limit_memory_hard = 2147483648   ; 2.0 GB — hard kill threshold
limit_time_cpu = 600
limit_time_real = 1200
limit_request = 8192

Exemplo 3: Comandos Comuns

# Start all services in background
docker compose up -d

# Stream Odoo logs in real time
docker compose logs -f odoo

# Restart Odoo only (not DB — avoids data risk)
docker compose restart odoo

# Stop all services
docker compose down

# Backup the database to a local SQL dump
docker compose exec db pg_dump -U odoo odoo > backup_$(date +%Y%m%d).sql

# Update a custom module without restarting the server
docker compose exec odoo odoo -d odoo --update my_module --stop-after-init

Melhores Práticas

  • ✅ Fazer: Armazene todos os segredos em um arquivo .env e referencie-os com ${VAR} — nunca codifique senhas em docker-compose.yml.
  • ✅ Fazer: Use depends_on: condition: service_healthy com um healthcheck do PostgreSQL para evitar que o Odoo inicie antes que o banco de dados esteja pronto.
  • ✅ Fazer: Coloque o Nginx na frente do Odoo para terminação SSL (Let's Encrypt / Certbot) — nunca exponha o Odoo diretamente nas portas 80/443.
  • ✅ Fazer: Defina workers = (CPU cores × 2) + 1 em odoo.conf — workers = 0 usa o modo single-threaded e bloqueia todos os usuários.
  • ❌ Não Fazer: Exponha a porta 5432 (PostgreSQL) para a internet pública — mantenha-a apenas na rede interna do Docker.
  • ❌ Não Fazer: Use as tags de imagem Docker latest ou 17 em produção — sempre fixe em uma tag de nível de patch específica (por exemplo, odoo:17.0).
  • ❌ Não Fazer: Monte odoo.conf e confie nele para segredos em CI/CD — use segredos do Docker ou variáveis de ambiente em vez disso.

Limitações

  • Esta habilidade cobre implantações Docker auto-hospedadas — Odoo.sh (hospedagem gerenciada em nuvem) tem um modelo de implantação completamente diferente.
  • Escalabilidade horizontal (múltiplos contêineres Odoo atrás de um balanceador de carga) requer um filestore compartilhado (NFS ou armazenamento compatível com S3) não coberto aqui.

…

Perguntas frequentes

O que é Docker?

Docker é um programa que permite rodar outros programas (como o Odoo) em 'caixas' isoladas chamadas containers. Isso facilita a instalação e evita conflitos.

O que é `docker-compose.yml`?

É um arquivo que descreve como vários containers (neste caso, Odoo e o banco de dados) devem funcionar juntos. Ele define as configurações, redes e volumes.

Por que usar Nginx?

O Nginx atua como um porteiro na frente do Odoo, gerenciando o acesso, adicionando segurança (como certificados SSL para HTTPS) e distribuindo o tráfego.

Detalhes

Descrição original do autor

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

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3722
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas