Hastatic: A tiny static content web server for Docker

abhin4v

Abhinav Sarkar

Posted on January 22, 2019

Hastatic: A tiny static content web server for Docker

I wrote this teeny-tiny static content web server for Docker. Just use it as the base image to add your website content and you get a Docker image of your website with a server baked in! And it's choked full of features too.

Check it out:

GitHub logo abhin4v / hastatic

hastatic is a tiny static content web server for Docker

hastatic

Docker Build Status Docker Pulls MicroBadger Size

hastatic is a very small web server for serving static files from a Docker container.

Features

  • A lightweight web server, just 5 MB in size.
  • Built for Docker.
  • Supports HTTPS.
  • Supports custom 404 file.
  • Supports custom index files for URLs ending with "/".
  • Takes care to not serve hidden files.
  • Adds caching headers automatically.
  • Adds security headers automatically.
  • Caches file descriptors and info for better performance.

Usage

Create a Dockerfile for your website, deriving from abhin4v/hastatic:

FROM abhin4v/hastatic:latest

COPY mywebsite /opt/mywebsite
WORKDIR /opt/mywebsite
CMD ["/usr/bin/hastatic"]
Enter fullscreen mode Exit fullscreen mode

Build and run:

$ docker build -t mywebsite .
$ # run with default configs
$ docker run -p 8080:3000 mywebsite
$ # run with custom configs
$ docker run -e PORT=2000 -e NF_FILE=404.html -e IDX_FILE=index.html -p 8080:2000 mywebsite
$ # run with HTTPS support
$ docker run -e TLS_CERT_FILE=certificate.pem -e TLS_KEY_FILE=key.pem -p 443:3000 mywebsite
Enter fullscreen mode Exit fullscreen mode

Configuration

The Docker image supports…

💖 💪 🙅 🚩
abhin4v
Abhinav Sarkar

Posted on January 22, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related