GNU/Linux >> Belajar Linux >  >> Linux

Instal Odoo 15 menggunakan Docker, Nginx di Ubuntu 22.04

Instal Odoo 15 menggunakan Docker Compose, Nginx, SSL di Ubuntu 22.04. Dalam tutorial ini Anda akan belajar cara menginstal dan mengatur Odoo menggunakan Docker dan Docker Compose dan mengkonfigurasi Nginx dan Let's Encrypt SSL dan juga menginstal PostgreSQL. Menginstal Odoo menggunakan Docker Compose adalah cara termudah dibandingkan menginstal secara manual.

Odoo adalah perangkat lunak manajemen yang dihosting sendiri untuk menjalankan bisnis dengan pengalaman pengguna terbaik. Aplikasi dalam Odoo terintegrasi sempurna satu sama lain, memungkinkan Anda untuk sepenuhnya mengotomatiskan proses bisnis Anda dengan mudah.

Prasyarat

  1. Instal Docker di Ubuntu 22.04
  2. Instal Docker Compose di Ubuntu 22.04.

Pastikan Anda telah menyelesaikan semua langkah yang disebutkan di atas

  • Domain menunjuk ke alamat IP server Anda
  • Docker diinstal dan dikonfigurasi
  • Docker Compose diinstal dan dikonfigurasi

Langkah 1:Buat direktori proyek

SSH ke server Anda dan mulai dengan membuat direktori proyek baru bernama odoo-project . Anda juga dapat memberi nama apa pun yang Anda butuhkan.

mkdir odoo-project

Langkah 2:Buat Docker Compose file YAML

Sekarang navigasikan ke dalam direktori proyek dan buat file docker-compose.yml baru dengan konfigurasi berikut.

cd odoo-project
nano docker-compose.yml

Tempelkan konfigurasi berikut.

version: '3.9'
services:
    odoo:
        container_name: odoo
        image: odoo:15.0
        volumes:
            - ./addons-extra:/mnt/extra-addons
            - ./etc/odoo:/etc/odoo
            - odoo-web-data:/var/lib/odoo
        ports:
            - "8069:8069"
        depends_on:
            - postgres
    postgres:
        image: postgres:14
        environment:
            - POSTGRES_DB=postgres
            - POSTGRES_PASSWORD=odoo
            - POSTGRES_USER=odoo
            - PGDATA=/var/lib/postgresql/data/pgdata
        volumes:
            - odoo-db-data:/var/lib/postgresql/data/pgdata
    nginx:
        container_name: nginx
        image: nginx:latest
        restart: unless-stopped
        ports:
            - 80:80
            - 443:443
        volumes:
            - ./nginx/conf:/etc/nginx/conf.d
            - ./certbot/conf:/etc/nginx/ssl
            - ./certbot/data:/var/www/html
    certbot:
        container_name: certbot
        image: certbot/certbot:latest
        command: certonly --webroot --webroot-path=/var/www/html -- email [email protected] --agree-tos --no-eff-email -d domain.com -d www.domain.com
        volumes:
            - ./certbot/conf:/etc/letsencrypt
            - ./certbot/logs:/var/log/letsencrypt
            - ./certbot/data:/var/www/html
volumes:
    odoo-web-data:
    odoo-db-data:

Tekan CTRL + X diikuti oleh Y dan Enter untuk menyimpan file dan keluar.

Berikut detail konfigurasinya.

  • versi :Buat versi file yang kompatibel dengan Docker Engine. Anda dapat memeriksa kompatibilitasnya di sini.
  • layanan :di sini kami memiliki 4 layanan bernama odoo , postgresnginx dan certbot .
  • gambar :Kami menggunakan gambar Odoo 15, Postgres 14, Nginx dan Certbot terbaru yang tersedia di hub Docker.
  • volume :
    • nginx/conf :disini kita akan menempatkan file konfigurasi Nginx untuk disinkronkan dengan folder default Nginx conf.d di dalam container.
    • etc/odoo :disini kita akan menempatkan konfigurasi database Odoo 15.
    • cedtbot/conf :ini adalah tempat kita akan menerima sertifikat SSL dan ini akan disinkronkan dengan folder yang kita inginkan di dalam container.
    • ports :konfigurasikan container untuk mendengarkan port yang terdaftar.
    • command :perintah yang digunakan untuk menerima sertifikat SSL.

Langkah 3:Buat Konfigurasi Odoo

Sekarang Anda dapat menggunakan konfigurasi Odoo khusus di dalam direktori seperti yang disebutkan dalam file yml di layanan Oddo.

mkdir -p etc/odoo

Buat file baru bernama odoo.conf

nano etc/odoo/odoo.conf

Ganti nilai yang disorot sesuai dengan nilai PostgreSQL Anda.

[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = postgres
db_user = odoo
db_password = odoo

Di sini kita akan menggunakan nama host yang sama dengan nama layanan PostgreSQL.

Langkah 4:Konfigurasi Nginx

Sekarang Anda dapat membuat file konfigurasi default di dalam direktori seperti yang disebutkan dalam file yml di layanan Nginx.

mkdir -p nginx/conf

Buat file baru bernama default.conf

nano nginx/conf/default.conf

Tempel konfigurasi berikut dan ganti nilai yang sesuai dengan nama domain Anda.

server {
    listen [::]:80;
    listen 80;

    location ~ /.well-known/acme-challenge {
        allow all;
        root /var/www/html;
    }

    location / {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_pass http://odoo:8069;
    }

    location ~* /web/static/ {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_pass http://odoo:8069;
    }
}

Langkah 5:Terapkan Odoo dengan Docker

Sekarang Anda dapat melakukan penyebaran menggunakan perintah berikut.

Mulai container menggunakan perintah berikut, Anda akan menerima sertifikat SSL setelah container dimulai.

docker-compose up -d

Setelah semua wadah dimulai, Anda akan melihat direktori tambahan untuk SSL akan dibuat di samping docker-compose.yml . Anda berkas.

Direktori certbot menyimpan semua file yang terkait dengan sertifikat SSL Anda.

Untuk melihat kontainer, Anda dapat menjalankan perintah berikut.

docker-compose ps

Langkah 6:Konfigurasi SSL untuk Odoo di Docker

Karena Anda telah menerima sertifikat Let's Encrypt SSL, Anda dapat mengonfigurasi HTTPS dan mengatur pengalihan ke HTTPS.

Edit default.conf dan buat perubahan berikut.

sudo nano nginx/conf/default.conf
server {
    listen [::]:80;
    listen 80;

    server_name domain.com;

    return 301 https://www.domain.com$request_uri;
}

server {
    listen [::]:443 ssl http2;
    listen 443 ssl http2;

    server_name domain.com;

    ssl_certificate /etc/nginx/ssl/live/domain.com/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/live/domain.com/privkey.pem;

    return 301 https://www.domain.com$request_uri;
}
server {
    listen [::]:443 ssl http2;
    listen 443 ssl http2;

    server_name domain.com;

    ssl_certificate /etc/nginx/ssl/live/domain.com/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/live/domain.com/privkey.pem;

    location ~ /.well-known/acme-challenge {
        allow all;
        root /var/www/html;
    }

    location / {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_pass http://odoo:8069;
    }

    location ~* /web/static/ {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_pass http://odoo:8069;
    }
}

Sekarang restart layanan Nginx untuk memuat konfigurasi baru.

docker-compose restart nginx

Langkah 7:Siapkan Odoo

Sekarang Anda dapat mengunjungi nama domain Anda di browser web Anda. Anda akan melihat halaman yang mirip dengan yang di bawah ini. Di sini Anda dapat membuat database dan pengguna admin untuk Odoo Anda.

Isi semua nilai yang sesuai dan klik buat database. Sekarang Odoo akan siap digunakan.

Kesimpulan

Pelajari panduan lengkap Aplikasi Penjualan Odoo dengan tips menggunakan konfigurasi lanjutan.

Sekarang Anda telah mempelajari cara menginstal Odoo 15 di Ubuntu 22.04 Anda dengan Docker Compose, Nginx dan mengamankannya dengan Let's Encrypt.

Terima kasih atas waktunya. Jika Anda menghadapi masalah atau umpan balik, silakan tinggalkan komentar di bawah.


Linux
  1. Cara Menginstal WordPress Menggunakan Nginx di Ubuntu 18.04

  2. Cara Menginstal Docker di Ubuntu 18.04 / Ubuntu 18.10 / Ubuntu 19.04

  3. Instal Odoo 11 di Ubuntu 16.04

  1. Cara Menginstal Odoo di Ubuntu

  2. Bagaimana Cara Menginstal Docker di Ubuntu 18.04?

  3. Instal Nginx di Ubuntu

  1. Cara menginstal Docker di Ubuntu 22.04

  2. Cara Menginstal Odoo 15 di Ubuntu 20.04

  3. Cara Menginstal Odoo 11 di Ubuntu 16.04