GNU/Linux >> Tutoriales Linux >  >> Linux

Instale Odoo 15 usando Docker, Nginx en Ubuntu 22.04

Instale Odoo 15 usando Docker Compose, Nginx, SSL en Ubuntu 22.04. En este tutorial, aprenderá cómo instalar y configurar Odoo usando Docker y Docker Compose y configurar Nginx y Let's Encrypt SSL y también instalar PostgreSQL. Instalar Odoo usando Docker Compose es la forma más fácil en comparación con la instalación manual.

Odoo es un software de gestión autohospedado para administrar un negocio con una experiencia de usuario de primer nivel. Las aplicaciones dentro de Odoo están perfectamente integradas entre sí, lo que le permite automatizar completamente sus procesos comerciales fácilmente.

Requisitos

  1. Instalar Docker en Ubuntu 22.04
  2. Instalar Docker Compose en Ubuntu 22.04.

Asegúrese de haber completado todos los pasos mencionados anteriormente

  • El dominio apuntó a la dirección IP de su servidor
  • Docker instalado y configurado
  • Docker Compose instalado y configurado

Paso 1:Crear un directorio de proyectos

SSH a su servidor y comience creando un nuevo directorio de proyecto llamado odoo-project . También puedes ponerle el nombre que necesites.

mkdir odoo-project

Paso 2:Crear un archivo YAML de Docker Compose

Ahora navegue dentro del directorio del proyecto y cree un nuevo archivo docker-compose.yml con la siguiente configuración.

cd odoo-project
nano docker-compose.yml

Pegue la siguiente configuración.

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:

Presiona CTRL + X seguido de Y y Enter para guardar el archivo y salir.

Aquí están los detalles de configuración.

  • versión :Compone la versión del archivo que es compatible con Docker Engine. Puede comprobar la compatibilidad aquí.
  • servicios :aquí tenemos 4 servicios llamados odoo , postgresnginxcertbot .
  • imagen :Utilizamos las últimas imágenes de Odoo 15, Postgres 14, Nginx y Certbot disponibles en Docker hub.
  • volúmenes :<último>
  • nginx/conf :aquí colocaremos el archivo de configuración de Nginx para que se sincronice con la carpeta Nginx conf.d predeterminada dentro del contenedor.
  • etc/odoo :aquí colocaremos la configuración de la base de datos de Odoo 15.
  • cedtbot/conf :aquí es donde recibiremos el certificado SSL y este se sincronizará con la carpeta que deseamos dentro del contenedor.
  • ports :configurar el contenedor para escuchar en los puertos enumerados.
  • command :el comando utilizado para recibir el certificado SSL.

Paso 3:Crear la configuración de Odoo

Ahora puede usar la configuración personalizada de Odoo dentro del directorio como se menciona en el archivo yml en el servicio de Oddo.

mkdir -p etc/odoo

Crea un nuevo archivo llamado odoo.conf

nano etc/odoo/odoo.conf

Reemplace los valores resaltados correspondientes a sus valores de PostgreSQL.

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

Aquí usaremos el mismo nombre de host que el nombre del servicio de PostgreSQL.

Paso 4:configurar Nginx

Ahora puede crear el archivo de configuración predeterminado dentro del directorio como se menciona en el archivo yml en el servicio Nginx.

mkdir -p nginx/conf

Crea un nuevo archivo llamado default.conf

nano nginx/conf/default.conf

Pegue la siguiente configuración y reemplace los valores apropiados con su nombre de 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;
    }
}

Paso 5:implementar Odoo con Docker

Ahora puede realizar la implementación con el siguiente comando.

Inicie los contenedores con el siguiente comando, recibirá los certificados SSL una vez que se inicien los contenedores.

docker-compose up -d

Una vez que se inicien todos los contenedores, verá que se crearán directorios adicionales para SSL junto con su docker-compose.yml archivo.

El directorio certbot contiene todos los archivos relacionados con sus certificados SSL.

Para ver los contenedores puede ejecutar el siguiente comando.

docker-compose ps

Paso 6:Configurar SSL para Odoo en Docker

Como ha recibido el certificado SSL de Let's Encrypt, puede configurar HTTPS y configurar la redirección a HTTPS.

Edite el default.conf y realice los siguientes cambios.

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

Ahora reinicie el servicio Nginx para cargar las nuevas configuraciones.

docker-compose restart nginx

Paso 7:Configurar Odoo

Ahora puede visitar su nombre de dominio en su navegador web. Verá una página similar a la siguiente. Aquí puede crear la base de datos y el usuario administrador para su Odoo.

Complete todos los valores apropiados y haga clic en crear base de datos. Ahora Odoo estará listo para usar.

Conclusión

Aprenda un recorrido completo por la aplicación de ventas de Odoo con consejos sobre el uso de configuraciones avanzadas.

Ahora ha aprendido cómo instalar Odoo 15 en su Ubuntu 22.04 con Docker Compose, Nginx y asegurarlo con Let's Encrypt.

Gracias por tu tiempo. Si tiene algún problema o comentario, deje un comentario a continuación.


Linux
  1. Cómo instalar WordPress usando Nginx en Ubuntu 18.04

  2. Cómo instalar Docker en Ubuntu 18.04 / Ubuntu 18.10 / Ubuntu 19.04

  3. Instale Odoo 11 en Ubuntu 16.04

  4. ¿Cómo instalar Docker en Ubuntu 18.04?

  5. Instalar Nginx en Ubuntu

Cómo instalar Odoo 14 en Ubuntu

Cómo instalar Gitea en Ubuntu usando Docker

Cómo instalar WordPress usando Nginx en Ubuntu Linux

Instalar Nginx en Ubuntu 18.04

Cómo instalar Docker en Ubuntu 18.04

Cómo instalar NGINX en Ubuntu 18.04