FROM python:3.12-bookworm ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 # System dependencies RUN apt-get update && apt-get install -y \ build-essential \ gcc \ g++ \ git \ curl \ npm \ libpq-dev \ libldap2-dev \ libsasl2-dev \ libxml2-dev \ libxslt1-dev \ libjpeg62-turbo-dev \ zlib1g-dev \ libffi-dev \ libssl-dev \ liblcms2-dev \ wkhtmltopdf \ && rm -rf /var/lib/apt/lists/* # Less compiler used by Odoo RUN npm install -g less less-plugin-clean-css # Create odoo user RUN useradd -m -d /opt/odoo -U -r -s /bin/bash odoo WORKDIR /opt/odoo/odoo18 # Copy project COPY . . # Upgrade pip tools RUN pip install --upgrade pip setuptools wheel # Install requirements RUN pip install --no-cache-dir -r requirements.txt # PostgreSQL driver RUN pip install psycopg2-binary # Permissions RUN chown -R odoo:odoo /opt/odoo USER odoo EXPOSE 8069 CMD ["python3", "odoo-bin", "-c", "odoo.conf"]