/go-socker

Secure Docker in Golang

Primary LanguageGoMIT LicenseMIT

go-socker

A wrapper for secure running of Docker containers on Slurm implement in Golang. Inspired by the paper Enabling Docker Containers for High-Performance and Many-Task Computing and socker.

Introduction

Socker is secure for enabling unprivileged users to run Docker containers. It mainly does two things:

Quick Start

Prerequisite

MUST

  • CentOS/Redhat at present
  • Docker 1.6+
  • Golang 1.8.3+
  • You MUST have a group docker and a user dockerroot who is member of ONLY the docker group. The docker run command will be executed as dockerroot.

To add the dockerroot user to docker group:

usermod -aG docker dockerroot

Optional

  • Slurm is not a prerequisite, but if you run socker inside a Slurm job, it will put the container under Slurm's control.
  • libcgroup-tools should be installed for cgroup limit set.

Support and Bug Reports