| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:7121eb4a5ba391efb4ba9a38c532d1c5dc2d22d276f04e062f357eea36ee62c4 in / |
| CMD ["/bin/bash"] |
| LABEL maintainer=Odoo S.A. <info@odoo.com> |
| SHELL [/bin/bash -xo pipefail -c] |
| ENV LANG=en_US.UTF-8 |
| ARG TARGETARCH=amd64 |
| RUN |1 TARGETARCH=amd64 /bin/bash -xo pipefail -c apt-get update && apt-get install -y --no-install-recommends ca-certificates curl dirmngr fonts-noto-cjk gnupg libssl-dev node-less python3-magic python3-num2words python3-odf python3-pdfminer python3-pip python3-phonenumbers python3-pyldap python3-qrcode python3-renderpm python3-setuptools python3-slugify python3-vobject python3-watchdog python3-xlrd python3-xlwt xz-utils && if [ -z "${TARGETARCH}" ]; then TARGETARCH="$(dpkg --print-architecture)"; fi; WKHTMLTOPDF_ARCH=${TARGETARCH} && case ${TARGETARCH} in "amd64") WKHTMLTOPDF_ARCH=amd64 && WKHTMLTOPDF_SHA=967390a759707337b46d1c02452e2bb6b2dc6d59 ;; "arm64") WKHTMLTOPDF_SHA=90f6e69896d51ef77339d3f3a20f8582bdf496cc ;; "ppc64le" | "ppc64el") WKHTMLTOPDF_ARCH=ppc64el && WKHTMLTOPDF_SHA=5312d7d34a25b321282929df82e3574319aed25c ;; esac && curl -o wkhtmltox.deb -sSL https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_${WKHTMLTOPDF_ARCH}.deb && echo ${WKHTMLTOPDF_SHA} wkhtmltox.deb | sha1sum -c - && apt-get install -y --no-install-recommends ./wkhtmltox.deb && rm -rf /var/lib/apt/lists/* wkhtmltox.deb # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/bash -xo pipefail -c echo 'deb http://apt.postgresql.org/pub/repos/apt/ noble-pgdg main' > /etc/apt/sources.list.d/pgdg.list && GNUPGHOME="$(mktemp -d)" && export GNUPGHOME && repokey='B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8' && gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "${repokey}" && gpg --batch --armor --export "${repokey}" > /etc/apt/trusted.gpg.d/pgdg.gpg.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && apt-get update && apt-get install --no-install-recommends -y postgresql-client && rm -f /etc/apt/sources.list.d/pgdg.list && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/bash -xo pipefail -c apt-get update && apt-get install -y --no-install-recommends nodejs npm && npm install -g rtlcss && apt-get purge --autoremove -y npm && rm -rf /var/lib/apt/lists/* # buildkit |
| ENV ODOO_VERSION=20.0 |
| ARG ODOO_RELEASE=20261015 |
| ARG ODOO_SHA=ae908bc0fa5e01d076a74a1008f07ad8869f819d |
| RUN |3 TARGETARCH=amd64 ODOO_RELEASE=20261015 ODOO_SHA=ae908bc0fa5e01d076a74a1008f07ad8869f819d /bin/bash -xo pipefail -c curl -o odoo.deb -sSL http://nightly.odoo.com/${ODOO_VERSION}/nightly/deb/odoo_${ODOO_VERSION}.${ODOO_RELEASE}_all.deb && echo "${ODOO_SHA} odoo.deb" | sha1sum -c - && apt-get update && apt-get -y install --no-install-recommends ./odoo.deb && rm -rf /var/lib/apt/lists/* odoo.deb # buildkit |
| COPY ./entrypoint.sh / # buildkit |
| COPY ./odoo.conf /etc/odoo/ # buildkit |
| RUN |3 TARGETARCH=amd64 ODOO_RELEASE=20261015 ODOO_SHA=ae908bc0fa5e01d076a74a1008f07ad8869f819d /bin/bash -xo pipefail -c chown odoo /etc/odoo/odoo.conf && mkdir -p /mnt/extra-addons && chown -R odoo /mnt/extra-addons # buildkit |
| VOLUME [/var/lib/odoo /mnt/extra-addons] |
| EXPOSE map[8069/tcp:{} 8071/tcp:{} 8072/tcp:{}] |
| ENV ODOO_RC=/etc/odoo/odoo.conf |
| COPY wait-for-psql.py /usr/local/bin/wait-for-psql.py # buildkit |
| USER odoo |
| ENTRYPOINT ["/entrypoint.sh"] |
| CMD ["odoo"] |
| USER root |
| COPY config/odoo.conf /opt/borderrun/config/odoo.conf # buildkit |
| COPY scripts/ /opt/borderrun/scripts/ # buildkit |
| RUN /bin/bash -xo pipefail -c chmod 755 /opt/borderrun/scripts/*.sh && python3 -c "import ast,pathlib; [ast.parse(p.read_text()) for p in pathlib.Path('/opt/borderrun/scripts').glob('*.py')]" # buildkit |
| USER odoo |
| ENTRYPOINT ["/opt/borderrun/scripts/load-vault-env.sh"] |
| CMD ["/opt/borderrun/scripts/odoo-entrypoint.sh" "odoo"] |
| HEALTHCHECK &{["CMD-SHELL" "python3 -c \"import urllib.request; urllib.request.urlopen('http://127.0.0.1:8069/web/health', timeout=4)\""] "30s" "5s" "1m30s" "0s" '\x03'} |