---
weight: 4
title: "Apuntes de Odoo"
date: 2022-04-19T11:35:38+0200
draft: false
summary: "Notas de Odoo un CRM de software libre"
categories:
- notes
tags:
- crm
- odoo
- python
---


{{< admonition type=danger title="Work in Progress" open=true >}}

Estos apuntes **NO ESTÁN ACABADOS** son sólo para uso personal.

{{< /admonition >}}

## ¿Qué es Odoo?

## Instalación de Odoo 15.0 en Linux Mint Una

Básicamente he seguido las indicaciones de la documentación oficial de la version 15.0 que podemos ver [aquí](https://www.odoo.com/documentation/15.0/administration/install/install.html#id7).

- Yo he optado por hacer un fork en mi github y clonar desde mi fork
- Además he creado un _virtualenv_ con pyenv para ejecutar Odoo

```bash
mkdir odooTest
pyenv virtualenv 3.9.6 ve_odooTest
pyenv local ve_odooTest
my_ve                                 # Esto instala mis bibliotecas básicas de python y el pylsp
git clone git@github.com:salvari/odoo.git
```

Debemos comprobar que tenemos instaladas las dependencias básicas de nuestro SO:

```bash
sudo apt install python3-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev \
    libtiff5-dev libjpeg8-dev libopenjp2-7-dev zlib1g-dev libfreetype6-dev \
    liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev libpq-dev
```

Y dentro de nuestro _virtualenv_ instalar las dependencias Python de Odoo:

```bash
cd odooTest/odoo
pyenv which pip    # para asegurarnos de donde estamos
pip install -r ./requirements.txt
```

Yo tengo ya instalado en mi sistema _wkhtmltopdf_

Necesitamos la base de datos _Postgress_, yo la voy a instalar aislada en un contenedor Docker, así que en nuestro linux instalamos sólo el cliente:

```bash
sudo apt install postgresql-client
docker pull postgres
docker volume create postgres-data
docker run -d --name postgres-server -p 5432:5432 -v postgres-data:/var/lib/postgresql/data -e "POSTGRES_PASSWORD=la_password" postgres
```

Una vez instalada con nuestro cliente podemos conectarnos y crear el usuario para Odoo:

```bash
psql -h 127.0.0.1 -U postgres
create database odoodb;
create user odoo with encrypted password 'odoopass';
grant all privileges on database odoodb to odoo;
```


Ya tenemos ***Odoo*** instalado y la base de datos con su usuario dedicado preparada en nuestro _Postgresql_ así que podemos arrancar el servidor (asegúrate de tener el _virtualenv_ activo):

```bash
/odoo-bin --addons=./addons --db_host=127.0.0.1 --db_user=odoo --database=odoodb --db_password=odooPass
```


El usuario por defecto para hacer login es `admin` con password `admin`. Deberíamos crear otro usuario administrador cuanto antes y borrar el que viene por defecto.


## Referencias

- Odoo Developer Tutorials: [Getting Started](https://www.odoo.com/documentation/15.0/developer/howtos/rdtraining/01_architecture.html)
