CHNS Docker Compose Library
A public collection of Docker Compose files I use across my homelab and self-hosted infrastructure. Rather than managing configs directly on each server, I keep everything version-controlled here and pull them into Portainer for deployment.
Feel free to use any of these as a starting point for your own setup. Each application folder also has a companion article linked below where I walk through the full configuration and deployment process.
Applications
| Application | Description | Walkthrough |
|---|---|---|
| Doku | Docker volume backup and management tool | Read the article |
| Draw.io | Self-hosted diagramming and flowchart tool | Read the article |
| Gitea | Lightweight self-hosted Git service | Read the article |
| IT-Tools | Collection of handy tools for developers and sysadmins | Read the article |
| Seerr / NFS | Media request management tool for self-hosted media servers | Read the article |
| Watchtower | Automatically keeps Docker container images up to date | Read the article |
Usage
Each application lives in its own folder with a docker-compose.yaml file. You can use them in a few ways:
Portainer Stack
- In Portainer, go to Stacks → Add Stack
- Choose Repository and point it at this repo, or use Web editor and paste the compose file contents directly
- Set any required environment variables and deploy
Docker Compose CLI
cd <AppName>
docker compose up -d
Make sure to review each compose file for environment variables, volume paths, or other values you may need to adjust for your environment before deploying.
Repository Structure
Docker-Compose/
├── Doku/
│ └── docker-compose.yaml
├── Draw.io/
│ └── docker-compose.yaml
├── Gitea/
│ └── docker-compose.yaml
├── IT-Tools/
│ └── docker-compose.yaml
├── Seerr/
│ ├── docker-compose.yaml
│ └── docker-compose-nfs.yaml
└── Watchtower/
└── docker-compose.yaml