GNU/Linux >> Linux Esercitazione >  >> Linux

Installa Odoo 15 usando Docker, Nginx su Ubuntu 22.04

Installa Odoo 15 utilizzando Docker Compose, Nginx, SSL su Ubuntu 22.04 . In questo tutorial imparerai come installare e configurare Odoo usando Docker e Docker Compose e configurare Nginx e Let's Encrypt SSL e anche installare PostgreSQL. L'installazione di Odoo tramite Docker Compose è il modo più semplice rispetto all'installazione manuale.

Odoo è un software gestionale self-hosted per gestire un'azienda con un'esperienza utente di prim'ordine. Le applicazioni all'interno di Odoo sono perfettamente integrate tra loro, consentendoti di automatizzare completamente i tuoi processi aziendali facilmente.

Prerequisiti

  1. Installa Docker su Ubuntu 22.04
  2. Installa Docker Compose su Ubuntu 22.04.

Assicurati di aver completato tutti i passaggi sopra menzionati

  • Dominio puntato all'indirizzo IP del tuo server
  • Docker installato e configurato
  • Docker Compose installato e configurato

Fase 1:crea una directory di progetto

SSH al tuo server e inizia creando una nuova directory di progetto denominata odoo-project . Puoi anche nominarlo come preferisci.

mkdir odoo-project

Passaggio 2:crea Docker Componi file YAML

Ora naviga all'interno della directory del progetto e crea un nuovo file docker-compose.yml con la seguente configurazione.

cd odoo-project
nano docker-compose.yml

Incolla la seguente configurazione.

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:

Premi CTRL + X seguito da Y e Enter per salvare il file ed uscire.

Ecco i dettagli della configurazione.

  • versione :Componi la versione del file compatibile con Docker Engine. Puoi verificare la compatibilità qui.
  • servizi :qui abbiamo 4 servizi denominati odoo , postgresnginxcertbot .
  • immagine :utilizziamo le ultime immagini di Odoo 15, Postgres 14, Nginx e Certbot disponibili nell'hub Docker.
  • volumi :
    • nginx/conf :qui collocheremo il file di configurazione di Nginx da sincronizzare con la cartella Nginx conf.d predefinita all'interno del contenitore.
    • etc/odoo :qui posizioneremo la configurazione del database di Odoo 15.
    • cedtbot/conf :è qui che riceveremo il certificato SSL e questo verrà sincronizzato con la cartella che desideriamo all'interno del contenitore.
    • ports :configura il container per l'ascolto sulle porte elencate.
    • command :il comando utilizzato per ricevere il certificato SSL.

Fase 3:crea la configurazione di Odoo

Ora puoi utilizzare la configurazione Odoo personalizzata all'interno della directory come indicato nel file yml nel servizio Oddo.

mkdir -p etc/odoo

Crea un nuovo file chiamato odoo.conf

nano etc/odoo/odoo.conf

Sostituisci i valori evidenziati corrispondenti ai tuoi valori PostgreSQL.

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

Qui useremo il nome host uguale al nome del servizio PostgreSQL.

Fase 4:Configura Nginx

Ora puoi creare il file di configurazione predefinito all'interno della directory come indicato nel file yml nel servizio Nginx.

mkdir -p nginx/conf

Crea un nuovo file chiamato default.conf

nano nginx/conf/default.conf

Incolla la seguente configurazione e sostituisci i valori appropriati con il tuo nome di dominio.

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;
    }
}

Passaggio 5:distribuisci Odoo con Docker

Ora puoi effettuare la distribuzione usando il comando seguente.

Avvia i contenitori usando il seguente comando, riceverai i certificati SSL una volta avviati i contenitori.

docker-compose up -d

Una volta avviati tutti i contenitori, vedrai che verranno create directory aggiuntive per SSL insieme al tuo docker-compose.yml file.

La directory certbot contiene tutti i file relativi ai tuoi certificati SSL.

Per visualizzare i contenitori puoi eseguire il seguente comando.

docker-compose ps

Passaggio 6:configura SSL per Odoo in Docker

Dopo aver ricevuto il certificato Let's Encrypt SSL, puoi configurare HTTPS e impostare il reindirizzamento su HTTPS.

Modifica il default.conf e apportare le seguenti modifiche.

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;
    }
}

Ora riavvia il servizio Nginx per caricare le nuove configurazioni.

docker-compose restart nginx

Fase 7:imposta Odoo

Ora puoi visitare il tuo nome di dominio sul tuo browser web. Vedrai la pagina simile a quella qui sotto. Qui puoi creare il database e l'utente amministratore per il tuo Odoo.

Compila tutti i valori appropriati e fai clic su Crea database. Ora Odoo sarà pronto per l'uso.

Conclusione

Scopri una panoramica completa dell'applicazione di vendita Odoo con suggerimenti sull'utilizzo di configurazioni avanzate.

Ora hai imparato come installare Odoo 15 sul tuo Ubuntu 22.04 con Docker Compose, Nginx e proteggerlo con Let's Encrypt.

Grazie per il tuo tempo. In caso di problemi o feedback, lasciare un commento qui sotto.


Linux
  1. Come installare WordPress usando Nginx su Ubuntu 18.04

  2. Come installare Docker su Ubuntu 18.04 / Ubuntu 18.10 / Ubuntu 19.04

  3. Installa Odoo 11 su Ubuntu 16.04

  4. Come installare Docker su Ubuntu 18.04?

  5. Installa Nginx su Ubuntu

Come installare Odoo 14 su Ubuntu

Come installare Gitea su Ubuntu usando Docker

Come installare WordPress usando Nginx in Ubuntu Linux

Installa Nginx su Ubuntu 18.04

Come installare Docker su Ubuntu 18.04

Come installare NGINX su Ubuntu 18.04