This repository provides a premium, best-practice development environment for Odoo 118. It is designed to be fast, secure, and easy to use for the whole team.
- Odoo 18 Ready: Optimized for the latest Odoo features.
- Dockerized: Consistent environment across all developer machines.
- One-Command Setup: Get started in seconds with
make. - Healthchecks: Reliable startup (Odoo waits for the DB).
- Environment Driven: Secure configuration via
.env. - Database Admin UI: Adminer included for easy database inspection.
- RTL Support: Pre-configured
rtlcssfor Arabic translations.
- Docker & Docker Compose
- Make (usually pre-installed on Linux/Mac)
-
Clone the repository:
git clone <your-repo-url> cd config-odoo18-with-docker
-
Clone Odoo 18 source code:
git clone --depth 1 --branch 18.0 https://github.com/odoo/odoo.git src
-
Setup Environment:
cp .env.example .env # Edit .env if you need custom passwords -
Launch Odoo:
make up
Odoo will be available at http://localhost:8069
We use a Makefile to make development easier. Here are the most used commands:
| Command | Description |
|---|---|
make up |
Start the environment in background |
make logs |
View live Odoo logs |
make restart |
Restart the Odoo service (useful after Python changes) |
make update m=module_name |
Update a specific Odoo module |
make shell |
Enter the Odoo interactive shell |
make shell-db |
Enter the PostgreSQL command line |
make db-admin |
Open Adminer (Database UI) at http://localhost:8080 |
make down |
Stop and remove all containers |
src/: Odoo core source code (mapped as read-only for safety).custom_addons/: Place your new modules here.config/: Odoo configuration file (odoo.conf).data/: Odoo filestore (sessions, attachments, etc.).db_data/: PostgreSQL database files.
For detailed instructions on how to push this setup to Odoo.sh, please refer to ODOO_SH.md.
- Don't hardcode: Use environment variables for sensitive data.
- Requirements: If you add a python library, add it to
src/requirements.txt. - Clean Code: Follow Odoo coding guidelines for Python and XML.