Menú: secciones y guías

Instalar Odoo 19 Community en Ubuntu 24.04, Docker o Windows (y dejarlo listo para España)

Instalar Odoo 19 Community paso a paso: Ubuntu 24.04 con el repositorio oficial, Docker con la etiqueta 19.0 o Windows para pruebas, con wkhtmltopdf, workers y la base en español.

Odoo 19 Tutorial · Nivel intermedio

Pasos verificados el · actualizado el · por David Crespo Muñoz

Respuesta corta

Para producción, Ubuntu 24.04 con el repositorio oficial de Odoo 19: PostgreSQL de Ubuntu, wkhtmltopdf 0.12.6.1-3 (el paquete de jammy, el mismo que usa la imagen oficial de Docker) y apt install odoo. Docker sirve para pruebas y entornos propios si fijas la etiqueta odoo:19.0, porque odoo:latest ya es Odoo 20. Windows, solo para un usuario y pruebas, según la propia documentación. Al crear la base elige «Spanish / Español» y España: así se instala la localización española al activar Facturación.

Edición
Community (Enterprise usa el mismo método con su paquete de pago)
Módulos
basewebl10n_es
Dónde se hace
Facturación, Configuración, Ajustes
Otras versiones
Comandos y requisitos comprobados el 1 de noviembre de 2026 en la documentación de instalación de Odoo 19, en el código de la rama 19.0 (release.py, paquete debian, instalador de Windows) y en la imagen oficial de Docker. Odoo 20 ya es la versión más reciente; para instalarla cambia 19.0 por 20.0 en el repositorio y en la imagen, y revisa sus requisitos.
En esta página
  1. Qué método elegir
  2. Lo que pide Odoo 19
  3. 1.Instala PostgreSQL
  4. 2.Instala wkhtmltopdf 0.12.6.1-3
  5. 3.Añade el repositorio de Odoo 19 e instala
  6. 4.Comprueba que arranca
  7. 5.Crea la base de datos en español
  8. 6.Cierra la puerta antes de abrirla a internet
  9. 7.Workers y memoria
  10. 8.Copias de seguridad desde el primer día
  11. Con Docker
  12. En Windows
  13. Déjalo listo para España
  14. Resultado
  15. Errores frecuentes
  16. Preguntas frecuentes
  17. Fuentes

Antes de empezar

  • Un servidor o máquina virtual con Ubuntu 24.04 LTS y acceso con sudo, o Docker con Docker Compose, o un PC con Windows para pruebas.
  • Para un servidor abierto a internet, un dominio apuntando a su IP y un certificado HTTPS (el proxy se monta en el paso 6).
  • Odoo Online no se instala: si vas a usarlo, salta directamente a dejarlo listo para España.

Instalar Odoo es la parte fácil. Lo que da problemas semanas después son tres cosas que la mayoría de guías se saltan: el wkhtmltopdf correcto para que salgan los PDF, el número de workers y la base de datos creada con el idioma y el país equivocados. Esta guía instala Odoo 19 Community por los tres caminos oficiales y termina con la base lista para la localización española.

Todo está comprobado en la documentación de instalación de Odoo 19 y en el código de la rama 19.0 el 1 de noviembre de 2026. Las etiquetas del gestor de bases de datos van en inglés porque esa pantalla no está traducida en el código.

Qué método elegir

MétodoPara qué sirveLo que dice la documentación de Odoo 19
Ubuntu 24.04 con el repositorio oficialProducción en servidor propioPaquete .deb para Ubuntu Noble (24.04 LTS). Se instala como servicio y se actualiza con apt-get upgrade. Solo Community
Paquete .deb descargadoProducción, también EnterprisePaquetes Community y Enterprise en la página de descargas; Enterprise exige estar identificado como cliente on-premise o partner
Docker (imagen oficial odoo)Pruebas, desarrollo y servidores que ya usan contenedoresImagen Community; necesita un PostgreSQL aparte; Enterprise se monta como carpeta de módulos
WindowsPruebas o un solo usuario en local«Se desaconseja el despliegue en producción». Sin modo multiproceso
Odoo OnlineSin servidorNo se instala nada y no admite módulos de terceros

Si dudas, Ubuntu 24.04. Es la única distribución que la documentación de Odoo 19 da como compatible con su .deb.

Lo que pide Odoo 19

PiezaRequisitoDónde está
SistemaUbuntu 24.04 LTS para el .deb; Fedora 42 para el .rpmDocumentación de instalación
PythonDe la 3.10 a la 3.14release.py: MIN_PY_VERSION = (3, 10), MAX_PY_VERSION = (3, 14)
PostgreSQL13 o superiorrelease.py: MIN_PG_VERSION = 13. Ubuntu 24.04 instala la 16
wkhtmltopdf0.12.6, instalado a mano (no con pip)Documentación: sin esa versión, sin cabeceras ni pies en los PDF
Puertos8069 (web) y 8072 (chat y websocket con workers)Valores por defecto de http_port y gevent_port
MemoriaUnos 325 MB por proceso de Odoo, de mediaFórmula de la documentación, en el paso 7

Paso 1. Instala PostgreSQL

El paquete de Odoo da por hecho que PostgreSQL está en la misma máquina. Con el servidor actualizado:

sudo apt update
sudo apt install postgresql -y

En Ubuntu 24.04 esto instala PostgreSQL 16, por encima del mínimo. No crees usuarios a mano: lo hace el paquete de Odoo en el paso 3.

Paso 2. Instala wkhtmltopdf 0.12.6.1-3

Odoo convierte facturas, pedidos y albaranes a PDF con wkhtmltopdf. La documentación pide la 0.12.6 «para que admita cabeceras y pies de página», y la versión del repositorio de Ubuntu no sirve para eso.

El problema de Ubuntu 24.04: la versión 0.12.6.1-3 de wkhtmltopdf/packaging no tiene paquete para noble. Tiene para jammy (22.04), bookworm y bullseye. La salida la da la propia Odoo: su Dockerfile oficial de la 19.0 parte de ubuntu:noble e instala el paquete de jammy, comprobando su huella SHA1. Haz lo mismo:

wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb
echo "967390a759707337b46d1c02452e2bb6b2dc6d59  wkhtmltox_0.12.6.1-3.jammy_amd64.deb" | sha1sum -c -
sudo apt install ./wkhtmltox_0.12.6.1-3.jammy_amd64.deb -y
wkhtmltopdf --version

La segunda línea debe responder OK. La huella es la del Dockerfile de Odoo para amd64; en un servidor ARM el paquete es el jammy_arm64 y su huella es otra (también está en ese Dockerfile).

Paso 3. Añade el repositorio de Odoo 19 e instala

Los tres comandos de la documentación, con la rama 19.0:

wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg
echo 'deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/19.0/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list
sudo apt-get update && sudo apt-get install odoo

Lo que deja hecho el paquete, según su código en la rama 19.0:

  • Un usuario de sistema odoo y un usuario de PostgreSQL odoo con permiso para crear bases de datos (createuser -d -R -S odoo).
  • El fichero de configuración /etc/odoo/odoo.conf, legible solo por odoo.
  • El servicio odoo, que arranca con ese fichero y escribe el registro en /var/log/odoo/odoo-server.log.
  • La carpeta personal del usuario odoo, /var/lib/odoo. Como el odoo.conf del paquete no fija data_dir, Odoo usa la carpeta por defecto del usuario, /var/lib/odoo/.local/share/Odoo, y ahí va el filestore (filestore/ y el nombre de la base): los adjuntos, PDF e imágenes de cada base de datos.

Si prefieres el paquete descargado (o es Enterprise), cambia el último comando por sudo apt install ./ seguido del nombre del .deb. El resto de la guía es igual.

Una instalación de Odoo 19 en Ubuntu 24.04: Nginx con HTTPS reenvía al puerto 8069 y el websocket al 8072; el servicio odoo usa PostgreSQL 16, wkhtmltopdf para los PDF y guarda los adjuntos en /var/lib/odoo/.local/share/Odoo/filestore Esquema. El navegador entra por HTTPS en el puerto 443 de Nginx. Nginx reenvía /websocket al puerto 8072 y el resto al 8069 del servicio odoo. El servicio corre con el usuario odoo, lee /etc/odoo/odoo.conf y escribe el registro en /var/log/odoo/odoo-server.log. Se conecta a PostgreSQL 16 con el usuario odoo, que puede crear bases de datos. Llama a wkhtmltopdf 0.12.6.1-3 para generar los PDF y guarda el filestore, los adjuntos, en /var/lib/odoo/.local/share/Odoo/filestore (el paquete no fija data_dir). Qué hay en el servidor después de los pasos 1 a 6 Navegador HTTPS, 443 Nginx (proxy) certificado web → 8069 websocket → 8072 Servicio odoo (usuario odoo) /etc/odoo/odoo.conf /var/log/odoo/odoo-server.log workers y 1 de tareas (paso 7) admin_passwd, list_db = False, proxy_mode = True (paso 6) PostgreSQL 16 usuario odoo, puede crear bases wkhtmltopdf 0.12.6.1-3 → PDF Filestore adjuntos y PDF Copia diaria = base de PostgreSQL + /var/lib/odoo/.local/share/Odoo/filestore/<base> Una instalación de Odoo 19 en Ubuntu 24.04: Nginx con HTTPS reenvía al puerto 8069 y el websocket al 8072; el servicio odoo usa PostgreSQL 16, wkhtmltopdf para los PDF y guarda los adjuntos en /var/lib/odoo/.local/share/Odoo/filestore Esquema. El navegador entra por HTTPS en el puerto 443 de Nginx. Nginx reenvía /websocket al puerto 8072 y el resto al 8069 del servicio odoo. El servicio corre con el usuario odoo, lee /etc/odoo/odoo.conf y escribe el registro en /var/log/odoo/odoo-server.log. Se conecta a PostgreSQL 16 con el usuario odoo, que puede crear bases de datos. Llama a wkhtmltopdf 0.12.6.1-3 para generar los PDF y guarda el filestore, los adjuntos, en /var/lib/odoo/.local/share/Odoo/filestore (el paquete no fija data_dir). El servidor tras los pasos 1 a 6 Navegador → HTTPS, 443 Nginx (proxy, certificado) / → 8069 · /websocket → 8072 Servicio odoo (usuario odoo) /etc/odoo/odoo.conf /var/log/odoo/odoo-server.log workers y 1 de tareas (paso 7) admin_passwd, list_db, proxy_mode PostgreSQL 16 usuario odoo, puede crear bases wkhtmltopdf 0.12.6.1-3 genera los PDF Filestore: ~odoo/.local/share/Odoo adjuntos y PDF de cada base Copia diaria = base + filestore.
Lo que deja el paquete .deb de Odoo 19 en Ubuntu 24.04 (usuario, odoo.conf, servicio y registro, según la carpeta debian de la rama 19.0) y lo que añade esta guía: PostgreSQL 16 de Ubuntu, wkhtmltopdf 0.12.6.1-3 y el proxy Nginx de la documentación de despliegue de Odoo 19, con los puertos por defecto 8069 y 8072.

Paso 4. Comprueba que arranca

sudo systemctl status odoo
sudo tail -n 50 /var/log/odoo/odoo-server.log

En el registro busca dos líneas. Will use the Wkhtmltopdf binary at dice que Odoo ha encontrado wkhtmltopdf. Si en su lugar sale You need Wkhtmltopdf to print a pdf version of the reports., vuelve al paso 2.

Abre http://IP-del-servidor:8069 en el navegador. Si no carga, revisa el cortafuegos del proveedor: el puerto 8069 tiene que estar abierto mientras no montes el proxy del paso 6, y cerrado después.

Paso 5. Crea la base de datos en español

La primera vez, Odoo abre el gestor de bases de datos. Arriba sale un aviso amarillo: Warning, your Odoo database manager is not protected. y una contraseña maestra generada al azar. Cópiala y guárdala: la pedirá para crear, copiar, borrar o restaurar bases. Mientras no se fija, la contraseña maestra sigue siendo la de fábrica, admin (valor por defecto de admin_passwd en el código), y la documentación recomienda desactivar el gestor en cualquier servidor abierto a internet.

Rellena el formulario así:

Campo (en inglés en Odoo)Qué poner
Master PasswordLa generada, o una tuya larga y aleatoria
Database NameSolo letras, números, _, - y . (por ejemplo, miempresa)
Email y PasswordEl usuario administrador. No uses admin ni contraseñas por defecto
Phone NumberOpcional; va a la ficha de la empresa
LanguageSpanish / Español. No elijas Spanish (Latin America) / Español (América Latina)
CountrySpain
Demo DataSin marcar. La documentación pide no instalar datos de demostración en servidores abiertos a internet

Por qué importa el país. Con Spain, el código de creación de la base pone España y el euro en la empresa. Y la localización española (l10n_es) se instala sola al activar Facturación, porque Odoo solo instala automáticamente un módulo de país si hay al menos una empresa de ese país. Sin país, Facturación arranca con un plan contable genérico.

La zona horaria no se pone sola. Al crear la base, Odoo solo fija la zona horaria de los usuarios si el país tiene una única zona. España tiene tres en la base de datos de zonas horarias (Europe/Madrid, Africa/Ceuta y Atlantic/Canary), así que no pone ninguna. Entra en el menú de tu avatar, Mis preferencias, y elige la Zona horaria de tu oficina. Repite con cada usuario.

Paso 6. Cierra la puerta antes de abrirla a internet

La lista de seguridad de la documentación de Odoo 19 empieza por aquí. Edita /etc/odoo/odoo.conf (con sudo) y deja algo así:

[options]
admin_passwd = una-contraseña-larga-y-aleatoria
db_user = odoo
db_name = miempresa
list_db = False
proxy_mode = True
workers = 5
max_cron_threads = 1
  • admin_passwd: la contraseña maestra del gestor de bases de datos. La documentación propone generarla con python3 -c 'import base64, os; print(base64.b64encode(os.urandom(24)))'.
  • list_db = False: oculta la lista de bases y bloquea el gestor de bases de datos, que según la documentación «no está pensado para producción». Funciona porque db_name dice a Odoo qué base abrir; con varias bases por servidor, usa dbfilter.
  • proxy_mode = True: solo si Odoo queda detrás de un proxy con HTTPS, como Nginx. La documentación trae un ejemplo completo de Nginx que reenvía /websocket al puerto 8072 y lo demás al 8069.

Reinicia con sudo systemctl restart odoo después de cada cambio.

Paso 7. Workers y memoria

Con workers = 0 (el valor por defecto) Odoo funciona en un solo proceso con hilos: vale para probar, no para trabajar con varias personas. En producción la documentación de Odoo 19 da tres reglas:

  • Máximo de workers: (núcleos × 2) + 1.
  • Un worker atiende unos 6 usuarios a la vez.
  • Memoria: el 80 % de las peticiones son ligeras (unos 150 MB) y el 20 % pesadas (unos 1.024 MB), así que cada proceso cuesta de media 0,8 × 150 + 0,2 × 1.024 = 324,8 MB.

Su ejemplo: 4 núcleos y 60 usuarios a la vez. Harían falta 10 workers (60 / 6), pero el máximo es 9; usa 8 workers y 1 de tareas programadas, y 9 × 324,8 MB dan unos 3 GB solo para Odoo, sin contar PostgreSQL.

Con la regla de Odoo 19, un servidor de 4 núcleos admite 8 workers y 1 de tareas programadas, unos 48 usuarios a la vez, y necesita unos 2.923 MB de memoria solo para Odoo Memoria estimada para Odoo según núcleos, con el máximo de workers de la documentación de Odoo 19: 1 núcleo: 2 workers más 1 de tareas, unos 12 usuarios a la vez, 974 MB; 2 núcleos: 4 workers más 1 de tareas, unos 24 usuarios a la vez, 1.624 MB; 4 núcleos: 8 workers más 1 de tareas, unos 48 usuarios a la vez, 2.923 MB; 8 núcleos: 16 workers más 1 de tareas, unos 96 usuarios a la vez, 5.522 MB. Cada proceso, 324,8 MB de media. Memoria para Odoo con el máximo de workers (MB, sin contar PostgreSQL) 1 núcleo 2 workers + 1 de tareas · ~12 usuarios 974 MB 2 núcleos 4 workers + 1 de tareas · ~24 usuarios 1.624 MB 4 núcleos 8 workers + 1 de tareas · ~48 usuarios 2.923 MB 8 núcleos 16 workers + 1 de tareas · ~96 usuarios 5.522 MB Workers = núcleos × 2 + 1; 1 worker ≈ 6 usuarios; cada proceso ≈ 0,8 × 150 + 0,2 × 1.024 = 324,8 MB. Con la regla de Odoo 19, un servidor de 4 núcleos admite 8 workers y 1 de tareas programadas, unos 48 usuarios a la vez, y necesita unos 2.923 MB de memoria solo para Odoo Memoria estimada para Odoo según núcleos, con el máximo de workers de la documentación de Odoo 19: 1 núcleo: 2 workers más 1 de tareas, unos 12 usuarios a la vez, 974 MB; 2 núcleos: 4 workers más 1 de tareas, unos 24 usuarios a la vez, 1.624 MB; 4 núcleos: 8 workers más 1 de tareas, unos 48 usuarios a la vez, 2.923 MB; 8 núcleos: 16 workers más 1 de tareas, unos 96 usuarios a la vez, 5.522 MB. Cada proceso, 324,8 MB de media. Memoria para Odoo (MB) 1 núcleo 2 workers + 1 · ~12 usuarios 974 2 núcleos 4 workers + 1 · ~24 usuarios 1.624 4 núcleos 8 workers + 1 · ~48 usuarios 2.923 8 núcleos 16 workers + 1 · ~96 usuarios 5.522 Workers = núcleos × 2 + 1. Cada proceso ≈ 324,8 MB de media.
Reglas de la documentación de despliegue de Odoo 19: como máximo núcleos × 2 + 1 procesos (aquí, todos los workers posibles y uno de tareas programadas), unos 6 usuarios a la vez por worker y 0,8 × 150 MB + 0,2 × 1.024 MB = 324,8 MB por proceso. Resaltado, el ejemplo de la documentación: 4 núcleos, unos 3 GB. Estimación de Odoo, no una medida de este sitio.

Nunca workers = 1. El código de Odoo 19 marca ese caso y no genera PDF: el navegador muestra Necesita iniciar Odoo con al menos dos trabajadores para imprimir una versión pdf de los informes. Usa 0 o 2 o más.

Workers necesarios (usuarios / 6)
10
Máximo del servidor (núcleos × 2 + 1)
9
workers
8
Memoria estimada para Odoo
2.923 MB
workers = 8
max_cron_threads = 1
Calculadora con las mismas reglas de la documentación de Odoo 19. Nunca propone 1 worker, porque Odoo 19 no imprime PDF con workers = 1. Sin JavaScript muestra el ejemplo de la documentación (4 núcleos, 60 usuarios). La memoria no incluye PostgreSQL ni el sistema.

Paso 8. Copias de seguridad desde el primer día

La documentación pide copias diarias de las bases de datos y del filestore, guardadas en un servidor que no sea accesible desde el propio Odoo. Una copia solo de PostgreSQL no basta: los adjuntos y los PDF están en /var/lib/odoo/.local/share/Odoo/filestore/ y el nombre de la base (instalación con el paquete; en Docker, en /var/lib/odoo/filestore/).

sudo -u odoo pg_dump -Fc miempresa > miempresa-$(date +%F).dump
sudo tar czf filestore-$(date +%F).tar.gz -C /var/lib/odoo/.local/share/Odoo/filestore miempresa

Programa las dos líneas en el cron del servidor y copia los ficheros fuera. Prueba a restaurar una vez en otra máquina: es la única forma de saber que la copia vale.

Con Docker

La imagen oficial odoo es Community y necesita un PostgreSQL aparte. Un compose.yaml mínimo, con la etiqueta fijada y los datos en volúmenes:

services:
  web:
    image: odoo:19.0
    depends_on:
      - db
    ports:
      - "8069:8069"
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./config:/etc/odoo
      - ./addons:/mnt/extra-addons
  db:
    image: postgres:15
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_PASSWORD=cambia-esta-contraseña
      - POSTGRES_USER=odoo
    volumes:
      - odoo-db-data:/var/lib/postgresql/data
volumes:
  odoo-web-data:
  odoo-db-data:

Arranca con docker compose up -d. Si cambias la contraseña de PostgreSQL, pon la misma en una variable PASSWORD del servicio web, que la imagen usa para conectarse (por defecto, odoo). postgres:15 es la versión de los ejemplos oficiales; cualquier versión desde la 13 cumple el mínimo de Odoo 19.

Tres avisos:

  • Fija la versión. El 1 de noviembre de 2026, en Docker Hub, odoo:latest apunta a la misma imagen que odoo:20.0. Un docker compose pull con latest te cambiaría de versión mayor, y una base de Odoo 19 no se abre en Odoo 20 sin migración.
  • Sin volumen no hay datos. El filestore se crea dentro del contenedor; si lo borras sin el volumen de /var/lib/odoo, pierdes los adjuntos.
  • wkhtmltopdf ya viene dentro: es el mismo paquete de jammy del paso 2.

La configuración de seguridad y workers del paso 6 va en ./config/odoo.conf.

En Windows

  1. Descarga odoo_19.0.latest.exe del servidor nightly (Community) o el instalador de la página de descargas de Odoo.
  2. Ejecútalo. Si Windows avisa con Windows protected your PC, pulsa More Info y Run anyway, como indica la documentación.
  3. Acepta el control de cuentas de usuario y elige Odoo Server And PostgreSQL Server si no tienes PostgreSQL.
  4. Al terminar, Odoo se abre en el navegador.

Según el código del instalador de la 19.0, trae su propio Python y wkhtmltopdf, descarga PostgreSQL 16.14 si lo eliges, crea un servicio de Windows odoo-server- con la versión y guarda la configuración en server\odoo.conf dentro de la carpeta de instalación. Propone openpg / openpgpwd como usuario y contraseña de PostgreSQL: cámbialos en esa pantalla.

Y la advertencia de Odoo: el paquete de Windows es para «probar o usar en local con un solo usuario». El modo multiproceso no existe en Windows, así que el paso 7 no aplica.

Déjalo listo para España

Con la base creada en español y con España como país:

  1. Instala la app Facturación desde Aplicaciones. Con la empresa en España, Odoo instala también España - Contabilidad (PGCE 2008) (l10n_es): plan de cuentas del PGC, impuestos con sus casillas, posiciones fiscales y modelos 111, 115, 130, 303 y 390.
  2. Revisa en Ajustes, sección Compañías, el nombre, la dirección con provincia y el NIF de la empresa. Veri*Factu exige que el NIF tenga exactamente 9 caracteres sin el prefijo ES (cómo).
  3. Antes de crear la primera factura, comprueba en Facturación, Configuración, Ajustes (Contabilidad en Enterprise), sección Localización fiscal, que el Paquete es el que corresponde (PyMEs, Completo, Canarias…). Odoo lo deja en solo lectura en cuanto hay un apunte contable en la empresa.
  4. Instala el sistema de facturación que te toca: Veri*Factu, SII o TicketBAI en Álava, Bizkaia y Gipuzkoa.

Módulos de la OCA. En una instalación propia puedes añadir los módulos españoles de la comunidad (l10n-spain, rama 19.0, con más de 30 módulos el 1 de noviembre de 2026: modelos 347, 349, 190, Norma 43…). No van solos: l10n_es_aeat, la base de los modelos, depende de account_tax_balance (repositorio account-financial-reporting), que a su vez depende de date_range (repositorio server-ux), y pide la librería de Python unidecode. Descarga los tres repositorios en la rama 19.0, añade sus rutas a addons_path en odoo.conf y actualiza la lista de aplicaciones. Qué cubre cada edición está en Odoo Community en España.

Resultado

  • Odoo 19 corre como servicio, con PostgreSQL 16 y wkhtmltopdf 0.12.6.1-3, y genera PDF.
  • El gestor de bases de datos tiene contraseña maestra y, en producción, está cerrado con list_db = False.
  • Los workers y la memoria salen de la regla de la documentación, nunca con workers = 1.
  • La base está en español, con España, euro, zona horaria y la localización l10n_es instalada.
  • Hay copia diaria de la base y del filestore fuera del servidor.

Errores frecuentes

  • No se ha podido encontrar Wkhtmltopdf en este sistema. El informe será mostrado en HTML. Falta wkhtmltopdf o no está en el PATH del usuario odoo. Instálalo como en el paso 2 y reinicia el servicio.
  • Necesita iniciar Odoo con al menos dos trabajadores para imprimir una versión pdf de los informes. Tienes workers = 1. Pon 0 o 2 o más.
  • Houston, we have a database naming issue! (en la traducción, Houston, tenemos un problema con el nombre de la base de datos.). El nombre de la base tiene espacios, tildes u otros caracteres. Solo letras, números, guion bajo, guion y punto.
  • Warning, your Odoo database manager is not protected. No hay contraseña maestra. Fíjala en Set Master Password o con admin_passwd en odoo.conf.
  • El chat y las notificaciones no se actualizan detrás de Nginx. Falta reenviar /websocket al puerto 8072 o activar proxy_mode. Usa el bloque de Nginx de la documentación de despliegue.
  • Después de docker compose pull la base no abre. La imagen era latest y ha pasado a Odoo 20. Vuelve a odoo:19.0.
  • El plan de cuentas no es el español. La base se creó sin país o con otro. Pon España en la empresa y elige el paquete en Localización fiscal antes de registrar ningún asiento.

Preguntas frecuentes

¿Qué versión de Ubuntu necesita Odoo 19?

El paquete .deb de Odoo 19 está publicado para Ubuntu 24.04 LTS (Noble), según la documentación de instalación. Odoo 19 admite Python de la 3.10 a la 3.14 (release.py) y Ubuntu 24.04 trae la 3.12. Con el repositorio oficial no tienes que tocar Python.

¿Por qué Odoo no genera los PDF de las facturas?

Casi siempre por wkhtmltopdf: o no está instalado (Odoo avisa «No se ha podido encontrar Wkhtmltopdf en este sistema») o el servidor arranca con workers = 1, que Odoo no admite para imprimir. Instala la 0.12.6.1-3 y usa workers = 0 o 2 o más.

¿Puedo instalar Odoo Enterprise así?

El método es el mismo, pero el paquete o el código de Enterprise solo se descargan desde la página de descargas de Odoo con una suscripción on-premise o de partner. No hay repositorio nightly de Enterprise. En Docker, la imagen oficial es Community; los módulos Enterprise se montan aparte en /mnt/extra-addons.

¿Docker o instalación con paquete?

Las dos son oficiales. El paquete .deb deja Odoo como servicio del sistema y se actualiza con apt. Docker aísla versiones y facilita tener pruebas y producción en la misma máquina, pero tienes que fijar la etiqueta (odoo:19.0) y guardar en volúmenes la base de datos y el filestore, o los pierdes al borrar el contenedor.

¿Se puede usar Odoo en Windows para trabajar?

La documentación de Odoo 19 lo desaconseja para producción: el instalador de Windows es para pruebas o para un solo usuario en local, y el modo multiproceso (workers) no existe en Windows.

Fuentes

  1. Documentación de Odoo 19 — Instaladores empaquetados (Linux y Windows)odoo.com
  2. Documentación de Odoo 19 — Configuración del sistema (workers, memoria, HTTPS, seguridad, gestor de bases de datos)odoo.com
  3. Código fuente de Odoo 19 — release.py (versiones de Python y PostgreSQL)github.com
  4. Código fuente de Odoo 19 — paquete debian (dependencias, odoo.conf, servicio y postinst)github.com
  5. Código fuente de Odoo 19 — instalador de Windows (setup.nsi)github.com
  6. Código fuente de Odoo 19 — estado de wkhtmltopdf y mínimo de dos workers (ir_actions_report.py)github.com
  7. Código fuente de Odoo 19 — creación de la base de datos (service/db.py)github.com
  8. Código fuente de Odoo 19 — instalación automática de módulos por país (ir_module.py)github.com
  9. Dockerfile oficial de Odoo 19.0 (ubuntu:noble con wkhtmltopdf de jammy)github.com
  10. Imagen oficial de Odoo en Docker Hub (etiquetas 19.0, 20.0 y latest)hub.docker.com
  11. wkhtmltopdf/packaging, versión 0.12.6.1-3 (paquetes publicados)github.com
  12. Repositorio de paquetes de Odoo 19 (nightly.odoo.com)nightly.odoo.com
  13. Ubuntu 24.04 (noble) — paquete postgresqlpackages.ubuntu.com
  14. OCA l10n-spain, rama 19.0github.com

Odoo es una marca de Odoo S.A. Este sitio es independiente y no está afiliado a Odoo S.A. Más información.