Public Repository

Last pushed: 2 years ago
Short Description
Unofficial image for INJECTION, a programming puzzle game
Full Description



Since the game needs to draw on a display, usage is a bit more complicated than usual:

On Ubuntu

docker run -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY underyx/injection

On macOS

Make sure that socat is available. You can install it with Homebrew with brew install socat.

socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"
docker run -e DISPLAY= underyx/injection

You might need to replace the IP address here — you can check your virtual machine's network address with ifconfig to find the correct one.

Building this image

  1. Download and extract the game's source code from
  2. Add two packages to the requirements.txt file: cython and hg+
  3. Use the Dockerfile from below


FROM python:3.5

MAINTAINER Bence Nagy <>

RUN apt-get clean && \
  apt-get update && \
  apt-get install -y python3-tk mercurial python3-dev python3-numpy \
  python3-opengl libav-tools libsdl-image1.2-dev libsdl-mixer1.2-dev \
  libsdl-ttf2.0-dev libsmpeg-dev libsdl1.2-dev libportmidi-dev libswscale-dev \
  libavformat-dev libavcodec-dev libtiff5-dev libx11-6 libx11-dev \
  fluid-soundfont-gm musescore-soundfont-gm xfonts-base xfonts-100dpi \
  xfonts-75dpi xfonts-cyrillic fontconfig fonts-freefont-ttf

RUN mkdir /app

COPY requirements.txt /app
RUN pip install --no-cache-dir -r requirements.txt

COPY . /app
RUN pip install .

CMD [ "python", "" ]

Note that this Dockerfile is quite wasteful with space; some of those apt packages might not be necessary, and most should be possible to remove after pygame has been built.

Docker Pull Command