11# syntax=docker/dockerfile:1.4
22# ##### Minimal image with base system requirements for most stages ######
3- FROM docker.io/ubuntu:20.04 as minimal
3+ FROM docker.io/python:3.12-slim-bookworm
44
55ARG DEBIAN_FRONTEND=noninteractive
66RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
77 --mount=type=cache,target=/var/lib/apt,sharing=locked \
88 apt update && \
99 apt upgrade -y && \
1010 apt install -y \
11- language-pack-en \
11+ locales \
1212 git \
13- python3 \
14- python3-pip \
15- python3-venv \
16- libmysqlclient-dev \
17- pkg-config
18- RUN ln -s /usr/bin/python3 /usr/bin/python
13+ python3-dev \
14+ build-essential \
15+ default-libmysqlclient-dev \
16+ pkg-config && \
17+ sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \
18+ locale-gen
19+ ENV LC_ALL en_US.UTF-8
1920
2021# ##### Git-clone xqueue repo ######
2122ARG APP_USER_ID=1000
2223RUN useradd --home-dir /openedx --create-home --shell /bin/bash --uid ${APP_USER_ID} app
2324USER ${APP_USER_ID}
25+
2426RUN git clone {{ XQUEUE_REPOSITORY }} --branch {{ XQUEUE_REPOSITORY_VERSION }} --depth 1 /openedx/xqueue
2527WORKDIR /openedx/xqueue
2628
@@ -30,9 +32,9 @@ ENV PATH /openedx/venv/bin:${PATH}
3032# https://pypi.org/project/setuptools/
3133# https://pypi.org/project/pip/
3234# https://pypi.org/project/wheel/
33- RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared pip install setuptools==68 .2.2 pip==23.2.1. wheel==0.41.2
35+ RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared pip install setuptools==69 .2.0 pip==24.0 wheel==0.43.0
3436RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared pip install -r requirements.txt
35- RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared pip install uwsgi==2.0.22
37+ RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared pip install uwsgi==2.0.25.1
3638
3739RUN mkdir /openedx/data /openedx/data/media
3840
0 commit comments