Public | Automated Build

Last pushed: a month ago
Short Description
Alpine Linux based CUPS server
Full Description

CUPS on Docker

This is a Docker image to run a CUPS instance with built in Apples zeroconf support.

This Docker image is based on the offical Alpine image.

Table of Contents

Install Docker

To use this image you have to install Docker first.


You can get the trusted build from the Docker Hub registry:

docker pull thbe/cups

Alternatively, you may build the Docker image from the
source code on GitHub.

How to use this image

Environment variables

You can use two environment variables that will be recognized by the start script.


If this environment variable is set, the string will be used as the password for the root user.


If this environment variable is set, the scripts inside the container will run in debug mode.

Start the CUPS instance

The instance can be started by the start script
from GitHub:

export CUPS_PASSWORD='SeCre!1'
chmod 755

Check server status

You can use the standard Docker commands to examine the status of the CUPS instance:

docker logs --tail 1000 --follow --timestamps cups

Next steps

The next release of this Docker image should have a persistent CUPS configuration.

Important notes

The username for the print server is root/password unless you don't change the password with the environment
variable as described in the Environment variables

Update Docker image

Simply download the trusted build from the Docker Hub registry:

docker pull thbe/cups

Advanced usage

Build from source code

You can build the image also from source. To do this you have to clone the
docker-cups repository from GitHub:

git clone
cd docker-cups
docker build --rm --no-cache -t thbe/cups .

Bash shell inside container

If you need a shell inside the container you can run the following command:

docker exec -ti cups /bin/sh

Technical details

  • Alpine base image
  • CUPS binary from official Alpine package repository


If you like to add functions or improve this Docker image, feel free to fork the repository and send me a merge request with the modification.

Docker Pull Command
Source Repository