Skip to content

Latest commit

 

History

History
56 lines (35 loc) · 1.71 KB

README.md

File metadata and controls

56 lines (35 loc) · 1.71 KB

Dockerfiles

A collection of Dockerfiles for CodeOcean.

Compatible runner managements:

Each execution environment should be derived from docker_exec_phusion

Content of this repository

Supported images

  • docker_exec_phusion: Base image for all execution environments
  • co_execenv_<langauge>: An image used by CodeOcean for the specific programming language and version

All supported images are built for the following architectures:

  • amd64
  • arm64

Deprecated images

The following images are probably not compatible with Poseidon or other runner managements. Their use is discouraged.

  • ubuntu-base: Deprecated ubuntu base image
  • ubuntu-<language>: Deprecated images previously used by CodeOcean

Deprecated images are only available for the amd64 architecture.

New or updated images

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.

Build

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/.
# ...

Debugging

docker run -it openhpi/docker_exec_phusion bash

Publishing

All 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/.