Szeto Consultants

Minta pencerahan: Cara install Odoo di server lokal (on-premise) untuk uji coba / dev

Minta pencerahan: Cara install Odoo di server lokal (on-premise) untuk uji coba / dev

Diposting pada 22 Mar 2026, 15:05
Ditanyakan oleh: Kurniawan

Halo teman-teman praktisi IT sekalian,

Saya Kurniawan, lagi eksplorasi Odoo lebih dalam nih. Kebetulan perusahaan kami sudah pakai Odoo ERP untuk operasional harian, dan sekarang saya lagi ada rencana mau bikin environment Odoo terpisah di server lokal (on-premise) khusus buat development, testing modul baru, atau mungkin coba-coba fitur sebelum di-deploy ke production.

Nah, saya masih agak bingung nih soal langkah-langkah instalasinya dari awal. Kira-kira:
1. Metode instalasi Odoo apa yang paling teman-teman rekomendasikan untuk setup development/testing di server lokal? Apakah lebih baik pakai Docker, instalasi native, atau ada metode lain yang lebih efisien dan mudah di-maintain?
2. Untuk pilihan OS-nya, biasanya para suhu di sini lebih sering pakai apa? Linux (Ubuntu/Debian) atau ada juga yang sukses pakai di Windows Server untuk development? Mungkin ada pertimbangan khusus?
3. Apa saja sih 'gotchas' atau hal-hal penting yang perlu banget diperhatikan saat proses instalasi Odoo biar lancar dan nggak banyak error di tengah jalan? Terutama yang berkaitan sama dependensi atau konfigurasi awal.

Mohon pencerahannya ya teman-teman yang sudah sering install Odoo. Saya pengennya dapat insight tentang best practice biar nggak salah langkah. Terima kasih banyak sebelumnya!

Balasan (1)

Admin Odoo ForumAdmin & AI Support22 Mar 2026, 15:06
Halo Mas Kurniawan,

Wah, ini inisiatif yang keren banget nih! Punya environment terpisah buat development dan testing itu memang best practice di dunia ERP, apalagi untuk Odoo yang dinamis. Salut buat Mas Kurniawan yang sudah memikirkan ini dari awal. Tentu saja, kami para praktisi Odoo di sini siap berbagi pencerahan!

Mari kita bahas satu per satu pertanyaan Mas Kurniawan ya.



### 1. Metode Instalasi Odoo yang Direkomendasikan untuk Development/Testing

Untuk setup development atau testing di server lokal, ada beberapa metode, tapi yang paling kami rekomendasikan adalah Docker.

Docker (Sangat Direkomendasikan)
Keunggulan: Ini adalah pilihan paling efisien, fleksibel, dan mudah di-maintain. Dengan Docker, Odoo dan semua dependensinya (seperti PostgreSQL, Python, library lain) akan berjalan dalam kontainer yang terisolasi.
Manfaat untuk Dev/Test:
Isolasi Lingkungan: Nggak akan bentrok dengan aplikasi lain di server.
Portabilitas: Lingkungan development bisa dengan mudah dipindahkan atau direplikasi di mesin lain.
Konsistensi: Memastikan semua developer punya lingkungan yang sama persis.
Manajemen Dependensi: Semua dependensi sudah di-handle di dalam kontainer, jadi minim masalah instalasi.
Multi-Versi Odoo: Mas Kurniawan bisa menjalankan beberapa versi Odoo (misalnya Odoo 15, 16, 17) secara bersamaan tanpa konflik port atau dependensi.
Cepat Setup/Teardown: Sangat cepat untuk membuat atau menghapus lingkungan Odoo baru.
Catatan: Memerlukan pemahaman dasar tentang Docker dan Docker Compose.

Instalasi Native (Source Install)
Keunggulan: Memberikan Mas Kurniawan kontrol penuh atas setiap komponen. Cocok jika Mas Kurniawan ingin benar-benar memahami cara kerja Odoo dari level sistem operasi, atau perlu melakukan debugging mendalam pada paket Python.
Manfaat untuk Dev/Test:
Bagus untuk eksperimen mendalam dengan dependensi dan konfigurasi sistem.
Catatan: Lebih kompleks dan memakan waktu. Lebih rentan terhadap konflik dependensi jika ada project Python lain di server yang sama, dan membutuhkan pemahaman lebih dalam tentang manajemen paket dan virtual environment di OS Linux.

Kesimpulan Metode: Untuk tujuan development dan testing yang efisien, Docker adalah juara mutlak. Ini akan menghemat banyak waktu dan potensi masalah Mas Kurniawan di kemudian hari.



### 2. Pilihan Sistem Operasi (OS)

Untuk OS, rekomendasi kami sangat jelas: Linux.

Linux (Ubuntu/Debian) - Sangat Direkomendasikan
Mengapa: Odoo pada dasarnya dikembangkan untuk lingkungan Linux. Sebagian besar dokumentasi resmi, panduan komunitas, dan best practice akan mengarah ke Linux, terutama distribusi seperti Ubuntu LTS (Long Term Support) atau Debian.
Keunggulan:
Stabilitas & Performa: Umumnya lebih stabil dan performanya lebih baik untuk aplikasi server seperti Odoo.
Manajemen Dependensi: Instalasi dependensi (PostgreSQL, Python, wkhtmltopdf, dll.) jauh lebih mudah dan teruji di Linux.
Dukungan Komunitas: Jika Mas Kurniawan menemui kendala, solusi akan jauh lebih mudah ditemukan di komunitas Linux dan Odoo.
Integrasi Tools: Banyak tools development dan sistem manajemen versi (Git) bekerja sangat baik di lingkungan Linux.

Windows Server (Kurang Direkomendasikan untuk Dev/Production)
Mengapa: Meskipun secara teknis bisa diinstal di Windows Server, prosesnya cenderung lebih rumit dan rentan masalah.
Keterbatasan:
Dependensi Sulit: Banyak dependensi Odoo yang tidak "native" di Windows, sehingga instalasinya bisa tricky dan versi yang pas sulit ditemukan (misalnya versi `wkhtmltopdf` yang kompatibel).
Performa: Performa mungkin tidak seoptimal di Linux untuk beban kerja Odoo.
Dukungan: Dukungan komunitas untuk Odoo di Windows Server lebih sedikit.

Kesimpulan OS: Pilih Linux, terutama Ubuntu LTS. Ini adalah kombinasi terbaik untuk menjalankan Odoo dengan lancar dan minim masalah.



### 3. 'Gotchas' atau Hal-hal Penting Saat Instalasi Odoo

Nah, ini bagian penting agar instalasi Mas Kurniawan berjalan mulus. Berikut beberapa hal yang perlu banget diperhatikan:

Manajemen Database (PostgreSQL):
Versi PostgreSQL: Pastikan versi PostgreSQL yang Mas Kurniawan gunakan kompatibel dengan versi Odoo yang akan diinstal. Selalu cek dokumentasi resmi Odoo untuk tabel kompatibilitasnya.
User Database Khusus: Jangan gunakan user `postgres` default. Buat user PostgreSQL baru khusus untuk Odoo dengan hak akses yang minimal dan sesuai.
Konfigurasi `pg_hba.conf`: Pastikan file konfigurasi ini mengizinkan koneksi dari Odoo ke database.

Lingkungan Python (Jika Instalasi Native):
Virtual Environment (Venv): Jika Mas Kurniawan memilih instalasi native, WAJIB menggunakan virtual environment (misalnya `venv`) untuk mengisolasi dependensi Python Odoo dari project Python lain di sistem. Ini mencegah "dependency hell".
Versi Python: Pastikan versi Python yang terinstal sesuai dengan kebutuhan versi Odoo. Odoo 14-16 umumnya mendukung Python 3.8-3.10, sedangkan Odoo 17 ke atas memerlukan Python 3.10+.
Semua Library Terinstal: Pastikan semua library Python yang dibutuhkan Odoo terinstal. Biasanya bisa dilihat dari file `requirements.txt` di source code Odoo.

wkhtmltopdf untuk Laporan PDF:
Ini adalah "gotcha" klasik! `wkhtmltopdf` diperlukan untuk generate laporan PDF di Odoo. Masalahnya, tidak semua versinya kompatibel.
Versi Spesifik: Mas Kurniawan harus menginstal versi `wkhtmltopdf` yang tepat, biasanya versi 0.12.5 atau 0.12.6 dengan `QWebKit` (cek panduan Odoo atau komunitas untuk versi spesifik). Versi terbaru seringkali tidak berfungsi dengan baik.
Path: Pastikan Odoo bisa menemukan `wkhtmltopdf` di path sistem, atau set secara manual di file konfigurasi Odoo (`odoo.conf`).

Izin File (File Permissions):
Pastikan user sistem yang menjalankan proses Odoo memiliki izin baca dan tulis yang benar pada direktori Odoo (termasuk folder `addons`, folder `data_dir` untuk attachment, dan folder log). Izin yang salah bisa menyebabkan Odoo tidak bisa membaca modul, menyimpan attachment, atau menulis log.

File Konfigurasi Odoo (`odoo.conf`):
`addons_path`: Ini sangat penting. Pastikan jalur ke folder modul Odoo (modul standar dan modul kustom) dikonfigurasi dengan benar agar Odoo bisa menemukannya.
Koneksi Database: Setel `db_host`, `db_port`, `db_user`, `db_password` dengan detail koneksi PostgreSQL yang benar.
`data_dir`: Pertimbangkan untuk mengatur `data_dir` ke lokasi terpisah. Ini tempat Odoo menyimpan attachment dan file lainnya. Memisahkan ini memudahkan backup dan upgrade.
Port: Pastikan port yang digunakan Odoo (defaultnya 8069 untuk `xmlrpc_port`) tidak bentrok dengan aplikasi lain di server.
Timeout (untuk Dev): Untuk development, mungkin Mas Kurniawan ingin mengatur `limit_time_cpu` dan `limit_time_real` ke nilai yang lebih tinggi atau `False` (hati-hati di production!) agar proses testing yang lama tidak terpotong timeout.

Reverse Proxy (Nginx/Apache - Opsional untuk Dev):
Meskipun untuk development, jika nantinya di production akan menggunakan reverse proxy (seperti Nginx atau Apache), ada baiknya Mas Kurniawan juga setup reverse proxy di environment dev/test. Ini untuk memastikan bahwa semua fitur (misalnya akses via domain, SSL, serving static files) berfungsi dengan baik sejak awal.



Semoga pencerahan ini membantu Mas Kurniawan dalam menyiapkan environment Odoo untuk development dan testing. Jangan ragu bertanya lagi jika ada langkah spesifik yang masih membingungkan ya. Semangat eksplorasinya!

Berikan Tanggapan

⚠️ Anti-Spam Aktif: Dilarang menyertakan tautan/URL di dalam form ini.
Butuh Konsultasi Odoo? 👋
Scroll to Top