Files
bdi_podman_serverconf/containers/odoo/odoo.Containerfile
T
2026-07-04 14:41:42 +02:00

69 строки
2.7 KiB
Docker

# syntax=docker/dockerfile:1.9
# Build: use ./build-container.sh (chiede community/enterprise e passa ODOO_DEB_FILE)
# Manuale: podman build --build-arg ODOO_DEB_FILE=odoo_19_c.deb -t odoo:19.0-community -f odoo.Containerfile .
#
# Installa Odoo dal pacchetto .deb ufficiale (community o enterprise), i pacchetti
# ufficiali Odoo 19 sono compilati per Ubuntu Noble: da qui la base ubuntu:24.04.
FROM ubuntu:24.04
# Nome del file .deb (in deb/) da installare, scelto da build-container.sh
ARG ODOO_DEB_FILE=odoo_19_c.deb
ENV DEBIAN_FRONTEND=noninteractive
# Durante il build non è attivo alcun init system: impediamo allo script
# postinst del pacchetto di provare ad avviare il servizio odoo.
RUN printf '#!/bin/sh\nexit 101\n' > /usr/sbin/policy-rc.d \
&& chmod +x /usr/sbin/policy-rc.d
# Il repository "universe" fornisce molte delle dipendenze python3-* di Odoo
RUN apt-get update \
&& apt-get install -y --no-install-recommends software-properties-common \
&& add-apt-repository -y universe \
&& rm -rf /var/lib/apt/lists/*
# wkhtmltopdf (build Qt patchata) non è incluso nel pacchetto Odoo
RUN apt-get update && apt-get install -y --no-install-recommends \
curl \
ca-certificates \
fontconfig \
libxrender1 \
libxext6 \
xfonts-75dpi \
xfonts-base \
&& curl -sSL -o /tmp/wkhtmltox.deb "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb" \
&& apt-get install -y /tmp/wkhtmltox.deb \
&& rm -rf /var/lib/apt/lists/* /tmp/wkhtmltox.deb
# Installazione di Odoo dal pacchetto .deb ufficiale (crea utente/gruppo odoo,
# /etc/odoo/odoo.conf, /var/lib/odoo, /var/log/odoo e risolve le dipendenze via apt).
# --no-install-recommends evita di installare un server PostgreSQL locale
# (il pacchetto lo raccomanda, ma il DB gira in un container separato).
RUN echo "=== COPIANDO: deb/${ODOO_DEB_FILE} ==="
COPY deb/${ODOO_DEB_FILE} /tmp/odoo.deb
RUN apt-get update \
&& apt-get install -y --no-install-recommends /tmp/odoo.deb \
&& rm -rf /var/lib/apt/lists/* /tmp/odoo.deb
# Directory per gli addons custom (montata come volume)
RUN mkdir -p /var/lib/odoo/custom_addons \
&& mkdir -p /var/lib/odoo/.local/share/Odoo/sessions \
&& mkdir -p /var/lib/odoo/.local/share/Odoo/filestore \
&& chown -R odoo:odoo /var/lib/odoo \
&& chmod -R 755 /var/lib/odoo/.local \
&& chmod 700 /var/lib/odoo/custom_addons \
&& chmod 700 /var/lib/odoo/.local/share/Odoo/sessions \
&& chmod 700 /var/lib/odoo/.local/share/Odoo/filestore
EXPOSE 8069 8072
VOLUME ["/var/lib/odoo/custom_addons"]
COPY odoo-entrypoint.sh /odoo-entrypoint.sh
RUN chmod +x /odoo-entrypoint.sh
USER odoo
ENTRYPOINT ["/odoo-entrypoint.sh"]