fix: make Dockerfile self-contained without entrypoint.py
This commit is contained in:
@@ -4,7 +4,7 @@ MAINTAINER Odoo S.A. <info@odoo.com>
|
|||||||
|
|
||||||
SHELL ["/bin/bash", "-xo", "pipefail", "-c"]
|
SHELL ["/bin/bash", "-xo", "pipefail", "-c"]
|
||||||
|
|
||||||
ENV LANG en_US.UTF-8
|
ENV LANG=en_US.UTF-8
|
||||||
|
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
|
|
||||||
@@ -70,7 +70,7 @@ RUN echo 'deb http://apt.postgresql.org/pub/repos/apt/ noble-pgdg main' > /etc/a
|
|||||||
RUN npm install -g rtlcss
|
RUN npm install -g rtlcss
|
||||||
|
|
||||||
# Install Odoo
|
# Install Odoo
|
||||||
ENV ODOO_VERSION 19.0
|
ENV ODOO_VERSION=19.0
|
||||||
ARG ODOO_RELEASE=20260118
|
ARG ODOO_RELEASE=20260118
|
||||||
ARG ODOO_SHA=9cb5691e31d2d8831887e85cc07268016f522f4d
|
ARG ODOO_SHA=9cb5691e31d2d8831887e85cc07268016f522f4d
|
||||||
RUN curl -o odoo.deb -sSL http://nightly.odoo.com/${ODOO_VERSION}/nightly/deb/odoo_${ODOO_VERSION}.${ODOO_RELEASE}_all.deb \
|
RUN curl -o odoo.deb -sSL http://nightly.odoo.com/${ODOO_VERSION}/nightly/deb/odoo_${ODOO_VERSION}.${ODOO_RELEASE}_all.deb \
|
||||||
@@ -84,14 +84,34 @@ RUN mkdir -p /var/lib/odoo /mnt/extra-addons \
|
|||||||
&& chown -R odoo:odoo /var/lib/odoo /mnt/extra-addons \
|
&& chown -R odoo:odoo /var/lib/odoo /mnt/extra-addons \
|
||||||
&& chmod -R u+w /var/lib/odoo
|
&& chmod -R u+w /var/lib/odoo
|
||||||
|
|
||||||
# Copy entrypoint script
|
# Build self-contained entrypoint in image (no external files required)
|
||||||
COPY ./entrypoint.py /entrypoint.py
|
RUN printf '%s\n' \
|
||||||
|
'#!/usr/bin/env bash' \
|
||||||
|
'set -e' \
|
||||||
|
'' \
|
||||||
|
'odoo_cmd=(odoo)' \
|
||||||
|
'' \
|
||||||
|
'if [ -n "${ODOO_RC:-}" ] && [ -f "${ODOO_RC}" ]; then' \
|
||||||
|
' odoo_cmd+=(-c "${ODOO_RC}")' \
|
||||||
|
'elif [ -f /etc/odoo/odoo.conf ]; then' \
|
||||||
|
' odoo_cmd+=(-c /etc/odoo/odoo.conf)' \
|
||||||
|
'fi' \
|
||||||
|
'' \
|
||||||
|
'[ -n "${ODOO_DB_HOST:-}" ] && odoo_cmd+=(--db_host="${ODOO_DB_HOST}")' \
|
||||||
|
'[ -n "${ODOO_DB_PORT:-}" ] && odoo_cmd+=(--db_port="${ODOO_DB_PORT}")' \
|
||||||
|
'[ -n "${ODOO_DB_USER:-}" ] && odoo_cmd+=(--db_user="${ODOO_DB_USER}")' \
|
||||||
|
'[ -n "${ODOO_DB_PASSWORD:-}" ] && odoo_cmd+=(--db_password="${ODOO_DB_PASSWORD}")' \
|
||||||
|
'[ -n "${ODOO_DB_NAME:-}" ] && odoo_cmd+=(-d "${ODOO_DB_NAME}")' \
|
||||||
|
'' \
|
||||||
|
'exec "${odoo_cmd[@]}"' \
|
||||||
|
> /entrypoint.sh \
|
||||||
|
&& chmod +x /entrypoint.sh
|
||||||
|
|
||||||
# Expose Odoo services
|
# Expose Odoo services
|
||||||
EXPOSE 8069 8071 8072
|
EXPOSE 8069 8071 8072
|
||||||
|
|
||||||
ENV ODOO_RC /etc/odoo/odoo.conf
|
ENV ODOO_RC=/etc/odoo/odoo.conf
|
||||||
|
|
||||||
USER odoo
|
USER odoo
|
||||||
|
|
||||||
CMD ["python3", "/entrypoint.py"]
|
CMD ["/entrypoint.sh"]
|
||||||
|
|||||||
Reference in New Issue
Block a user