Files
codeandClaude Fable 5 102c207bfc document conventions and add lint script
AGENTS.md: internal network pattern, ChangeThisPassword secrets convention,
_notes exemption, and a Known exceptions list (pihole, zammad-init,
compose-aio, VOL_PROJECTS nesting, mailu env_file, headscale config vars).
README.md: fix Preferred typo.
_docs/lint.py: checks every convention plus compose<->sample.env sync;
run with python3 _docs/lint.py.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 06:25:05 +00:00

93 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<div align="center">
<img src="https://i.4lt.ca/nickyeoman/dccb.png" alt="Nick Yeoman's Docker Compose Cookbook" width="800"/>
</div>
👤 Author: [Nick Yeoman](https://www.nickyeoman.com/).
Docker Compose file collection reference with the intent of running in production.
## Requirements and Support
I'm only one guy, I tested with
| Software | Version |
|---------------------|-----------|
| Debian | 13 |
| Docker Engine | 29.6.0 |
| Dockhand | 1.0.32 |
## 🤔 Assumptions
These compose files make a few assumptions:
1. You are running dockhand.
2. You are using Nginx Proxy Manager (although most have redundant port access).
## 📚 Workflow
The intended workflow is as follows:
1. Add the repository ```https://github.com/nickyeoman/docker-compose-cookbooks.git``` to your dockhand Git repositories (in settings)
1. Create the stack in dockhand
## 🛠 Project Directory Structure
Directories ending with _dev contain projects that are still under development or experimental. These are not yet considered production ready.
Directories ending with _notes contain projects that usually dont require a full Docker Compose file. They may include notes, example commands, or minimal Compose files just to illustrate setup. For example, the handbrake project has a compose-cpu.yaml and a compose-gpu.yaml.
## Test a Stack
To test a stack, clone the repository, navigate to the directory you're interested in, and run it:
```
git pull https://github.com/nickyeoman/docker-compose-cookbooks.git ~/cookbooks
cd ~/cookbooks
mkdir /data
touch /data/test.env
docker compose --env-file sample.env --env-file /data/test.env up -d
docker compose --env-file sample.env --env-file /data/test.env down
```
Multiple --env-file flags are supported and applied in order.
## Preferred Containers
These are projects that are not supported in this repo and the alternative:
1. [Dockge](https://dockge.kuma.pet/) - Simple Docker Compose stack manager with a clean UI for deploying and managing containers.
*Preferred alternative: Dockhand - lighter-weight and preferred by the user.*
1. [Dozzle](https://dozzle.dev/) — Real-time Docker log viewer web UI.
*Preferred alternative: Dockhand has built-in log viewing, making Dozzle redundant.*
1. [Gotify](https://gotify.net/) - Self-hosted push notification server for sending messages to apps.
*Preferred alternative: [ntfy](https://ntfy.sh/) - simpler pub/sub notification system with mobile and CLI support.*
1. [LinkWarden](https://linkwarden.app/) — Bookmark manager for saving and organizing web links.
*Preferred alternative: [Wallabag](https://wallabag.org/) — read-it-later tool for saving articles and offline reading.*
1. [Portainer](https://www.portainer.io/) - Popular Docker management platform with UI, role-based access, and orchestration features.
*Preferred alternative: Dockhand (not linked) - lighter-weight and preferred by the user.*
1. [Passbolt](https://www.passbolt.com/) - Self-hosted password manager built for team collaboration and sharing.
*Preferred alternative: [Vaultwarden](https://github.com/dani-garcia/vaultwarden) - lightweight Bitwarden-compatible server, supported in this repo as `vaultwarden_dev`.*
1. [Piwigo](https://piwigo.org/) - Self-hosted photo gallery and management software.
*Preferred alternative: [Immich](https://immich.app/) - modern photo and video management with mobile app, ML-powered search, and face recognition.*
1. [Upscayl](https://upscayl.org/) — AI image upscaling tool for enhancing image resolution.
*Preferred alternative: [InvokeAI](https://invoke-ai.github.io/) - full generative AI suite with upscaling and image generation workflows.*
1. [Uptime Kuma](https://uptime.kuma.pet/) - Self-hosted monitoring tool for uptime and service checks.
*Preferred alternative: [Gatus](https://github.com/TwinProduction/gatus) - code-based health/status dashboard with GitOps-style configuration.*
## Similar Projects
* [Awesome Compose](https://github.com/docker/awesome-compose/) - A starting point for integrating different services using a Compose file.
* [Docker compose collection](https://github.com/PAPAMICA/docker-compose-collection) Deploy multiple services easily and quickly.
* [Funky Penguin's Geek Cookbook](https://geek-cookbook.funkypenguin.co.nz/)
* [hotio.dev](https://hotio.dev/) - These are images not compose files, but very useful.