{"id":30092726,"url":"https://github.com/kerrickchan/odoo-docker-compose","last_synced_at":"2025-08-09T08:04:58.249Z","repository":{"id":307967148,"uuid":"1031213140","full_name":"kerrickchan/odoo-docker-compose","owner":"kerrickchan","description":"Odoo 18 docker compose","archived":false,"fork":false,"pushed_at":"2025-08-03T09:22:19.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-03T11:27:44.266Z","etag":null,"topics":["docker-compose","odoo","odoo-18"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kerrickchan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-03T09:02:59.000Z","updated_at":"2025-08-03T09:24:14.000Z","dependencies_parsed_at":"2025-08-03T11:41:28.051Z","dependency_job_id":null,"html_url":"https://github.com/kerrickchan/odoo-docker-compose","commit_stats":null,"previous_names":["kerrickchan/odoo-docker-compose"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/kerrickchan/odoo-docker-compose","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kerrickchan%2Fodoo-docker-compose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kerrickchan%2Fodoo-docker-compose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kerrickchan%2Fodoo-docker-compose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kerrickchan%2Fodoo-docker-compose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kerrickchan","download_url":"https://codeload.github.com/kerrickchan/odoo-docker-compose/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kerrickchan%2Fodoo-docker-compose/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269548500,"owners_count":24436113,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-09T02:00:10.424Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker-compose","odoo","odoo-18"],"created_at":"2025-08-09T08:03:40.634Z","updated_at":"2025-08-09T08:04:58.221Z","avatar_url":"https://github.com/kerrickchan.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Odoo Docker Setup\n\nThis repository contains a Docker Compose configuration for running Odoo 18 with PostgreSQL 17 database.\n\n## Services Overview\n\n- **db**: PostgreSQL 17 database server\n- **odoo**: Main Odoo application server\n- **odoo-init**: Initialization service for setting up Odoo with all modules\n\n## Prerequisites\n\n- Docker\n- Docker Compose\n- At least 4GB of available RAM\n- Ports 8069 and 5432 available on your host machine\n\n## Quick Start\n\n1. Clone or download this configuration\n2. Create the required directories:\n   ```bash\n   mkdir -p config addons db/init\n   ```\n\n3. Start the services:\n   ```bash\n   docker-compose up -d\n   ```\n\n4. Wait for initialization to complete (check logs):\n   ```bash\n   docker-compose logs -f odoo-init\n   ```\n\n5. Access Odoo at: http://localhost:8069\n\n## Directory Structure\n\n```\n.\n├── docker-compose.yml\n├── config/           # Odoo configuration files\n├── addons/          # Custom Odoo addons\n├── db/\n│   └── init/        # Database initialization scripts\n└── README.md\n```\n\n## Default Credentials\n\n- **Database**: odoo\n- **Username**: admin\n- **Password**: admin (set during first setup)\n\n## Services Configuration\n\n### PostgreSQL Database\n- **Image**: postgres:17\n- **Port**: 5432 (exposed)\n- **Database**: odoo\n- **User**: odoo\n- **Password**: odoo\n- **Data persistence**: `odoo_db_data` volume\n\n### Odoo Application\n- **Image**: odoo:18\n- **Port**: 8069 (exposed)\n- **Data persistence**: `odoo_web_data` volume\n- **Custom addons**: Mount `./addons` directory\n- **Configuration**: Mount `./config` directory\n\n### Odoo Initialization\n- Runs once to initialize the database with all modules\n- Automatically stops after initialization\n- Same volumes as main Odoo service\n\n## Common Commands\n\n### Start services\n```bash\ndocker-compose up -d\n```\n\n### Stop services\n```bash\ndocker-compose down\n```\n\n### View logs\n```bash\n# All services\ndocker-compose logs -f\n\n# Specific service\ndocker-compose logs -f odoo\n```\n\n### Restart Odoo\n```bash\ndocker-compose restart odoo\n```\n\n### Access database directly\n```bash\ndocker-compose exec db psql -U odoo -d odoo\n```\n\n### Reset everything (⚠️ This will delete all data)\n```bash\ndocker-compose down -v\ndocker-compose up -d\n```\n\n## Configuration\n\n### Odoo Configuration\nPlace your `odoo.conf` file in the `./config` directory. Example:\n```ini\n[options]\naddons_path = /mnt/extra-addons,/usr/lib/python3/dist-packages/odoo/addons\ndata_dir = /var/lib/odoo\ndb_host = db\ndb_port = 5432\ndb_user = odoo\ndb_password = odoo\n```\n\n### Custom Addons\nPlace your custom Odoo addons in the `./addons` directory. They will be automatically available in Odoo.\n\n### Database Initialization\nPlace any SQL scripts in `./db/init` directory to run them during database initialization.\n\n## Troubleshooting\n\n### Odoo won't start\n1. Check if database is healthy:\n   ```bash\n   docker-compose ps\n   ```\n2. Check logs for errors:\n   ```bash\n   docker-compose logs db\n   docker-compose logs odoo\n   ```\n\n### Port conflicts\nIf ports 8069 or 5432 are already in use, modify the port mappings in `docker-compose.yml`:\n```yaml\nports:\n  - \"8070:8069\"  # Change host port\n```\n\n### Permission issues\nEnsure the volumes have correct permissions:\n```bash\nsudo chown -R 101:101 config addons\n```\n\n### Database connection issues\nVerify database service is running and healthy:\n```bash\ndocker-compose exec db pg_isready -U odoo\n```\n\n## Backup and Restore\n\n### Backup database\n```bash\ndocker-compose exec db pg_dump -U odoo odoo \u003e backup.sql\n```\n\n### Restore database\n```bash\ndocker-compose exec -T db psql -U odoo odoo \u003c backup.sql\n```\n\n### Backup volumes\n```bash\ndocker run --rm -v odoo_odoo_web_data:/data -v $(pwd):/backup alpine tar czf /backup/odoo_data.tar.gz /data\n```\n\n## Health Checks\n\nThe PostgreSQL service includes a health check that ensures the database is ready before starting Odoo. This prevents connection errors during startup.\n\n## Networks\n\nAll services run on the `odoo_network` bridge network, allowing secure internal communication between containers.\n\n## Support\n\n- [Odoo Documentation](https://www.odoo.com/documentation)\n- [Docker Compose Documentation](https://docs.docker.com/compose/)\n- [PostgreSQL Documentation](https://www.postgresql.org/docs/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkerrickchan%2Fodoo-docker-compose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkerrickchan%2Fodoo-docker-compose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkerrickchan%2Fodoo-docker-compose/lists"}