Paso #1
- En este paso no existe base de datos
- Odoo se instala desde un archivo docker-compose.yml
- Véase como estamos exponiendo el puerto 7069 y lo estamos redirigiendo al puerto 8069 de nuestro contenedor, pudiera ser cualquier puerto en vez del 7069 siempre y cuando sea un puerto que no esté en uso para evitar conflictos en nuestro docker.
- El archivo docker-compose.yml hace uso de una red previamente creada, en este caso la red se llama tidy_net (véase el artículo como crear una red en docker), en este fragmento de código estamos pidiendo a docker que a nuestro container le asigne la ip 172.21.0.6 (solo lo hará si la IP está disponible)
- Véase el fragmento de configuración environment aquí estamos apuntando al servidor de base de datos (postgres) y estamos usando un usuario y contraseña previamente creados. Dicho usuario en la base de datos postgres tiene privilegios de tipo SuperUser
version: "3.8"
services:
odoo:
image: odoo
restart: unless-stopped
ports:
- "7069:8069"
volumes:
- "./config:/etc/odoo"
- "../../volumes/odoodev/odoo:/var/lib/odoo"
- "../../volumes/odoodev/addons:/mnt/extra-addons"
networks:
tidy_net:
ipv4_address: 172.21.0.6
networks:
default:
external:
name: tidy_net
tidy_net:
external: true
- En el volumen ./config tendremos un archivo llamdo odoo.conf es decir ./config/odoo.conf
- Entre las configuraciones básicas más importantes hasta este momento tenemos:
[options]
; admin_passwd es la contraseña encriptada para proteger y
; administrar las bases de datos (desde la versión web de odoo)
admin_passwd = master_password_encrypted
db_host = 172.21.0.2
db_password = string_password
db_user = odoo_user
- Para crear el servicio de odoo es necesario ir a la carpeta de odoo (donde está el docker-compose.yml)
docker-compose up -d odoo
- Podemos comprobar que el container con odoo ha arrancado en:
http://localhost:7069
- Para entrar el contenedor de odoo
docker exec -ti odoo_container bash
- Una vez adentro del contenedor se puede ir al siguiente programa y con -h se puede aprender todos los comandos que éste soporta
/usr/bin/odoo -h
Paso #2
- Si todo el Paso #1 ha funcionado bien podemos terminar de configurar odoo, ya sea por el navegador o por nuestra terminal.
- Desde el navegador podemos ir a http://localhost:7069
- Master Password: Definimos una contraseña maestra para las bases de datos (ésta nos ayudará a crear y restaurar respaldos de las bases de datos; y nos permitirá eliminar las bases de datos).
- Database Name: Definimos un nombre para nuestra base de datos
- Email: Definimos un email (nos servirá para iniciar sesión como administrador)
- Password: Definimos una contraseña
- Phone number: Definimos un número de teléfono
- Language: Definimos lenguaje
- Country: Definimos país
- Demo data: Opcionalmente podemos crear datos dummy
- Desde la terminal
# Entramos al container y creamos la base de datos
docker exec -ti odoo_container bash
# Desde el container que tiene odoo
# nos conectamos al contenedor de postgres
# y creamos una base de datos llamada
# odoodevdb; luego creamos y llenamos
# las tablas con la información base
/usr/bin/odoo -d odoodb -i base --no-http
# luego salimos del container y lo reiniciamos
docker restart app_app_1
# Con el comando anterior se habrá creado el usuario admin
# y la contraseña admin automáticamente
# el cual podremos usar en http://localhost:7069/web/login
Paso #3
- Para poner contraseña maestra a las bases de datos vía web (por primera vez), respaldar, restaurar y borrar la base de datos vaya a:
http://localhost:7069/web/database/manager