Instalasi Odoo di Local dengan Docker Compose

Instalasi Odoo di Local dengan Docker Compose (Step-by-Step)

Odoo Login Page dan Docker Compose Up di Terminal


Saat awal mulai menggunakan Odoo untuk pengembangan, setup awal mungkin tampak sederhana — cukup membuat file Docker Compose dan selesai. Namun dalam beberapa kasus, service sudah Up, tetapi halaman Odoo masih error. Ini normal, dan bisa diatasi jika setup dilakukan dengan lebih teratur sejak awal.

Berikut metode sederhana namun stabil yang saya gunakan sehari-hari. Dengan stack yang relatif kecil, PostgreSQL dan Odoo dikonfigurasi dengan aman untuk laptop lokal: port PostgreSQL tidak bentrok, dan container tidak otomatis menyala setelah laptop dinyalakan.


1 Pastikan Prasyarat Sudah Terpasang

Cek cepat versi tool yang dibutuhkan: Docker Desktop atau Docker Engine dengan plugin Compose, minimal 4 GB RAM untuk Docker agar Odoo ringan saat start.

docker --version
docker compose version
git --version

2 Clone Project

git clone https://github.com/yoesoff/ai-erp-platform.git
cd ai-erp-platform

Repository: github.com/yoesoff/ai-erp-platform

3 Siapkan Environment File

Copy file contoh env:

cp .env.example .env

Isi default yang dipakai:

POSTGRES_DB=odoo
POSTGRES_USER=odoo
POSTGRES_PASSWORD=odoo_dev_password_change_me
POSTGRES_PORT=5433
ODOO_PORT=8069
Catatan: PostgreSQL dipublish ke port 5433 supaya tidak bentrok dengan PostgreSQL lain yang mungkin sudah berjalan di laptop.

4 Jalankan Service Docker

docker compose up -d
Output docker compose up -d

Cek status service:

docker compose ps
Output docker compose ps

Expected output:

  • Status postgres: Up (healthy)
  • Status odoo: Up
Kok cuma 2 service yang tampil, bukan 3?
File docker-compose.yml di repo ini sebenarnya punya 3 service: postgres, odoo, dan satu lagi bernama odoo-init. Service odoo-init ini sengaja dibuat one-shot — tugasnya cuma menginisialisasi database (odoo -i base --without-demo=all --stop-after-init) lalu berhenti sendiri (Exited (0)). Karena docker compose ps secara default menyembunyikan container yang sudah berhenti, kamu cuma lihat 2 baris.

Inilah jawaban dari masalah yang disebut di awal artikel ini ("service sudah Up tapi Odoo error"): tanpa odoo-init, container odoo kadang start duluan sebelum database benar-benar siap, dan itu yang bikin 500 Internal Server Error di first boot. Kalau penasaran, jalankan docker compose ps -a untuk melihat container ketiga ini — statusnya Exited (0) itu normal, bukan error.
Sabar sedikit di run pertama
Karena odoo menunggu odoo-init selesai dulu (dan postgres butuh beberapa detik untuk lolos health check), kalau kamu jalankan docker compose ps terlalu cepat setelah docker compose up -d, status odoo mungkin belum Up. Tunggu sekitar 10–20 detik lalu cek ulang.

5 Akses Odoo di Browser

Buka browser dan akses:

http://localhost:8069
Halaman login Odoo
Halaman Login
Dashboard Odoo
Dashboard Odoo
Login default:
Email: admin  |  Password: admin

Catatan: karena cuma ada satu database (odoo), halaman login tidak menampilkan field "Database" terpisah — cukup isi Email dan Password saja.




Comments

Popular posts from this blog

Numpang Kerja Remote dari Bandung Creative Hub

Debugging PHP Web dengan XDebug di Intellij IDEA (PHP STORM)

React JS Container dan Components