Cara Instal Odoo 12 di Ubuntu 16.04 (GAGAL)

Odoo adalah rangkaian aplikasi bisnis sumber terbuka yang ditulis dengan bahasa Python dan dirilis di bawah lisensi GNU LGPL v.3. Untuk mengetahui lebih jauh tentang jenis lisensi ini silahkan telusuri laman Gnu is Not Unix

Rangkaian aplikasi yang sebelumnya dikenal dengan OpenERP ini mencakup semua kebutuhan bisnis Anda. Mulai dari situs web, e-niaga hingga manufaktur, inventaris, dan akuntansi, semuanya terintegrasi dengan baik.

Untuk mencoba aplikasi ini Anda cukup memilih salah satu dari sekian cara yang bisa dilakukan.

 

Macam-macam Cara Menggunakan Odoo

Sebagaimana disebutkan langsung pada laman Odoo, untuk menggunakan aplikasi bisa dimulai dengan salah satu cara di bawah ini:

  • Online
  • Package Installer
  • Source Install
  • Docker

Cara yang paling mudah, konon dikatakan adalah cara yang pertama, yaitu versi online. Sedangkan yang sudah dilakukan blog ini cara kedua melalui package installer. Yakni installer dengan ekstensi exe seperti pada tautan cara instal Odoo 12 di Windows

Dengan tutorial itu Windows 10 sudah bisa menggunakan aplikasi Odoo dan cara instalasinya pun terbilang mudah. Sekarang waktunya gilir memasang Odoo di Linux. Ini namanya tutorial berasa 'poligami' dalam sistem operasi di dunia blog Sebardi.

 

Via Package Installer dan Ubuntu Jadul

Pada awalnya artikel ini berkeinginan menggunakan cara yang sama. Ini disebabkan kemudahan yang terlihat pada proses di Windows 10. Windows 10 sendiri memang versi teranyar pada saat artikel ini ditulis. Sehingga tidak ada kesulitan pada saat memasang Odoo sesuai versi yang didukung.

Adapun Linux Ubuntu versi teranyar saat artikel ini ditulis adalah 20.10. Mungkin jika kita instal Odoo di Ubuntu terbaru terasa mudah seperti di Windows 10.

Beda rasanya jika menginstal Odoo versi baru menggunakan sistem operasi versi jadul. Seperti pengalaman yang saya alami dan tertuang dalam blog pribadi ini. Melalui package installer dengan ekstensi deb untuk Ubuntu 16.04 akhirnya Odoo diuji-coba. Tentu saja sebelumnya sudah download paket installer di laman Odoo.

Installer tersebut kemudian dijalankan.

 

Akan tetapi proses instalasi tidak bisa berjalan dengan semestinya kemungkinan ada ketergantungan file yang dibutuhkan yang harus di download secara manual melalui terminal.

Benar saja, setelah itu proses bisa berjalan, tapi kemudian hasil akhirnya tetap sama. Aplikasi Odoo belum bisa diakses melalui browser. 

Apakah ini kasus khusus karena komputer ini berbarengan terinstal Apache Web Server? Dimaklumi bersama Apache menjalankan tugas sebagai web werver menggunakan PHP dan Odoo dengan Python dari sisi yang sama; yaitu server side.

Atau ini dipengaruhi perbedaan versi bahasa Python? Ubuntu 16.04 sendiri menggunakan Python versi 2.7 dan yang dibutuhkan Odoo terbaru versi 3.6. 

Sedangkan update versi Python bukanlah satu solusi untuk semua yang terinstal di komputer yang sama.


Cara Instal Odoo di Linux dengan Kode Sumber dari GitHub

Setelah cara di atas gagal sebenarnya masih ada alternatif lain yaitu menurunkan versi Odoo biar sama-sama jadul. Akan tetapi kali ini admin mencoba cara instal Odoo 12 di Ubuntu 16.04 dengan menggunakan kode sumber. Berikut ini langkah-langkahnya:

1. Menyiapkan sistem dengan memperbarui Linux

sudo apt-get update

sudo apt-get upgrade

Jika output ada errror seperti ini

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 odoo : Depends: python3-babel but it is not installed
        Depends: python3-decorator but it is not installed
        Depends: python3-docutils but it is not installed
        Depends: python3-gevent but it is not installed
        Depends: python3-html2text but it is not installed
        Depends: python3-mako but it is not installed
        Depends: python3-mock but it is not installed
        Depends: python3-ofxparse but it is not installed
        Depends: python3-passlib but it is not installed
        Depends: python3-psutil but it is not installed
        Depends: python3-psycopg2 but it is not installed
        Depends: python3-pydot but it is not installed
        Depends: python3-pypdf2 but it is not installed
        Depends: python3-serial but it is not installed
        Depends: python3-usb but it is not installed
        Depends: python3-vatnumber but it is not installed
        Depends: python3-werkzeug but it is not installed
        Depends: python3-yaml but it is not installed
        Depends: node-less but it is not installed
        Depends: postgresql-client
        Depends: python3-suds but it is not installed
        Recommends: postgresql but it is not installed
        Recommends: python3-pyldap but it is not installable
        Recommends: python3-qrcode but it is not installable
        Recommends: python3-vobject but it is not installable
E: Unmet dependencies. Try using -f.

Coba gunakan perintah berikut:

sudo apt-get -y upgrade

2. Buat user untuk menjalankan service Odoo

sudo adduser --system --home=/opt/odoo --group odoo

Jika ada keterangan:"The system user `odoo' already exists. Exiting". Langkah kedua ini abaikan saja, mungkin gegara instal via package installer di atas.

3. Instal database server PostgreSQL

sudo apt-get install postgresql

4. Login super user PostgreSQL

sudo su - postgres

5. Buat user PostgreSQL untuk mengelola database

createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo12

Masukan password untuk role baru dan ulangi sekali lagi.

6. Keluar dari database server

exit

7. Instal file dependensi untuk Odoo

sudo apt-get install -y python3-pip

8. Instal file dependensi menggunakan pip3:

sudo pip3 install Babel chardet decorator docutils ebaysdk feedparser gevent greenlet html2text Jinja2 libsass lxml Mako MarkupSafe mock num2words ofxparse passlib Pillow psutil psycopg2 pydot pyldap pyparsing PyPDF2 pyserial python-dateutil pytz pyusb PyYAML qrcode reportlab requests suds-jurko vatnumber vobject Werkzeug XlsxWriter xlwt xlrd 

Yang saya alami ada keterangan error begini:

error: command 'i686-linux-gnu-gcc' failed with exit status 1
    
    ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-uctimsiw/python-ldap/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-dp4gg46v-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-uctimsiw/python-ldap/
You are using pip version 8.1.1, however version 20.2.4 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

Pip3 harus diupgrade menjadi versi 20.2.4 dengan perintah ini:

sudo pip3 install --upgrade pip

Output:

The directory '/home/yusuf/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/yusuf/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting pip
  Downloading https://files.pythonhosted.org/packages/cb/28/91f26bd088ce8e22169032100d4260614fc3da435025ff389ef1d396a433/pip-20.2.4-py2.py3-none-any.whl (1.5MB)
    100% |████████████████████████████████| 1.5MB 152kB/s
Installing collected packages: pip
  Found existing installation: pip 8.1.1
    Not uninstalling pip at /usr/lib/python3/dist-packages, outside environment /usr
Successfully installed pip-20.2.4

9. Instal web dependensi untuk Odoo; Node.js dan less

sudo apt-get install -y npm

sudo ln -s /urs/bin/nodejs /usr/bin/node

sudo npm install -g less less-plugin-clean-cs

10. instal wkhtmltopdf untuk menggenerate laporan dari Odoo

sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb

sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb

11. Instal git

sudo apt-get install git

14. Login dengan user Odoo

sudo su - odoo -s /bin/bash

15. Cloning Odoo dari github

git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 --single-branch

16. Keluar dari Odoo mode teks

exit

17. Buat Log File untuk Odoo server

sudo mkdir /var/log/odoo

18. Seting kepemilikan file

sudo chown odoo:root /var/log/odoo

19. Buat file konfigurasi

sudo nano /etc/odoo.conf

Isikan dengan teks berikut ini:

[options]
   ; This is the password that allows database operations:
   ; admin_passwd = admin
   db_host = False
   db_port = False
   db_user = odoo
   db_password = False
   addons_path = /opt/odoo/addons
   logfile = /var/log/odoo/odoo.log

20. Seting kepemilikan

sudo chown odoo: /etc/odoo.conf

sudo chmod 640 /etc/odoo.conf

21. Buat file service

sudo nano /etc/systemd/system/odoo.service

Masdukan teks berikut ini:

[Unit]
   Description=Odoo
   Documentation=http://www.odoo.com
   [Service]
   # Ubuntu/Debian convention:
   Type=simple
   User=odoo
   ExecStart=/opt/odoo/odoo-bin -c /etc/odoo.conf
   [Install]
   WantedBy=default.target

22.Seting kepemilikan

sudo chmod 755 /etc/systemd/system/odoo.service

sudo chown root: /etc/systemd/system/odoo.service

23. Restart service

sudo systemctl start odoo.service

sudo systemctl enable odoo.service

24. Cek status di file log

tail -f /var/log/odoo/odoo.log

Output:
tail: cannot open '/var/log/odoo/odoo.log' for reading: No such file or directory
tail: no files remaining

Jika perintah di atas gagal gunakan ini:

tail -f /var/log/odoo/odoo-server.log

Output:

self._cnx = pool.borrow(dsn)
  File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 517, in _locked
    return fun(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 585, in borrow
    **connection_info)
  File "/usr/lib/python3/dist-packages/psycopg2/__init__.py", line 164, in connect
    conn = _connect(dsn, connection_factory=connection_factory, async=async)
psycopg2.OperationalError: FATAL:  role "odoo" does not exist
2020-10-23 18:33:26,252 32685 INFO ? odoo.service.server: Initiating shutdown
2020-10-23 18:33:26,252 32685 INFO ? odoo.service.server: Hit CTRL-C again or send a second signal to force the shutdown.

Sebelumnya, error hanya ditunjukan di file log, sedangkan sistem status kemarin dinyatakan aktif meskipun localhost tidak bisa diakses melalui browser. Dan sekarang setelah ngoprek kesana-kemari akhirnya total, sistem status pun dinyatakan tidak aktif.

systemctl status odoo
● odoo.service - Odoo
   Loaded: loaded (/etc/systemd/system/odoo.service; enabled; vendor preset: ena
   Active: failed (Result: exit-code) since Sab 2020-10-24 16:06:55 WIB; 24min a
 Main PID: 5360 (code=exited, status=203/EXEC)

Okt 24 16:06:55 jabalekat systemd[1]: Stopped Odoo.
Okt 24 16:06:55 jabalekat systemd[1]: Started Odoo.
Okt 24 16:06:55 jabalekat systemd[1]: odoo.service: Main process exited, code=ex
Okt 24 16:06:55 jabalekat systemd[1]: odoo.service: Unit entered failed state.
Okt 24 16:06:55 jabalekat systemd[1]: odoo.service: Failed with result 'exit-cod
lines 1-10/10 (END)

Saya share tutorial ini barangkali beda tangan beda hasil. Karena sejatinya referensi yang menjadi sumber rujukan di atas semuanya berhasil. Siapa tau juga ada yang bisa menunjukan kesalahan tersebut. Dan meskipun masih gagal saya tertarik aplikasi ini karena fitur teknis Odoo mencakup server terdistribusi, alur kerja fleksibel, laporan yang dapat disesuaikan, dan antarmuka GUI yang dinamis.
 
Selamat mencoba kegagalan.
 

 
Baca Juga

Tidak ada komentar:

Posting Komentar