Namespace
overhangio
Image / Tag
openedx:21.0.5
Content Digest
sha256:fae3cdefeb0addf24b448c871e595789e9de35c8b18f6e1f4767271750289c8e
Details
Created

2026-05-05 12:20:27 UTC

Size

1000 MB

Content Digest
Labels
  • maintainer
    Overhang.io <contact@overhang.io>
  • org.opencontainers.image.version
    22.04

Environment
CMS_CFG

/openedx/config/cms.env.yml

COMPREHENSIVE_THEME_DIRS

/openedx/themes

DEBIAN_FRONTEND

noninteractive

DJANGO_SETTINGS_MODULE

lms.envs.tutor.production

LC_ALL

en_US.UTF-8

LMS_CFG

/openedx/config/lms.env.yml

PATH

/openedx/bin:/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

REVISION_CFG

/openedx/config/revisions.yml

SERVICE_VARIANT

lms

STATIC_ROOT_CMS

/openedx/staticfiles/studio

STATIC_ROOT_LMS

/openedx/staticfiles

UWSGI_WORKERS

2

VIRTUAL_ENV

/openedx/venv/


Layers

[#000] sha256:f63eb04151bcac21ad049f8d781b97b219aba392c5457907f8f3e88e43eb48ec - 2.83% (28.4 MB)

[#001] sha256:5f63ec0d87097f3fb961c9927c421ccd304ec1a8044cffc314750a13f342b0a9 - 11.42% (114 MB)

[#002] sha256:e3b9696c3c4f7956bc5aee0a6c99059ca7c533e004eea9ff203f055e9d0ae59c - 2.05% (20.6 MB)

[#003] sha256:414006074464f101b16cd343cb62ad5a8396ce4a434f95a9391cc1ad1886af4f - 12.22% (122 MB)

[#004] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#005] sha256:9b894e1dcfa1672b5b8542490dc4aa36437615974fad9320413c4ca438107b26 - 0.0% (3.41 KB)

[#006] sha256:4484db6d5d9b3a81123c4da1d268aa82542c8ed7884e108f4682244f660d7deb - 0.28% (2.81 MB)

[#007] sha256:662fbd00bf3971c1232d8cfc970f23fb3dc3e24644bb9d3891fe3f273e087823 - 11.23% (113 MB)

[#008] sha256:679d3930a0abb393725a8810d98042399dd296bcfb69056ceae7eee698e9f5d8 - 8.25% (82.6 MB)

[#009] sha256:89c51667badf92f87c914324722cad9be3c355a3334c3d3ea7371fce9ed27344 - 25.76% (258 MB)

[#010] sha256:f35445ab4f8c06e8a6a3f073e59a3520386353708e8b1b6d59dcd39f74c35ca6 - 0.0% (96 Bytes)

[#011] sha256:fc175a91ef8fd22798a56b506d3c497add996af099c624e43e8dd22e31b0b7c8 - 11.01% (110 MB)

[#012] sha256:2cb7c3145dbb3819d4806888fa1e9da09f84eaa32dbd8eabd34eb5ec7b6c8068 - 6.13% (61.4 MB)

[#013] sha256:558000c87082bd9b9630227dd188dfb70496b3ecec90318c9703159237311918 - 0.0% (168 Bytes)

[#014] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#015] sha256:6b41196a2fa9e8b047355ce307664f68ff7c7a539ace4864c1ace35a668e76af - 0.1% (1 MB)

[#016] sha256:e88510e3e828db8e9c80f5ecdfd0de6dd23024977e9e36d0a8691814b174e9ce - 0.0% (232 Bytes)

[#017] sha256:e02220c04bdc4e3a69e12bdcd81bed2713701246730f6cb202cbc48207e7c2ea - 0.0% (206 Bytes)

[#018] sha256:93c36ff40fab87baa4710c6e0d639e8bcdd6fdc4542174e6bbd9a1f0edbe9aa3 - 0.0% (709 Bytes)

[#019] sha256:b31744200c5d32a22e7e333226df5560afac457cdb8dcb5d1892e019c1ef58dd - 0.0% (712 Bytes)

[#020] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#021] sha256:6ff06c46832d057095b5d715a1ad96c76e7e3bab2a3700bfbacf8940a033f4bd - 0.44% (4.37 MB)

[#022] sha256:f38f872fb583abb28cb59c15ae5e2d85e937ccfddb1ce3dbdbeba8ffe703394b - 0.11% (1.09 MB)

[#023] sha256:2e4ae0d51ee0d3126021ed30c038cdc158bbaee1a0456e15d01c8d29e90c7e7d - 0.9% (9.04 MB)

[#024] sha256:bd725031dfb749378c4b9dbc164b68d021ef4351d43b6a65b2937dc263468ada - 0.14% (1.36 MB)

[#025] sha256:e29b30366cb4b6d71967cf7fe2fc3b6949354fbcf04f69395135a6b60c61dba6 - 0.22% (2.24 MB)

[#026] sha256:5d98c9ced4dba27b416e4b1bca91711faac1b2a5daa67f7418ee27271557db20 - 0.03% (277 KB)

[#027] sha256:0028d8b1bcea1d548ce152c4b8b16ce0e9a0bac653cee5396573929517df6d2c - 0.82% (8.25 MB)

[#028] sha256:8fd4766af7a1477a223e101d986fad08040093a96a40909aaacfa14144d47b5f - 0.18% (1.82 MB)

[#029] sha256:df559fdf22ff88eee356e028d14184621f81c855d935e6ddc7a4ae467526d441 - 0.18% (1.82 MB)

[#030] sha256:e1da0c1ee7f7c111791267cbd85cf11bcc515c2576990e2c48f7c949203ff3ad - 0.0% (246 Bytes)

[#031] sha256:5a5e495a33c168945146f5d0c8b7f57c9d4a9331c2ddc11a2c434c6c6ff223f8 - 0.0% (242 Bytes)

[#032] sha256:dce55f80e48966275b9cc158b66211d8e1d4744ab40a86657a74786411088eaf - 0.17% (1.66 MB)

[#033] sha256:5a944d88b95a057bbf9e1e5dacb2b871d19437661c5a1ea35363fce1eeff228b - 0.08% (776 KB)

[#034] sha256:8d81ff6837871dd970e89925c45895d2a537c649b4c22cd46581a34c9d998eb0 - 0.59% (5.92 MB)

[#035] sha256:969828fb89feb848987d63ea4490a1c3a5331b34ba9204d30b20486cbe5eea37 - 0.0% (223 Bytes)

[#036] sha256:6a8de02a2e55aaaed011b380fc9f07a890f2ec7e15a84174ead99b5dd8e16bfe - 0.0% (506 Bytes)

[#037] sha256:f375f5c8309e4be09b71f8ed0bccae88a6ba5373b71371e69fd2b722b9019359 - 4.87% (48.8 MB)

[#038] sha256:0cd68c1bfbf8d1a31cb9f5ff30f701ac11f600bb34059a4604425616a1e83c28 - 0.0% (120 Bytes)

[#039] sha256:941841637d8be1a49fe22a5e37f97a63b5c59c85de4b91056874f8dd8e98ca5c - 0.0% (215 Bytes)

[#040] sha256:40495a400deae94dc3fde1de01ea9ade037d71212e21e5d58477351ad28243e3 - 0.0% (507 Bytes)


History
2026-04-10 09:47:41 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-04-10 09:47:41 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-04-10 09:47:41 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2026-04-10 09:47:43 UTC

/bin/sh -c #(nop) ADD file:da2cd86408d9354e8bd817c8a4b8635a1d788cd20d0d70061ce02a173e8cf902 in /

2026-04-10 09:47:44 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

LABEL maintainer=Overhang.io <contact@overhang.io>

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt update && apt install -y build-essential curl git language-pack-en # buildkit

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

ENV LC_ALL=en_US.UTF-8

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

COPY /uv /usr/local/bin/uv # buildkit

2026-04-29 13:50:43 UTC (buildkit.dockerfile.v0)

ARG PIP_COMMAND=uv pip

2026-04-29 13:56:40 UTC (buildkit.dockerfile.v0)

RUN |1 PIP_COMMAND=uv pip /bin/sh -c apt update && apt install -y gettext gfortran graphviz graphviz-dev libffi-dev libfreetype6-dev libgeos-dev libjpeg8-dev liblapack-dev libmysqlclient-dev libpng-dev libsqlite3-dev libxmlsec1-dev lynx mysql-client ntp pkg-config rdfind # buildkit

2026-04-29 13:56:40 UTC (buildkit.dockerfile.v0)

ARG APP_USER_ID=1000

2026-04-29 13:56:41 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c if [ "$APP_USER_ID" = 0 ]; then echo "app user may not be root" && false; fi # buildkit

2026-04-29 13:56:41 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c useradd --no-log-init --home-dir /openedx --create-home --shell /bin/bash --uid ${APP_USER_ID} app # buildkit

2026-04-29 13:56:41 UTC (buildkit.dockerfile.v0)

USER 1000

2024-10-17 14:18:47 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/dockerize /usr/local/bin/dockerize # buildkit

2026-05-05 11:53:12 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 / /openedx/edx-platform # buildkit

2026-05-05 11:55:33 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /opt/pyenv /opt/pyenv # buildkit

2026-05-05 11:58:42 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/venv /openedx/venv # buildkit

2024-06-05 14:28:40 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /mnt /mnt # buildkit

2026-04-29 13:56:05 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/nodeenv /openedx/nodeenv # buildkit

2026-05-05 11:56:11 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/edx-platform/node_modules /openedx/node_modules # buildkit

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ln -s /openedx/node_modules /openedx/edx-platform/node_modules # buildkit

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

ENV PATH=/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

ENV VIRTUAL_ENV=/openedx/venv/

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

ENV COMPREHENSIVE_THEME_DIRS=/openedx/themes

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

ENV STATIC_ROOT_LMS=/openedx/staticfiles

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

ENV STATIC_ROOT_CMS=/openedx/staticfiles/studio

2026-05-05 11:59:06 UTC (buildkit.dockerfile.v0)

WORKDIR /openedx/edx-platform

2026-05-05 11:59:07 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c $PIP_COMMAND install -e . # buildkit

2026-05-05 11:59:07 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c mkdir -p /openedx/config ./lms/envs/tutor ./cms/envs/tutor # buildkit

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app revisions.yml /openedx/config/ # buildkit

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

ENV LMS_CFG=/openedx/config/lms.env.yml

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

ENV CMS_CFG=/openedx/config/cms.env.yml

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

ENV REVISION_CFG=/openedx/config/revisions.yml

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/lms/*.py ./lms/envs/tutor/ # buildkit

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/cms/*.py ./cms/envs/tutor/ # buildkit

2026-05-05 11:59:08 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c make clean_translations # buildkit

2026-05-05 11:59:18 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n pull_plugin_translations --verbose --repository='openedx/openedx-translations' --revision='release/ulmo.3' # buildkit

2026-05-05 11:59:26 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n pull_xblock_translations --repository='openedx/openedx-translations' --revision='release/ulmo.3' # buildkit

2026-05-05 11:59:30 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c atlas pull --repository='openedx/openedx-translations' --revision='release/ulmo.3' translations/edx-platform/conf/locale:conf/locale translations/studio-frontend/src/i18n/messages:conf/plugins-locale/studio-frontend # buildkit

2026-05-05 11:59:39 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compile_xblock_translations # buildkit

2026-05-05 11:59:49 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py cms --settings=tutor.i18n compile_xblock_translations # buildkit

2026-05-05 11:59:57 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compile_plugin_translations # buildkit

2026-05-05 12:00:06 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compilemessages -v1 # buildkit

2026-05-05 12:00:12 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compilejsi18n # buildkit

2026-05-05 12:00:21 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py cms --settings=tutor.i18n compilejsi18n # buildkit

2026-05-05 12:00:21 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app ./bin /openedx/bin # buildkit

2026-05-05 12:00:21 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c chmod a+x /openedx/bin/* # buildkit

2026-05-05 12:00:21 UTC (buildkit.dockerfile.v0)

ENV PATH=/openedx/bin:/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-05 12:00:22 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run postinstall # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too. # buildkit

2026-05-05 12:00:30 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run compile-sass -- --skip-themes # buildkit

2026-05-05 12:02:25 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run webpack # buildkit

2026-05-05 12:18:00 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app ./themes/ /openedx/themes # buildkit

2026-05-05 12:18:00 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run compile-sass -- --skip-default # buildkit

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms collectstatic --noinput --settings=tutor.assets && ./manage.py cms collectstatic --noinput --settings=tutor.assets && rdfind -makesymlinks true -followsymlinks true /openedx/staticfiles/ # buildkit

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c mkdir /openedx/data # buildkit

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c echo "This copy of edx-platform was built into a Docker image." > bindmount-canary # buildkit

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

ENV SERVICE_VARIANT=lms

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

ENV DJANGO_SETTINGS_MODULE=lms.envs.tutor.production

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

EXPOSE [8000/tcp]

2026-05-05 12:20:26 UTC (buildkit.dockerfile.v0)

ENV UWSGI_WORKERS=2

2026-05-05 12:20:27 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/uwsgi.ini /openedx # buildkit

2026-05-05 12:20:27 UTC (buildkit.dockerfile.v0)

CMD ["uwsgi" "/openedx/uwsgi.ini"]

Details
Created

2026-05-05 12:20:06 UTC

Size

985 MB

Content Digest
Labels
  • maintainer
    Overhang.io <contact@overhang.io>
  • org.opencontainers.image.version
    22.04

Environment
CMS_CFG

/openedx/config/cms.env.yml

COMPREHENSIVE_THEME_DIRS

/openedx/themes

DEBIAN_FRONTEND

noninteractive

DJANGO_SETTINGS_MODULE

lms.envs.tutor.production

LC_ALL

en_US.UTF-8

LMS_CFG

/openedx/config/lms.env.yml

PATH

/openedx/bin:/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

REVISION_CFG

/openedx/config/revisions.yml

SERVICE_VARIANT

lms

STATIC_ROOT_CMS

/openedx/staticfiles/studio

STATIC_ROOT_LMS

/openedx/staticfiles

UWSGI_WORKERS

2

VIRTUAL_ENV

/openedx/venv/


Layers

[#000] sha256:6edbc812af48552062d74659cf0a08b413dbfdbacdd5aac73329d889d9b3b44a - 2.67% (26.3 MB)

[#001] sha256:39d5a17dc2fd4031e59ab03fda567fb69a55dec62e719168a4862baee9049009 - 11.25% (111 MB)

[#002] sha256:2adf346a890535fe88a6430b1acb03dc2ba29b690406c9fb6ee106b8b2e6c0dd - 2.01% (19.8 MB)

[#003] sha256:dd96401a92a5fcd81ff70d18cd5f27c0dbbd43254ec89345496ece5b06f4e9b0 - 12.17% (120 MB)

[#004] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#005] sha256:1fe37d8e321f73fc788a31a90f9c9fb9c4561d2da3fd8e8f92de3e9dae072d21 - 0.0% (3.4 KB)

[#006] sha256:b575c4445650847f821426750df587eb453f7e7e64383b4926b1a578652cbf58 - 0.26% (2.53 MB)

[#007] sha256:3ba3dc4b8e3862f924da1b0a06ac5845e2b533cf4fc47e239358bd0c73164b06 - 11.42% (112 MB)

[#008] sha256:43ed60251bc796ede77e620b8973852befffff3edad9ec6915f4e301d84d655f - 8.38% (82.6 MB)

[#009] sha256:570f234166ed3c42eb36be29915fd0243f466aebe4a5d5566b48171fc8aaac72 - 25.42% (250 MB)

[#010] sha256:f35445ab4f8c06e8a6a3f073e59a3520386353708e8b1b6d59dcd39f74c35ca6 - 0.0% (96 Bytes)

[#011] sha256:39e3e8d7d33d2ffaa52cf09ae7a8fee298b365e9ab44bf15711815d1c338c7a5 - 11.21% (110 MB)

[#012] sha256:be0a97bdc76f283f8a780b9ec50321aa824545e66868ac5e12bb1cd90053dd17 - 6.23% (61.4 MB)

[#013] sha256:6c2b8f6da2733efbdf75996cd70e5f1710c975bdea9a95f60e76142127392b0d - 0.0% (170 Bytes)

[#014] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#015] sha256:c1becd4884a74941f43fdf9e4e0da04fe1d1dfb0dc35a7bf1d52e8cd3ff52225 - 0.1% (1.01 MB)

[#016] sha256:8c5d1040ff54f728561fabd7d53fc623de0a63cb2c89a98dfe1bb969888183de - 0.0% (231 Bytes)

[#017] sha256:a9c4d88ffddce821ab4cf8f8b4cfc5ded2780a9dfaa3536bcaa63789d76c7173 - 0.0% (203 Bytes)

[#018] sha256:c001cb2c843163ab157aafe97b39b88d8a1ec60fb61105e1eda5082b568491a4 - 0.0% (710 Bytes)

[#019] sha256:ed025264a5f572b8ad344c7ec9d92b0bcb6847ea12737acfe666301e5c217ece - 0.0% (712 Bytes)

[#020] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#021] sha256:368cd2612c08d2f0e70e2cdc4a75e326ce73614bf2debed0403c2ba10aa674f9 - 0.44% (4.37 MB)

[#022] sha256:177ecc6e7a04e5f57a95f2096a2c8e35fe88f0637ca15634953bea3615aa8282 - 0.11% (1.09 MB)

[#023] sha256:014879d2e086e7d5ffa16a1c58f011d24917db9bd5df15ff61d49ed7865ad8cf - 0.92% (9.04 MB)

[#024] sha256:16f50313151865a27dcd56e569ce2b2890c0716a1a02dacf007a2b66b7e6a076 - 0.14% (1.36 MB)

[#025] sha256:cc13d4772e2a5c83d48c9528a35165b217e6015c3c65480d61567a59d7d5b875 - 0.23% (2.24 MB)

[#026] sha256:48f7f2a50799d20c8bc6bf881ac551c7d087319868f7ad2b6fafc2ce105b364e - 0.03% (277 KB)

[#027] sha256:d54f5f61fc3f525f623346a18134fbd0c7ef007e4b87e0cc75ba1597fb542d13 - 0.84% (8.25 MB)

[#028] sha256:506ffdcb496108c3ab4acce777ae6134a940250e5d1b47be9453461ab990cc07 - 0.18% (1.82 MB)

[#029] sha256:24a08d3b5f11cf9d5f4963d8ae6ea0729c1f8f84167f52bd8361d0a16fb2a50d - 0.18% (1.82 MB)

[#030] sha256:aaeb8d67f839ded37d19b76b0ffc23d71ec073556fa8740a92ea60da65b390a0 - 0.0% (245 Bytes)

[#031] sha256:9c8b0d8e2f4c499f52ec84a8f0ade1204b6943f0d4458f0ad1733bce738c1df1 - 0.0% (240 Bytes)

[#032] sha256:488339c21afb49f0b6e82f58da886a70561b36c941b5c4e646e77a69d8811918 - 0.17% (1.66 MB)

[#033] sha256:5230e80d12494bf5c5a02127e1909ce38539a9dc688c0eaea7b7d0b1849c3767 - 0.08% (775 KB)

[#034] sha256:877f21434a4ac6fe128f36bf34076f9b12588ebe14864440f5990837e60c549c - 0.6% (5.92 MB)

[#035] sha256:4d61a340f335288e977601b2b83f096888559480e09f5b03f3c7ce9f383637ef - 0.0% (223 Bytes)

[#036] sha256:3101eb2202c2da59d0fa57e9f725255102b397b90532e3e884da2dcc24e3d7c1 - 0.0% (510 Bytes)

[#037] sha256:6d920938fbbf02761f95a7d6366f224dc50a86daa7e4419b15b27f5557813d2c - 4.95% (48.8 MB)

[#038] sha256:68e1da8fa47405bce378671c851402f3999063ac526618c95e098534d833f4a9 - 0.0% (119 Bytes)

[#039] sha256:3ae016c8f538345f05ce9d354ea665fe952e1f1aff712ed285783429e20bcba2 - 0.0% (214 Bytes)

[#040] sha256:eb1b5bb14e0fb4017d937d29d6de862abd5cc7d0ff80ca9ce111a20f06abe063 - 0.0% (507 Bytes)


History
2026-04-10 09:49:11 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-04-10 09:49:11 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-04-10 09:49:11 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2026-04-10 09:49:13 UTC

/bin/sh -c #(nop) ADD file:94ca084e2c34d90b4443d18fa6a7d983767fa1575d4bd2c06f6e31adfea270da in /

2026-04-10 09:49:13 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

LABEL maintainer=Overhang.io <contact@overhang.io>

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt update && apt install -y build-essential curl git language-pack-en # buildkit

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

ENV LC_ALL=en_US.UTF-8

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

COPY /uv /usr/local/bin/uv # buildkit

2026-04-17 11:30:53 UTC (buildkit.dockerfile.v0)

ARG PIP_COMMAND=uv pip

2026-04-17 11:32:25 UTC (buildkit.dockerfile.v0)

RUN |1 PIP_COMMAND=uv pip /bin/sh -c apt update && apt install -y gettext gfortran graphviz graphviz-dev libffi-dev libfreetype6-dev libgeos-dev libjpeg8-dev liblapack-dev libmysqlclient-dev libpng-dev libsqlite3-dev libxmlsec1-dev lynx mysql-client ntp pkg-config rdfind # buildkit

2026-04-17 11:32:25 UTC (buildkit.dockerfile.v0)

ARG APP_USER_ID=1000

2026-04-17 11:36:03 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c if [ "$APP_USER_ID" = 0 ]; then echo "app user may not be root" && false; fi # buildkit

2026-04-17 11:32:26 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c useradd --no-log-init --home-dir /openedx --create-home --shell /bin/bash --uid ${APP_USER_ID} app # buildkit

2026-04-17 11:32:26 UTC (buildkit.dockerfile.v0)

USER 1000

2023-12-21 09:49:11 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/dockerize /usr/local/bin/dockerize # buildkit

2026-05-05 11:53:16 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 / /openedx/edx-platform # buildkit

2026-05-05 11:55:52 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /opt/pyenv /opt/pyenv # buildkit

2026-05-05 11:58:57 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/venv /openedx/venv # buildkit

2024-06-05 14:28:40 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /mnt /mnt # buildkit

2026-01-15 19:59:40 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/nodeenv /openedx/nodeenv # buildkit

2026-05-05 11:56:30 UTC (buildkit.dockerfile.v0)

COPY --chown=1000:1000 /openedx/edx-platform/node_modules /openedx/node_modules # buildkit

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ln -s /openedx/node_modules /openedx/edx-platform/node_modules # buildkit

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

ENV PATH=/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

ENV VIRTUAL_ENV=/openedx/venv/

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

ENV COMPREHENSIVE_THEME_DIRS=/openedx/themes

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

ENV STATIC_ROOT_LMS=/openedx/staticfiles

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

ENV STATIC_ROOT_CMS=/openedx/staticfiles/studio

2026-05-05 11:59:19 UTC (buildkit.dockerfile.v0)

WORKDIR /openedx/edx-platform

2026-05-05 11:59:21 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c $PIP_COMMAND install -e . # buildkit

2026-05-05 11:59:21 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c mkdir -p /openedx/config ./lms/envs/tutor ./cms/envs/tutor # buildkit

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app revisions.yml /openedx/config/ # buildkit

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

ENV LMS_CFG=/openedx/config/lms.env.yml

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

ENV CMS_CFG=/openedx/config/cms.env.yml

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

ENV REVISION_CFG=/openedx/config/revisions.yml

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/lms/*.py ./lms/envs/tutor/ # buildkit

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/cms/*.py ./cms/envs/tutor/ # buildkit

2026-05-05 11:59:22 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c make clean_translations # buildkit

2026-05-05 11:59:35 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n pull_plugin_translations --verbose --repository='openedx/openedx-translations' --revision='release/ulmo.3' # buildkit

2026-05-05 11:59:45 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n pull_xblock_translations --repository='openedx/openedx-translations' --revision='release/ulmo.3' # buildkit

2026-05-05 11:59:51 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c atlas pull --repository='openedx/openedx-translations' --revision='release/ulmo.3' translations/edx-platform/conf/locale:conf/locale translations/studio-frontend/src/i18n/messages:conf/plugins-locale/studio-frontend # buildkit

2026-05-05 12:00:03 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compile_xblock_translations # buildkit

2026-05-05 12:00:14 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py cms --settings=tutor.i18n compile_xblock_translations # buildkit

2026-05-05 12:00:23 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compile_plugin_translations # buildkit

2026-05-05 12:00:30 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compilemessages -v1 # buildkit

2026-05-05 12:00:38 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms --settings=tutor.i18n compilejsi18n # buildkit

2026-05-05 12:00:45 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py cms --settings=tutor.i18n compilejsi18n # buildkit

2026-05-05 12:00:46 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app ./bin /openedx/bin # buildkit

2026-05-05 12:00:46 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c chmod a+x /openedx/bin/* # buildkit

2026-05-05 12:00:46 UTC (buildkit.dockerfile.v0)

ENV PATH=/openedx/bin:/openedx/venv/bin:./node_modules/.bin:/openedx/nodeenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-05 12:00:48 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run postinstall # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too. # buildkit

2026-05-05 12:00:59 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run compile-sass -- --skip-themes # buildkit

2026-05-05 12:03:01 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run webpack # buildkit

2026-05-05 12:18:06 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app ./themes/ /openedx/themes # buildkit

2026-05-05 12:18:07 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c npm run compile-sass -- --skip-default # buildkit

2026-05-05 12:20:05 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c ./manage.py lms collectstatic --noinput --settings=tutor.assets && ./manage.py cms collectstatic --noinput --settings=tutor.assets && rdfind -makesymlinks true -followsymlinks true /openedx/staticfiles/ # buildkit

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c mkdir /openedx/data # buildkit

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

RUN |2 PIP_COMMAND=uv pip APP_USER_ID=1000 /bin/sh -c echo "This copy of edx-platform was built into a Docker image." > bindmount-canary # buildkit

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

ENV SERVICE_VARIANT=lms

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

ENV DJANGO_SETTINGS_MODULE=lms.envs.tutor.production

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

EXPOSE [8000/tcp]

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

ENV UWSGI_WORKERS=2

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

COPY --chown=app:app settings/uwsgi.ini /openedx # buildkit

2026-05-05 12:20:06 UTC (buildkit.dockerfile.v0)

CMD ["uwsgi" "/openedx/uwsgi.ini"]

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete