|
| 1 | +FROM debian:bullseye-slim |
| 2 | +MAINTAINER Odoo S.A. < [email protected]> |
| 3 | + |
| 4 | +SHELL ["/bin/bash", "-xo", "pipefail", "-c"] |
| 5 | + |
| 6 | +# Generate locale C.UTF-8 for postgres and general locale data |
| 7 | +ENV LANG C.UTF-8 |
| 8 | + |
| 9 | +# Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf |
| 10 | +RUN apt-get update && \ |
| 11 | + apt-get install -y --no-install-recommends \ |
| 12 | + ca-certificates \ |
| 13 | + curl \ |
| 14 | + dirmngr \ |
| 15 | + fonts-noto-cjk \ |
| 16 | + gnupg \ |
| 17 | + libssl-dev \ |
| 18 | + node-less \ |
| 19 | + npm \ |
| 20 | + python3-num2words \ |
| 21 | + python3-pdfminer \ |
| 22 | + python3-pip \ |
| 23 | + python3-phonenumbers \ |
| 24 | + python3-pyldap \ |
| 25 | + python3-qrcode \ |
| 26 | + python3-renderpm \ |
| 27 | + python3-setuptools \ |
| 28 | + python3-slugify \ |
| 29 | + python3-vobject \ |
| 30 | + python3-watchdog \ |
| 31 | + python3-xlrd \ |
| 32 | + python3-xlwt \ |
| 33 | + xz-utils \ |
| 34 | + && curl -o wkhtmltox.deb -sSL https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.buster_amd64.deb \ |
| 35 | + && echo 'ea8277df4297afc507c61122f3c349af142f31e5 wkhtmltox.deb' | sha1sum -c - \ |
| 36 | + && apt-get install -y --no-install-recommends ./wkhtmltox.deb \ |
| 37 | + && rm -rf /var/lib/apt/lists/* wkhtmltox.deb |
| 38 | + |
| 39 | +# install latest postgresql-client |
| 40 | +RUN echo 'deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main' > /etc/apt/sources.list.d/pgdg.list \ |
| 41 | + && GNUPGHOME="$(mktemp -d)" \ |
| 42 | + && export GNUPGHOME \ |
| 43 | + && repokey='B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8' \ |
| 44 | + && gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "${repokey}" \ |
| 45 | + && gpg --batch --armor --export "${repokey}" > /etc/apt/trusted.gpg.d/pgdg.gpg.asc \ |
| 46 | + && gpgconf --kill all \ |
| 47 | + && rm -rf "$GNUPGHOME" \ |
| 48 | + && apt-get update \ |
| 49 | + && apt-get install --no-install-recommends -y postgresql-client \ |
| 50 | + && rm -f /etc/apt/sources.list.d/pgdg.list \ |
| 51 | + && rm -rf /var/lib/apt/lists/* |
| 52 | + |
| 53 | +# Install rtlcss (on Debian buster) |
| 54 | +RUN npm install -g rtlcss |
| 55 | + |
| 56 | +# Install Odoo |
| 57 | +ENV ODOO_VERSION 16.0 |
| 58 | +ARG ODOO_RELEASE=20221012 |
| 59 | +ARG ODOO_SHA=f34bc089609c2a7da65f25f29cf4e0218c7af464 |
| 60 | +RUN curl -o odoo.deb -sSL http://nightly.odoo.com/${ODOO_VERSION}/nightly/deb/odoo_${ODOO_VERSION}.${ODOO_RELEASE}_all.deb \ |
| 61 | + && echo "${ODOO_SHA} odoo.deb" | sha1sum -c - \ |
| 62 | + && apt-get update \ |
| 63 | + && apt-get -y install --no-install-recommends ./odoo.deb \ |
| 64 | + && rm -rf /var/lib/apt/lists/* odoo.deb |
| 65 | + |
| 66 | +# Copy entrypoint script and Odoo configuration file |
| 67 | +COPY ./entrypoint.sh / |
| 68 | +COPY ./odoo.conf /etc/odoo/ |
| 69 | + |
| 70 | +# Set permissions and Mount /var/lib/odoo to allow restoring filestore and /mnt/extra-addons for users addons |
| 71 | +RUN chown odoo /etc/odoo/odoo.conf \ |
| 72 | + && mkdir -p /mnt/extra-addons \ |
| 73 | + && chown -R odoo /mnt/extra-addons |
| 74 | +VOLUME ["/var/lib/odoo", "/mnt/extra-addons"] |
| 75 | + |
| 76 | +# Expose Odoo services |
| 77 | +EXPOSE 8069 8071 8072 |
| 78 | + |
| 79 | +# Set the default config file |
| 80 | +ENV ODOO_RC /etc/odoo/odoo.conf |
| 81 | + |
| 82 | +COPY wait-for-psql.py /usr/local/bin/wait-for-psql.py |
| 83 | + |
| 84 | +# Set default user when running the container |
| 85 | +USER odoo |
| 86 | + |
| 87 | +ENTRYPOINT ["/entrypoint.sh"] |
| 88 | +CMD ["odoo"] |
0 commit comments