deployment templates for lichen
README.md

Deploying Lichen #

This repo contains reference configurations for deploying lichen.page to a server.

Docker images #

Official images are on Docker Hub: notplants/lichen-full and notplants/lichen-min.

Image Size Description
notplants/lichen-full ~87MB All features: git sync, AT Protocol auth, OIDC, Hugo, mdbook, shell access. Includes hugo, git, and git-remote-pds. (recommended)
notplants/lichen-min ~23MB Lichen SSG only, no external dependencies.

Pull the latest:

docker pull notplants/lichen-full:latest

The docker-compose/ directory has a ready-to-use setup with lichen + Caddy (automatic HTTPS).

cd docker-compose
cp .env.example .env   # set DOMAIN and ADMIN_PASSWORD
docker compose up -d

See docker-compose/README.md for full instructions including custom binaries and tmpfs configuration.

Other deployment methods #

Method Directory Description
Ansible ansible/ Automates Docker install, file sync, and lifecycle on a VPS. Wraps the docker-compose setup.
Helm helm/ Kubernetes Helm chart.

Each directory has its own README with setup instructions.

Local verification #

Run python3 -m unittest discover -s tests for the isolated entrypoint checks. Ansible playbooks can be checked without deploying using ansible-playbook -i inventory.example.yml --syntax-check override.yml from ansible/.