Answer By Perplexity

To install Odoo with Docker Compose and implement reliable backup/restore solutions, follow this structured approach:


Docker Compose Installation

Use this docker-compose.yml configuration to deploy Odoo 15 with PostgreSQL 13 ([1]):

version: '3.8'
services:
  web:
    image: odoo:15.0
    depends_on:
      db:
        condition: service_healthy
    ports:
      - "8069:8069"
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./config/odoo.conf:/etc/odoo/odoo.conf
      - ./addons:/mnt/extra-addons
    networks:
      - odoo-net

  db:
    image: postgres:13
    environment:
      POSTGRES_DB: odoo
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: yourstrongpassword
    volumes:
      - odoo-db-data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U odoo"]
    networks:
      - odoo-net

volumes:
  odoo-web-data:
  odoo-db-data:

networks:
  odoo-net:
    driver: bridge

Key components:

  • Persistent volumes for Odoo data (odoo-web-data) and PostgreSQL (odoo-db-data)
  • Custom addons directory mounted at /mnt/extra-addons
  • Health checks for database readiness

Start with:

docker compose up -d

Backup Solutions

1. Native Volume Backups

Backup these critical directories ([1][7]):

  • Database: PostgreSQL data in odoo-db-data volume
  • Filestore: Odoo attachments in odoo-web-data volume
  • Customizations: ./addons directory (local mount)

Use standard Docker volume backup tools like:

docker run --rm -v odoo-web-data:/source busybox tar czf /backup/odoo-web-$(date +%Y%m%d).tar.gz -C /source .

2. Automated Backup Tool

Use jobiols/odoo-backup for integrated backups ([2]):

Backup:

docker run --rm \
  --link odoo-db:db \
  -v /backups:/backup \
  -e DBNAME=odoo \
  jobiols/odoo-backup backup

Restore:

docker run --rm \
  --link odoo-db:db \
  -v /backups:/backup \
  -e NEW_DBNAME=odoo_restored \
  -e DATE=20250316 \
  jobiols/odoo-backup restore

3. Cloud Backups (Optional)

For Google Drive integration, use Niivii/odoo-docker-backup ([5]):

docker run -d \
  -e ODOO_URL=http://odoo:8069 \
  -e ODOO_PASSWORD=adminpass \
  -e DB_NAME=odoo \
  -v google-drive-creds:/root/backups \
  niivii/odoo-docker-backup

Restore Best Practices

  1. Test backups regularly - Restoration failures often stem from untested backups ([4])
  2. Use pg_dump for PostgreSQL ([7]):
    docker exec odoo-db pg_dump -U odoo odoo > odoo_backup.sql
  3. Match versions - Ensure Odoo and PostgreSQL versions match between backup/restore environments

This setup provides enterprise-grade resilience with minimal maintenance overhead. For small deployments, native volume backups suffice, while larger installations benefit from automated tools like jobiols/odoo-backup.

Citations: [1] https://www.hostinger.com/tutorials/odoo-docker [2] https://github.com/jobiols/docker-odoo-backup [3] https://apps.odoo.com/apps/modules/17.0/auto_database_backup [4] https://www.odoo.com/forum/help-1/odoo-13-on-docker-restoring-backup-always-fails-167289 [5] https://github.com/Niivii/odoo-docker-backup [6] https://www.odoo.com/forum/help-1/how-do-i-backup-167966 [7] https://www.odoo.com/forum/help-1/odoo-14-community-how-can-i-backup-odoo-files-postgres-data-177650 [8] https://www.odoo.com/forum/help-1/how-to-restore-4gb-db-to-odoo-14-in-docker-191113 [9] https://forums.docker.com/t/first-time-using-docker-how-to-backup-odoo-14-0-20201002-community-edition-postgres-installed-in-a-synology-nas/99543 [10] https://www.odoo.com/forum/help-1/trouble-setting-up-docker-compose-for-odoo-18-267085 [11] https://github.com/minhng92/odoo-14-docker-compose [12] https://www.youtube.com/watch?v=NSWkwNuRFGI [13] https://github.com/twtrubiks/odoo-docker-tutorial [14] https://www.odoo.com/forum/getting-started-3/odoo-18-docker-image-263687 [15] https://hub.docker.com/_/odoo [16] https://www.odoo.com/forum/help-1/how-to-set-up-odoo-community-on-docker-250199 [17] https://apps.odoo.com/apps/modules/14.0/wk_backup_restore [18] https://fairchanceforcrm.com/how-to-copy-odoo-docker-with-database/ [19] https://www.odoo.com/forum/help-1/odoo-10-docker-export-and-import-data-114339 [20] https://www.odoo.com/forum/help-1/how-to-restore-database-through-terminal-164785 [21] https://github.com/odoo/odoo/issues/198943 [22] https://forum.yunohost.org/t/odoo-on-yunohost-dockerized/726 [23] https://www.ideatolife.me/resources/backing-up-and-restoring-odoo-with-docker-a-comprehensive-guide [24] https://stackoverflow.com/questions/53924608/how-to-backup-and-restore-containers-odoo-and-postgres-to-other-host-machine [25] https://www.odoo.com/forum/help-1/restore-db-to-odoo-docker-209263 [26] https://www.odoo.com/forum/help-1/database-backup-error-working-with-docker-266054 [27] https://sundar365.com.np/step-by-step-guide-for-installing-odoo-with-docker-compose-and-nginx [28] https://apps.odoo.com/apps/modules/16.0/odoo_docker_compose [29] https://www.digitalocean.com/community/tutorials/how-to-install-odoo-with-docker-on-ubuntu [30] https://github.com/minhng92/odoo-17-docker-compose [31] https://www.zehntech.com/how-to-configure-odoo-using-docker-compose-in-just-15-mins/


Answer from Perplexity: pplx.ai/share

This page was last edited on 2025-03-16 16:03

Powered by Wiki|Docs

This page was last edited on 2025-03-16 16:03

Mac
To whom it may concern

Powered by Wiki|Docs