GmCapsule Docker Documentation

Welcome to the GmCapsule Docker documentation. This guide will help you deploy and manage a GmCapsule server using Docker containers.

Docker Python License

What is GmCapsule?

GmCapsule is an extensible server for the Gemini protocol, written in Python by skyjake (developer of the Lagrange browser). It supports:

  • Gemini Protocol – Lightweight, privacy-focused protocol

  • Titan Protocol – File upload extension

  • CGI Support – Dynamic content generation

  • Python Extensions – Modular architecture

What is this Docker Container?

This project provides a production-ready Docker container for GmCapsule with:

  • ✅ Multi-architecture support (AMD64, ARM64)

  • ✅ Security hardened (non-root user, read-only filesystem)

  • ✅ Automatic TLS certificate generation

  • ✅ Health checks and monitoring

  • ✅ Easy configuration and deployment

Quick Start

Get started in minutes:

  1. Pull the image:

    docker pull ghcr.io/smeeth/gmcapsule-docker:latest
    
  2. Create configuration: See our Quick Start Guide

  3. Run the container:

    docker compose up -d
    
  4. Access your capsule: Connect with a Gemini browser.

New to Gemini? Check out our [Quick Start Guide](quickstart.md) for a step-by-step walkthrough.

Documentation

:maxdepth: 2
:caption: Getting Started

quickstart
installation
configuration
:maxdepth: 2
:caption: User Guide

usage
gemtext
cgi-scripts
extensions
:maxdepth: 2
:caption: Advanced Topics

security
deployment
monitoring
troubleshooting
:maxdepth: 2
:caption: Reference

environment-variables
volumes
api-reference
:maxdepth: 1
:caption: Community

contributing
changelog
license

Indices and Tables