Proses Installasi Odoo Pada VPS Ubuntu

Hai teman-teman!

Kali ini saya akan membahas cara instalasi Odoo pada VPS Ubuntu. Pada blog ini saya akan menjelaskan langkah instal aplikasi Odoo. Berikut langkah kerjanya :

  1. Pastikan telah menginstal Putty
  2. Masuk sebagai root, lalu masukkan password yang telah diatur sebelumnya
  3. Setelah login ke server cloud, tambahkan repository dalam negeri, saya memilih menggunakan repository Kambing UI.
    • nano /etc/apt/sources.list

    • # # # replace isi file dengan baris dibawah ini # # #
    •  
    • deb http://kebo.pens.ac.id/ubuntu/ focal main restricted universe multiverse
    • deb http://kebo.pens.ac.id/ubuntu/ focal-updates main restricted universe multiverse
    • deb http://kebo.pens.ac.id/ubuntu/ focal-security main restricted universe multiverse
    • deb http://kebo.pens.ac.id/ubuntu/ focal-backports main restricted universe multiverse
    • deb http://kebo.pens.ac.id/ubuntu/ focal-proposed main restricted universe multiverse
    •   
    • deb http://security.ubuntu.com/ubuntu focal-security main restricted 
    • deb http://security.ubuntu.com/ubuntu focal-security universe 
    • deb http://security.ubuntu.com/ubuntu focal-security multiverse
    •  
    • # # #
  4. Tekan Ctrl+O untuk menyimpan repo, lalu tkan Ctrl+X untuk keluar dari editor nano
  5. Masukkan perintah berikut
    • apt update
  6. Buat User Osoo untuk Ubuntu
    • adduser odoo
    • usermod -aG sudo odoo
    • su - odoo
  7. Instal Database
    • sudo apt install -y postgresq
  8. Membuat User Odoo untuk Postgresq
    • sudo su postgres
    • createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo
    • exit
  9. Download Source Odoo Community
    • wget https://nightly.odoo.com/14.0/nightly/src/odoo_14.0.latest.tar.gz
  10. Tentukan Path Source Odoo
    • sudo mkdir /opt/odoo
    • cd /opt/odoo
    • sudo tar xvf ~/odoo_14.0.latest.tar.gz
    • sudo mv odoo-14.0.GANTI_SESUAI_NAMA_FOLDER/ odoo-server
    • sudo mkdir addons
    • sudo chown -R odoo: *
  11. Instal Library Odoo
    • sudo apt install -y git python3-pip python3-polib build-essential wget python3-dev python3-venv python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less libjpeg-dev zlib1g-dev libpq-dev libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev
    • sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
    • sudo apt install -y ./wkhtmltox_0.12.6-1.bionic_amd64.deb
    • sudo pip3 install -r /opt/odoo/odoo-server/requirements.txt
  12. Membuat File Config Odoo (Jangan gunakan password utama untuk membuat database baru)
    • sudo nano /etc/odoo-server.conf
    •  
    • # # # replace isi file dengan baris dibawah ini # # #
    •  
    • [options]
    • admin_passwd = superadmin
    • db_host = False
    • db_port = False
    • db_user = odoo
    • db_password = odoo
    • logfile = /var/log/odoo/odoo-server.log
    • addons_path = /opt/odoo/odoo-server/odoo/addons,/opt/odoo/addons
    •  
    • # # #
  13. Membuat File Log
    • sudo mkdir /var/log/odoo
    • sudo touch /var/log/odoo/odoo-server.log
    • sudo chown -R odoo:odoo /var/log/odoo
  14. Membuat Service Odoo
    • sudo cp /opt/odoo/odoo-server/setup/odoo /opt/odoo/odoo-server/odoo-bin
    • sudo chmod a+x /opt/odoo/odoo-server/odoo-bin
    •  
    • sudo nano /etc/systemd/system/odoo-server.service
    •  
    • # # # replace isi file dengan baris dibawah ini # # #
    •  
    • [Unit]
    • Description=Odoo14
    • Requires=postgresql.service
    • After=network.target postgresql.service
    •  
    • [Service]
    • Type=simple
    • SyslogIdentifier=odoo
    • PermissionsStartOnly=true
    • User=odoo
    • Group=odoo
    • ExecStart=/usr/bin/python3 /opt/odoo/odoo-server/odoo-bin -c /etc/odoo-server.conf
    • StandardOutput=journal+console
    • KillMode=mixed
    •  
    • [Install]
    • WantedBy=multi-user.target
    •  
    • # # #
    •  
    • sudo systemctl daemon-reload
    • sudo systemctl enable odoo-server
  15. Jalankan Server
    • sudo systemctl start odoo-server
    • sudo systemctl status odoo-server # melihat status service odoo
    • sudo systemctl stop odoo-server # menghentikan service odoo
    • sudo systemctl restart odoo-server # merestart service odoo
  16. Instal Free SSL
    • sudo apt install -y nginx
    • sudo apt install -y python3-certbot-nginx
    • sudo apt install -y software-properties-common
    •  
    • sudo rm /etc/nginx/sites-available/default
    • sudo nano /etc/nginx/sites-available/odoo-server
    •  
    • # # # replace isi file dengan baris dibawah ini # # #
    •  
    • # Odoo servers
    • upstream odoo-server {
    •  server 127.0.0.1:8069;
    • }
    •  
    • upstream odoo-chat {
    •  server 127.0.0.1:8072;
    • }
    •  
    • # HTTP -> HTTPS
    • server {
    •     listen 80;
    •     server_name ismata.co.id;
    •  
    •     include snippets/letsencrypt.conf;
    •     return 301 https://ismata.co.id$request_uri;
    • }
    •  
    • # WWW -> NON WWW
    • server {
    •     listen 443 ssl http2;
    •     server_name ismata.co.id;
    •  
    •     ssl_certificate /etc/letsencrypt/live/ismata.co.id/fullchain.pem;
    •     ssl_certificate_key /etc/letsencrypt/live/ismata.co.id/privkey.pem;
    •     ssl_trusted_certificate /etc/letsencrypt/live/ismata.co.id/chain.pem;
    •     include snippets/ssl.conf;
    •     include snippets/letsencrypt.conf;
    •  
    •     return 301 https://ismata.co.id$request_uri;
    • }
    •  
    • server {
    •     listen 443 ssl http2;
    •     server_name ismata.co.id;
    •  
    •     proxy_read_timeout 720s;
    •     proxy_connect_timeout 720s;
    •     proxy_send_timeout 720s;
    •  
    •     # Proxy headers
    •     proxy_set_header X-Forwarded-Host $host;
    •     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    •     proxy_set_header X-Forwarded-Proto $scheme;
    •     proxy_set_header X-Real-IP $remote_addr;
    •  
    •     # SSL parameters
    •     ssl_certificate /etc/letsencrypt/live/ismata.co.id/fullchain.pem;
    •     ssl_certificate_key /etc/letsencrypt/live/ismata.co.id/privkey.pem;
    •     ssl_trusted_certificate /etc/letsencrypt/live/ismata.co.id/chain.pem;
    •     include snippets/ssl.conf;
    •     include snippets/letsencrypt.conf;
    •  
    •     # log files
    •     access_log /var/log/nginx/odoo.access.log;
    •     error_log /var/log/nginx/odoo.error.log;
    •  
    •     # Handle longpoll requests
    •     location /longpolling {
    •         proxy_pass http://odoo-chat;
    •     }
    •  
    •     # Handle / requests
    •     location / {
    •        proxy_redirect off;
    •        proxy_pass http://odoo-server;
    •     }
    •  
    •     # Cache static files
    •     location ~* /web/static/ {
    •         proxy_cache_valid 200 90m;
    •         proxy_buffering on;
    •         expires 864000;
    •         proxy_pass http://odoo-server;
    •     }
    •  
    •     # Gzip
    •     gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    •     gzip on;
    • }
    •  
    • # # #
    •  
    • sudo ln -s /etc/nginx/sites-available/odoo-server /etc/nginx/sites-enabled/
    •  
    • sudo systemctl restart nginx
    • sudo certbot --nginx -d ismata.co.id
    • sudo systemctl restart nginx
    • sudo systemctl restart odoo-server
    • sudo certbot renew --dry-run
  17. Ganti ismata.co.id dengan nama domain yang diinginkan

Sekian penjelasan dari saya semoga membantu teman-teman semua.

Komentar