- docker-compose.yml
version: '3'
services:
nginx:
image: nginx:latest
container_name: webserver
restart: unless-stopped
ports:
- 80:80
- 443:443
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
- ./ssl:/ssl/
db:
image: postgres:12
restart: unless-stopped
environment:
- POSTGRES_USER=odoo # Set value of postgres credential
- POSTGRES_PASSWORD=seCRETpassWORD
- POSTGRES_DB=postgres
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdata # set postgresql data persistence
ports:
- "5432:5432"
odoo:
image: odoo:13.0
# build: .
container_name: odoo
restart: unless-stopped
volumes:
- ./addons-enterprise:/mnt/enterprise-addons # Mount volume between host and container, host_dir:container_dir
- ./addons-extra:/mnt/extra-addons
- ./config:/etc/odoo
- odoo-web-data:/var/lib/odoo
ports:
- "8069:8069"
depends_on:
- db # set depends on postgresql db
environment:
- HOST=db
- USER=odoo
- PASSWORD=seCRETpassWORD
volumes:
odoo-web-data:
odoo-db-data:- buat folder ssl, nginx, config, addons-extra, addons-enterprise
- copy paste file
.cert, .key, .ca-bundleke foldersslyg kita dapat ketika beli ssl comodo - gabung menjadi
.pemmisalcat nama-file.crt nama-file.key nama-file.ca-bundle > nama-file.pemreferensi https://www.novri.web.id/2021/02/cara-install-ssl-di-vps-nginx-ubuntu.html - buat file
nginx.confdi folder nginx:
events { }
http {
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name nama-domain-kita.com;
return 301 https://nama-domain-kita.com$request_uri;
}
server {
listen 443 ssl;
server_name nama-domain-kita.com;
ssl_certificate /ssl/nama-certificate.pem;
ssl_certificate_key /ssl/nama-private-key.key;
access_log /var/log/nginx/data-access.log combined;
location / {
proxy_pass http://odoo:8069/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect http://odoo:8069/ $scheme://$http_host/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 20d;
proxy_buffering off;
}
}
}
- buat file
odoo.confdi folder config, isinya menyesuaikan konfigurasi odoo, refernsi https://hub.docker.com/_/odoo - run
docker-compose up
image atau image odoo, postgres, nginx bisa menyesuaikan atau bild custom.