A collection of Dockerfiles for CodeOcean.
Compatible runner managements:
Each execution environment should be derived from docker_exec_phusion
docker_exec_phusion: Base image for all execution environmentsco_execenv_<langauge>: An image used by CodeOcean for the specific programming language and version
All supported images are built for the following architectures:
amd64arm64
The following images are probably not compatible with Poseidon or other runner managements. Their use is discouraged.
ubuntu-base: Deprecated ubuntu base imageubuntu-<language>: Deprecated images previously used by CodeOcean
Deprecated images are only available for the amd64 architecture.
Each image derived from docker_exec_phusion should be compatible with a non-privileged user called user. Any user code will be executed as this user with the /sbin/setuser script provided by the base image.
docker build --no-cache -t openhpi/docker_exec_phusion docker_exec_phusion/.
docker build --no-cache -t openhpi/co_execenv_java:17 co_execenv_java/17/.
# ...docker run -it openhpi/docker_exec_phusion bashAll images are published to Docker Hub and always support the amd64 and arm64 architectures.
docker buildx build --platform linux/amd64,linux/arm64 --tag openhpi/docker_exec_java:17 --push co_execenv_java/17/.