- Perl 91.8%
- Dockerfile 8.2%
| colors-cgi-1.03 | ||
| nginx | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| Dockerfile | ||
| LICENSE | ||
| README.md | ||
| screencap-colors-cgi.png | ||
colors-cgi-in-a-docker 🎨
An old-style CGI web application for choosing colors from a customizable palette, packaged as a modern Docker container.
The original colors.cgi program was written by Jon Blank and released around the year 2000. This repository focuses on preserving that classic tool while making it easy to run today using containers.
Background
The application is a Perl CGI script that allows users to select colors from a palette and see their values. It represents a very typical example of early CGI-based web applications.
The directory colors-cgi-1.03/ contains version 1.03 (July 25, 2000) of the original program, kept as-is, without functional modifications.
This project simply provides:
- A containerized runtime
- A minimal web server setup
- A reproducible way to run the application today
What you get
A live demo is available here:
👉 https://colors.w.uy/cgi-bin/colors.cgi
Container Image
The container image is published to the GitLab Container Registry:
registry.gitlab.com/pilasguru/colors-cgi-in-a-docker
Supported architectures
The image is built as a multi-architecture image and runs on:
linux/amd64linux/arm64
Docker will automatically pull the correct variant for your system.
Running the container
To run the application locally:
docker run -d \
--name colors-cgi \
-p 8080:80 \
registry.gitlab.com/pilasguru/colors-cgi-in-a-docker:latest
Then open:
http://localhost:8080/cgi-bin/colors.cgi
Implementation notes
- The container is based on the official nginx image
- CGI support is provided via fcgiwrap
- The original Perl CGI script is executed unchanged
- No application logic has been modified
Credits
- Jon Blank (caspian@twu.net) for the original colors.cgi Perl program
License
- The original colors-cgi program is included without modification and is licensed under the GNU General Public License (GPL).
- All other files authored specifically for this repository are licensed under the WTFPL v2.

