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
- Instal Docker di Ubuntu 22.04
- 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
,postgres
,nginx
dancertbot
. - 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.