detailed look at wiki components

Several components collaborate to make this local wiki farm work. Here we consider the parts and their interaction with the whole.

# Browser

Your web browser is an essential component. Most of your interaction with the local wiki farm will happen through your browser.

# DNS (& especially localtest.me)

When your browser asks The Net where to find "localtest.me", it replies, "127.0.0.1" also known as "localhost" which is right where you are: on your own computer.

# Docker & docker-compose

For our purposes, docker simulates a network within our laptop. In that network we run several services. The `docker-compose.yml` config file allows us to describe the network services succinctly, and the `docker-compose` command allows us to type simpler instructions at the command line when we wish to control or interact with the admin side of these services.

# Proxy

A reverse proxy server manages transport layer security (TLS) for our wiki. We use a web server named Caddy configured with self-signed certificates in large part because the configuration is remarkably easy. Including a reverse proxy also offers us a place to dispatch requests to adjacent services. For example, Caddy directs requests for the image-transporter to that service, and sends all other requests to our wiki farm. See Caddy

The configuration for our proxy service is maintained at Github, and published at Dockerhub:

# Farm

The heart of our service is a federated wiki server configured to act as a farm using the friends security plugin.

The configuration for our wiki container is also maintained at Github and published at Dockerhub:

# Image Transporter

The configuration for our image transporter service is also maintained at Github and published at Dockerhub