Skip to content

eecs-autograder/base-docker-images

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Autograder Sandbox Base Images

This repository contains the source files for supported base images. These images all work with the Autograder Sandbox library and can be inherited from to create new images.

Contributions to this repository are welcome in the form of pull requests. Each base image should be placed in a separate directory in the top-level directory of this repo. Those image-specific directories should contain a file named Dockerfile and any other files needed to build the image. For a base image to be valid, it must meet the following requirements:

  • A user named autograder must exist
  • A directory of /home/autograder/working_dir must be set as the image's WORKDIR and must be owned by the autograder user.
  • The image must enter via user root.
  • Python 3.5 or greater must be installed and available on the system PATH.

The following Dockerfile snippet accomplishes this for Ubuntu 16, 18, and 20:

RUN apt-get update --fix-missing && apt-get install -y python3

RUN mkdir -p /home/autograder/working_dir

RUN useradd autograder && \
   mkdir -p /home/autograder/working_dir && \
   chown -R autograder:autograder /home/autograder

WORKDIR /home/autograder/working_dir

# Ubuntu 20 has a different default CMD directive, so we 
# need to specify this explicity.
CMD ["/bin/bash"]

# Make sure that this is the last USER directive in your Dockerfile
USER root

Images

This section lists the tags for each supported base image.

eecsautograder/ubuntu16:latest: Based on Ubuntu 16 (Xenial)

eecsautograder/ubuntu18:latest: Based on Ubuntu 18 (Bionic)

eecsautograder/ubuntu20:latest: Based on Ubuntu 20 (Focal)

eecsautograder/ubuntu22:latest: Based on Ubuntu 22 (Jammy)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages