Minta Pencerahan: Langkah Instalasi Odoo 9 untuk Server Dev di Lingkungan Perusahaan
Diposting pada 11 Mar 2026, 10:18
Ditanyakan oleh: Bambang
Selamat siang rekan-rekan praktisi Odoo di sini!
Saya Bambang dari tim IT di perusahaan, saat ini sedang mencoba untuk setup lingkungan development untuk Odoo. Rencananya kami mau eksplorasi lebih jauh dengan Odoo versi 9.
Nah, saya mau minta pencerahan nih dari teman-teman yang sudah sering berkutat dengan Odoo 9. Kira-kira, apa saja ya langkah-langkah instalasi Odoo 9 yang paling recommended, terutama jika kita mau pakai di server (kemungkinan besar Linux Ubuntu/Debian) untuk keperluan pengembangan internal?
Mungkin ada tips khusus terkait dependensi, konfigurasi PostgreSQL, atau hal-hal yang perlu diperhatikan agar instalasinya stabil dan mudah di-maintain ke depannya? Mohon sharing pengalamannya ya, siapa tahu ada best practice yang bisa saya terapkan. Terima kasih banyak sebelumnya atas bantuannya!
Balasan (1)
Admin Odoo ForumAdmin & AI Support11 Mar 2026, 10:18
Halo Mas Bambang dari tim IT! Wah, semangat sekali nih mau eksplorasi Odoo 9 untuk lingkungan development di perusahaan. Tepat sekali datang ke komunitas ini, banyak sobat Odoo yang sudah khatam dengan versi-versi Odoo sebelumnya.
Memang, Odoo 9 ini punya beberapa karakteristik unik, terutama terkait Python 2.7 yang menjadi basisnya. Untuk setup di server Linux (Ubuntu/Debian) buat development, instalasi dari source code biasanya jadi pilihan terbaik karena fleksibilitasnya.
Oke, mari kita bedah langkah-langkah instalasi Odoo 9 yang recommended, plus beberapa tips pentingnya ya!
Langkah-Langkah Instalasi Odoo 9 (dari Source Code)
Ini adalah metode yang paling umum dan fleksibel untuk keperluan pengembangan.
1. Update Sistem Operasi
Pertama-tama, pastikan server Ubuntu/Debian Mas Bambang sudah terupdate.
2. Instalasi PostgreSQL Database Server
Odoo membutuhkan PostgreSQL sebagai database-nya.
Setelah itu, kita perlu membuat user PostgreSQL khusus untuk Odoo. Ini penting untuk keamanan dan pengelolaan.
Di sini kita membuat user `odoo` di PostgreSQL yang memiliki hak untuk membuat database baru (karena ada flag `-s` atau `--superuser`).
3. Instalasi Python 2.7 dan Dependensi Sistem
Odoo 9 berjalan di atas Python 2.7. Ini adalah poin krusial yang harus diingat. Kita perlu menginstal Python development headers dan library penting lainnya.
Beberapa dependensi di atas dibutuhkan untuk library Python yang akan diinstal nanti, serta untuk fungsi-fungsi seperti report printing.
4. Instalasi wkhtmltopdf (untuk Report PDF)
Untuk mencetak laporan PDF dari Odoo, Mas Bambang perlu menginstal `wkhtmltopdf`. Versi ini sangat sensitif dan Odoo 9 biasanya paling cocok dengan versi 0.12.1 atau 0.12.5 tanpa patched Qt. Hindari versi yang lebih baru karena seringkali ada masalah rendering.
Mas Bambang bisa mengunduh file `.deb` dari sumber terpercaya (misalnya dari repositori lama atau arsip project wkhtmltopdf) yang sesuai dengan arsitektur server (misal `amd64` atau `i386`).
Pastikan Mas Bambang memilih versi yang tepat ya, karena ini sering jadi sumber sakit kepala kalau salah versi.
5. Buat User Sistem Khusus Odoo
Untuk alasan keamanan dan organisasi, sebaiknya jalankan Odoo dengan user sistem non-privilege.
Ini akan membuat user `odoo` dan group `odoo` dengan home directory di `/opt/odoo`.
6. Dapatkan Source Code Odoo 9
Sekarang, unduh source code Odoo 9 dari GitHub.
Kita clone branch `9.0` dan menyimpannya di folder `odoo9.0` di dalam `/opt/odoo`.
7. Instalasi Library Python untuk Odoo
Odoo memiliki banyak dependensi library Python.
Jika `pip` default ke Python 3, Mas Bambang mungkin perlu menggunakan `pip2` secara eksplisit:
Jika ada error saat instalasi, biasanya terkait dengan dependensi sistem yang belum terinstal (misalnya `libxml2-dev` untuk `lxml`, `libpq-dev` untuk `psycopg2`). Pastikan semua dependensi dari langkah 3 sudah terinstal.
8. Buat File Konfigurasi Odoo
Buat file konfigurasi agar Odoo bisa dijalankan dengan pengaturan yang kita inginkan.
Isi file `odoo9.conf` dengan konfigurasi dasar berikut:
Setelah itu, berikan hak akses yang tepat agar user `odoo` bisa membaca file konfigurasi ini.
9. Buat Direktori Log dan Set Hak Akses
10. Buat Systemd Service (Otomatis Start saat Booting)
Agar Odoo berjalan secara otomatis dan mudah dikelola, buat service Systemd.
Isi file `odoo9.service` dengan ini:
Beberapa penjelasan:
`ExecStart`: Ini adalah perintah yang akan menjalankan Odoo. Pastikan path ke `python` dan `odoo-bin` (eksekusi utama Odoo 9) sudah benar. `odoo-bin` menggantikan `openerp-server` di versi ini.
`User` dan `Group`: Pastikan sesuai dengan user dan group yang kita buat.
Simpan file, lalu reload Systemd, enable, dan start service Odoo:
Untuk memeriksa statusnya:
11. Akses Odoo
Setelah service berjalan, Mas Bambang bisa mengakses Odoo melalui web browser dengan URL:
Pada halaman pertama, Mas Bambang akan diminta untuk membuat database baru. Masukkan password master yang sudah diatur di `odoo9.conf` tadi (`admin_passwd`).
Tips Khusus & Best Practice untuk Development Odoo 9
Lingkungan Virtual (Virtualenv)
Untuk lingkungan development, sangat disarankan untuk menggunakan Python Virtual Environment (virtualenv). Ini membantu mengisolasi dependensi Python Odoo 9 (Python 2.7) dari project Python lainnya di sistem Mas Bambang.
Jika menggunakan virtualenv, maka di file `odoo9.service`, `ExecStart` perlu disesuaikan menjadi:
Path Addons
Jika Mas Bambang akan mengembangkan modul custom, buat folder terpisah (misalnya `/opt/odoo/custom_addons`) dan tambahkan path-nya di `addons_path` di `odoo9.conf`:
Pastikan user `odoo` memiliki hak baca ke folder custom addons tersebut.
Debugging
Saat development, Mas Bambang bisa mengubah `log_level = debug` di file konfigurasi untuk melihat log lebih detail.
Untuk debugging kode Python, Mas Bambang bisa menggunakan PDB (Python Debugger) langsung di script Odoo atau mengintegrasikannya dengan IDE seperti PyCharm.
Pengelolaan Database
Manfaatkan `pgAdmin` atau `psql` untuk mengelola database PostgreSQL Mas Bambang. Untuk development, membuat database baru atau menghapusnya adalah hal yang lumrah.
Backup
Meskipun ini lingkungan development, tetap disarankan untuk sesekali melakukan backup database Odoo Mas Bambang, terutama jika sudah banyak data dan konfigurasi.
Firewall
Pastikan Mas Bambang mengkonfigurasi firewall (misal `ufw`) di server untuk hanya mengizinkan akses ke port 8069 dari IP yang relevan (misalnya, IP tim IT atau subnet internal perusahaan).
Perhatikan Python 2.7 EOL
Ini penting untuk diingat: Python 2.7 sudah End-of-Life (EOL). Artinya, tidak ada lagi update keamanan resmi. Untuk project produksi di masa depan, sangat disarankan untuk mempertimbangkan versi Odoo yang lebih baru (misalnya Odoo 12 ke atas) yang sudah mendukung Python 3. Namun, untuk eksplorasi dan development di Odoo 9, ini adalah jalan yang harus ditempuh.
Semoga panduan ini cukup komprehensif dan bisa membantu Mas Bambang dalam setup Odoo 9 di server development ya! Jika ada langkah yang kurang jelas atau menemui kendala, jangan sungkan untuk bertanya lagi di sini. Kami siap membantu! Selamat berkutat dengan Odoo, Mas Bambang!
Memang, Odoo 9 ini punya beberapa karakteristik unik, terutama terkait Python 2.7 yang menjadi basisnya. Untuk setup di server Linux (Ubuntu/Debian) buat development, instalasi dari source code biasanya jadi pilihan terbaik karena fleksibilitasnya.
Oke, mari kita bedah langkah-langkah instalasi Odoo 9 yang recommended, plus beberapa tips pentingnya ya!
Langkah-Langkah Instalasi Odoo 9 (dari Source Code)
Ini adalah metode yang paling umum dan fleksibel untuk keperluan pengembangan.
1. Update Sistem Operasi
Pertama-tama, pastikan server Ubuntu/Debian Mas Bambang sudah terupdate.
sudo apt update && sudo apt upgrade -y2. Instalasi PostgreSQL Database Server
Odoo membutuhkan PostgreSQL sebagai database-nya.
sudo apt install postgresql -ySetelah itu, kita perlu membuat user PostgreSQL khusus untuk Odoo. Ini penting untuk keamanan dan pengelolaan.
sudo su - postgres -c "createuser -s odoo"Di sini kita membuat user `odoo` di PostgreSQL yang memiliki hak untuk membuat database baru (karena ada flag `-s` atau `--superuser`).
3. Instalasi Python 2.7 dan Dependensi Sistem
Odoo 9 berjalan di atas Python 2.7. Ini adalah poin krusial yang harus diingat. Kita perlu menginstal Python development headers dan library penting lainnya.
sudo apt install python-dev python-pip build-essential libxml2-dev libxslt1-dev libevent-dev libsasl2-dev libldap2-dev libssl-dev zlib1g-dev libjpeg-dev libpq-dev libcups2-dev libfontconfig1 xfonts-base xfonts-utils -yBeberapa dependensi di atas dibutuhkan untuk library Python yang akan diinstal nanti, serta untuk fungsi-fungsi seperti report printing.
4. Instalasi wkhtmltopdf (untuk Report PDF)
Untuk mencetak laporan PDF dari Odoo, Mas Bambang perlu menginstal `wkhtmltopdf`. Versi ini sangat sensitif dan Odoo 9 biasanya paling cocok dengan versi 0.12.1 atau 0.12.5 tanpa patched Qt. Hindari versi yang lebih baru karena seringkali ada masalah rendering.
Mas Bambang bisa mengunduh file `.deb` dari sumber terpercaya (misalnya dari repositori lama atau arsip project wkhtmltopdf) yang sesuai dengan arsitektur server (misal `amd64` atau `i386`).
# Contoh untuk versi 0.12.1 (sesuaikan dengan URL yang ditemukan)
# Unduh file .deb:
# wget [URL_FILE_DEB_WKHTMLTOPDF_0.12.1_SESUAI_ARSITEKTUR.deb]
#
# Kemudian instal:
sudo dpkg -i nama_file_wkhtmltopdf_0.12.1_sesuai_arsitektur.deb
sudo apt install -f # Untuk memperbaiki dependensi jika adaPastikan Mas Bambang memilih versi yang tepat ya, karena ini sering jadi sumber sakit kepala kalau salah versi.
5. Buat User Sistem Khusus Odoo
Untuk alasan keamanan dan organisasi, sebaiknya jalankan Odoo dengan user sistem non-privilege.
sudo adduser --system --home=/opt/odoo --group odooIni akan membuat user `odoo` dan group `odoo` dengan home directory di `/opt/odoo`.
6. Dapatkan Source Code Odoo 9
Sekarang, unduh source code Odoo 9 dari GitHub.
sudo su - odoo -s /bin/bash # Masuk sebagai user odoo
cd /opt/odoo
git clone https://www.github.com/odoo/odoo --branch 9.0 --depth 1 odoo9.0
exit # Kembali ke user sebelumnya (misal, user sudo Anda)Kita clone branch `9.0` dan menyimpannya di folder `odoo9.0` di dalam `/opt/odoo`.
7. Instalasi Library Python untuk Odoo
Odoo memiliki banyak dependensi library Python.
sudo pip install -r /opt/odoo/odoo9.0/requirements.txtJika `pip` default ke Python 3, Mas Bambang mungkin perlu menggunakan `pip2` secara eksplisit:
sudo pip2 install -r /opt/odoo/odoo9.0/requirements.txtJika ada error saat instalasi, biasanya terkait dengan dependensi sistem yang belum terinstal (misalnya `libxml2-dev` untuk `lxml`, `libpq-dev` untuk `psycopg2`). Pastikan semua dependensi dari langkah 3 sudah terinstal.
8. Buat File Konfigurasi Odoo
Buat file konfigurasi agar Odoo bisa dijalankan dengan pengaturan yang kita inginkan.
sudo mkdir /etc/odoo
sudo nano /etc/odoo/odoo9.confIsi file `odoo9.conf` dengan konfigurasi dasar berikut:
[options]
; Ini password master untuk mengelola database Odoo, sangat penting!
admin_passwd = ganti_dengan_password_kuat_anda
; Host dan Port PostgreSQL, False berarti localhost dan port default
db_host = False
db_port = False
; User PostgreSQL yang dibuat di langkah 2
db_user = odoo
; Password user PostgreSQL (kosongkan jika tidak ada)
db_password = False
; Path ke folder addons Odoo. Bisa ditambahkan jika ada custom addons
addons_path = /opt/odoo/odoo9.0/addons
; Lokasi log file
logfile = /var/log/odoo/odoo9.log
log_level = info
; Port tempat Odoo akan berjalan
xmlrpc_port = 8069Setelah itu, berikan hak akses yang tepat agar user `odoo` bisa membaca file konfigurasi ini.
sudo chown odoo:odoo /etc/odoo/odoo9.conf
sudo chmod 640 /etc/odoo/odoo9.conf9. Buat Direktori Log dan Set Hak Akses
sudo mkdir /var/log/odoo
sudo chown odoo:odoo /var/log/odoo10. Buat Systemd Service (Otomatis Start saat Booting)
Agar Odoo berjalan secara otomatis dan mudah dikelola, buat service Systemd.
sudo nano /etc/systemd/system/odoo9.serviceIsi file `odoo9.service` dengan ini:
[Unit]
Description=Odoo9 ERP instance
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
User=odoo
Group=odoo
ExecStart=/usr/bin/python /opt/odoo/odoo9.0/odoo-bin -c /etc/odoo/odoo9.conf
WorkingDirectory=/opt/odoo/odoo9.0
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.targetBeberapa penjelasan:
`ExecStart`: Ini adalah perintah yang akan menjalankan Odoo. Pastikan path ke `python` dan `odoo-bin` (eksekusi utama Odoo 9) sudah benar. `odoo-bin` menggantikan `openerp-server` di versi ini.
`User` dan `Group`: Pastikan sesuai dengan user dan group yang kita buat.
Simpan file, lalu reload Systemd, enable, dan start service Odoo:
sudo systemctl daemon-reload
sudo systemctl enable odoo9
sudo systemctl start odoo9Untuk memeriksa statusnya:
sudo systemctl status odoo911. Akses Odoo
Setelah service berjalan, Mas Bambang bisa mengakses Odoo melalui web browser dengan URL:
http://IP_SERVER_ANDA:8069Pada halaman pertama, Mas Bambang akan diminta untuk membuat database baru. Masukkan password master yang sudah diatur di `odoo9.conf` tadi (`admin_passwd`).
Tips Khusus & Best Practice untuk Development Odoo 9
Lingkungan Virtual (Virtualenv)
Untuk lingkungan development, sangat disarankan untuk menggunakan Python Virtual Environment (virtualenv). Ini membantu mengisolasi dependensi Python Odoo 9 (Python 2.7) dari project Python lainnya di sistem Mas Bambang.
sudo pip install virtualenv
sudo su - odoo -s /bin/bash
cd /opt/odoo/odoo9.0
virtualenv venv # Membuat virtual environment bernama 'venv'
source venv/bin/activate # Mengaktifkan virtual environment
pip install -r requirements.txt # Instal dependensi di venv ini
deactivate # Menonaktifkan virtual environmentJika menggunakan virtualenv, maka di file `odoo9.service`, `ExecStart` perlu disesuaikan menjadi:
ExecStart=/opt/odoo/odoo9.0/venv/bin/python /opt/odoo/odoo9.0/odoo-bin -c /etc/odoo/odoo9.confPath Addons
Jika Mas Bambang akan mengembangkan modul custom, buat folder terpisah (misalnya `/opt/odoo/custom_addons`) dan tambahkan path-nya di `addons_path` di `odoo9.conf`:
addons_path = /opt/odoo/odoo9.0/addons,/opt/odoo/custom_addonsPastikan user `odoo` memiliki hak baca ke folder custom addons tersebut.
Debugging
Saat development, Mas Bambang bisa mengubah `log_level = debug` di file konfigurasi untuk melihat log lebih detail.
Untuk debugging kode Python, Mas Bambang bisa menggunakan PDB (Python Debugger) langsung di script Odoo atau mengintegrasikannya dengan IDE seperti PyCharm.
Pengelolaan Database
Manfaatkan `pgAdmin` atau `psql` untuk mengelola database PostgreSQL Mas Bambang. Untuk development, membuat database baru atau menghapusnya adalah hal yang lumrah.
Backup
Meskipun ini lingkungan development, tetap disarankan untuk sesekali melakukan backup database Odoo Mas Bambang, terutama jika sudah banyak data dan konfigurasi.
Firewall
Pastikan Mas Bambang mengkonfigurasi firewall (misal `ufw`) di server untuk hanya mengizinkan akses ke port 8069 dari IP yang relevan (misalnya, IP tim IT atau subnet internal perusahaan).
sudo ufw allow 8069/tcp from IP_KOMPUTER_ANDA_ATAU_SUBNETPerhatikan Python 2.7 EOL
Ini penting untuk diingat: Python 2.7 sudah End-of-Life (EOL). Artinya, tidak ada lagi update keamanan resmi. Untuk project produksi di masa depan, sangat disarankan untuk mempertimbangkan versi Odoo yang lebih baru (misalnya Odoo 12 ke atas) yang sudah mendukung Python 3. Namun, untuk eksplorasi dan development di Odoo 9, ini adalah jalan yang harus ditempuh.
Semoga panduan ini cukup komprehensif dan bisa membantu Mas Bambang dalam setup Odoo 9 di server development ya! Jika ada langkah yang kurang jelas atau menemui kendala, jangan sungkan untuk bertanya lagi di sini. Kami siap membantu! Selamat berkutat dengan Odoo, Mas Bambang!