{"id":48185000,"url":"https://github.com/radioastronomyio/docker-compose-cookbook","last_synced_at":"2026-04-04T17:47:56.575Z","repository":{"id":198814704,"uuid":"701605828","full_name":"radioastronomyio/docker-compose-cookbook","owner":"radioastronomyio","description":"A collection of Docker compose scripts centered around use in a home lab for learning IT technologies.","archived":false,"fork":false,"pushed_at":"2026-03-29T20:58:26.000Z","size":2360,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-29T22:27:58.930Z","etag":null,"topics":["ai-ml","bash","docker","docker-compose","docker-gpu","infrastructure-as-code","powershell"],"latest_commit_sha":null,"homepage":"https://radioastronomy.io","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/radioastronomyio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2023-10-07T03:26:34.000Z","updated_at":"2026-03-29T20:58:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"89bcad03-fc94-47c7-9ede-c4c1b205032d","html_url":"https://github.com/radioastronomyio/docker-compose-cookbook","commit_stats":null,"previous_names":["vintagedon/powershell","vintagedon/infrastructure-scripting","vintagedon/docker-compose-cookbook","radioastronomyio/docker-compose-cookbook"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/radioastronomyio/docker-compose-cookbook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radioastronomyio%2Fdocker-compose-cookbook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radioastronomyio%2Fdocker-compose-cookbook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radioastronomyio%2Fdocker-compose-cookbook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radioastronomyio%2Fdocker-compose-cookbook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/radioastronomyio","download_url":"https://codeload.github.com/radioastronomyio/docker-compose-cookbook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radioastronomyio%2Fdocker-compose-cookbook/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31407653,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-ml","bash","docker","docker-compose","docker-gpu","infrastructure-as-code","powershell"],"created_at":"2026-04-04T17:47:56.445Z","updated_at":"2026-04-04T17:47:56.566Z","avatar_url":"https://github.com/radioastronomyio.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\n---\ntitle: \"Docker Compose Cookbook\"\ndescription: \"Curated Docker Compose configurations for self-hosted services\"\nauthor: \"VintageDon\"\ndate: \"2026-03-29\"\nversion: \"3.2\"\nstatus: \"Active\"\ntags:\n  - type: project-root\n  - domain: [docker, self-hosting, homelab]\n  - tech: [docker, compose, yaml]\nrelated_documents:\n  - \"[Docker Compose Docs](https://docs.docker.com/compose/)\"\n  - \"[RadioAstronomy.io](https://github.com/radioastronomyio)\"\n---\n--\u003e\n\n# 🐳 Docker Compose Cookbook\n\n![Repository Banner](assets/repo-banner.jpg)\n\n[![Docker](https://img.shields.io/badge/Docker-20.10+-2496ED?logo=docker)](https://www.docker.com/)\n[![Compose](https://img.shields.io/badge/Compose-v2-2496ED?logo=docker)](https://docs.docker.com/compose/)\n[![License](https://img.shields.io/badge/License-MIT-yellow)](LICENSE)\n[![Recipes](https://img.shields.io/badge/Recipes-100+-green)]()\n\n\u003e Curated Docker Compose configurations for self-hosted services, organized by category with comprehensive documentation.\n\nThis cookbook provides copy-and-deploy Docker Compose configurations for common infrastructure services. Each recipe includes sensible defaults, environment templates, and documentation covering configuration, security, performance tuning, and troubleshooting. Clone a recipe, customize the `.env` file, and deploy in minutes.\n\n---\n\n## 🔭 Background\n\n![Docker Compose Cookbook Infographic](assets/docker-compose-cookbook-primary-infographic.jpg)\n\nSelf-hosting services requires researching Docker configurations, understanding environment variables, and troubleshooting deployment issues. This friction slows adoption and leads to inconsistent setups across environments.\n\nThe Docker Compose Cookbook addresses this by providing:\n\n- Standardized recipes: every recipe follows the same structure, so once you've used one, you understand them all\n- Comprehensive documentation: each recipe includes configuration guides, security considerations, and troubleshooting help\n- Sensible defaults: configurations work out of the box while remaining customizable\n- Category organization: services grouped by function for easy discovery\n\n---\n\n## 🎯 Target Audience\n\n| Audience | Use Case |\n|----------|----------|\n| Home Lab Enthusiasts | Deploy self-hosted alternatives to cloud services |\n| DevOps Learners | Learn Docker Compose patterns through working examples |\n| Small Teams | Quick infrastructure setup without enterprise complexity |\n| Developers | Local development environments mirroring production |\n\n---\n\n## 📦 Categories\n\n| Category | Recipes | Status | Jump |\n|----------|---------|--------|------|\n| AI \u0026 Machine Learning | 21 | Active | [→](#ai--machine-learning) |\n| Automation \u0026 Orchestration | 8 | Active | [→](#automation--orchestration) |\n| Container Management | 3 | Active | [→](#container-management) |\n| Databases | 20 | Active | [→](#databases) |\n| Development \u0026 CI/CD | 9 | Active | [→](#development--cicd) |\n| Home Automation | 1 | Active | [→](#home-automation) |\n| Media \u0026 Entertainment | 8 | Active | [→](#media--entertainment) |\n| Messaging \u0026 Collaboration | 2 | Active | [→](#messaging--collaboration) |\n| Monitoring \u0026 Logging | 13 | Active | [→](#monitoring--logging) |\n| Networking | 10 | Active | [→](#networking) |\n| Personal Utilities | 8 | Active | [→](#personal-utilities) |\n| Security | 2 | Active | [→](#security) |\n| Storage Solutions | 6 | Active | [→](#storage-solutions) |\n| Web Application Servers | 6 | Active | [→](#web-application-servers) |\n\n---\n\n## AI \u0026 Machine Learning\n\nDocker Compose recipes for local LLM inference, AI tools, image generation, and machine learning platforms. GPU acceleration supported via NVIDIA Container Toolkit.\n\n| Subcategory | Description | Recipes |\n|-------------|-------------|---------|\n| [llm-inference](ai-ml/llm-inference/README.md) | LLM inference engines | Ollama, LocalAI, Text-Generation-WebUI, vLLM |\n| [chat-interfaces](ai-ml/chat-interfaces/README.md) | Chat UIs and RAG platforms | Open WebUI, LibreChat, AnythingLLM, PrivateGPT |\n| [image-generation](ai-ml/image-generation/README.md) | Image synthesis tools | Automatic1111, ComfyUI, Fooocus, InvokeAI, SwarmUI |\n| [audio-intelligence](ai-ml/audio-intelligence/README.md) | Speech recognition | Faster Whisper, Wyoming Whisper |\n| [document-processing](ai-ml/document-processing/README.md) | Document manipulation with OCR | Stirling-PDF |\n| [rag-engines](ai-ml/rag-engines/README.md) | RAG orchestration | RAGFlow |\n| [search-engines](ai-ml/search-engines/README.md) | AI-powered search | Perplexica |\n| [ai-agents](ai-ml/ai-agents/README.md) | Autonomous AI agents | OpenHands |\n| [data-annotation](ai-ml/data-annotation/README.md) | ML data labeling | Label Studio, CVAT |\n\n[→ Full details](ai-ml/README.md)\n\n---\n\n## Automation \u0026 Orchestration\n\nInfrastructure automation, workflow engines, and AI agent platforms.\n\n| Recipe | Description |\n|--------|-------------|\n| [ansibleawx-postgres-redis](automation-orchestration/ansibleawx-postgres-redis/README.md) | Ansible AWX with PostgreSQL and Redis |\n| [rundeck](automation-orchestration/rundeck/README.md) | Job scheduler and runbook automation |\n| [stackstorm-mongodb-rabbitmq-postgres](automation-orchestration/stackstorm-mongodb-rabbitmq-postgres/README.md) | Event-driven automation platform |\n| [n8n](automation-orchestration/n8n/README.md) | Workflow automation with LangChain integration |\n| [flowise](automation-orchestration/flowise/README.md) | Low-code LangChain app builder |\n| [dify](automation-orchestration/dify/README.md) | GenAI application development platform |\n| [changedetection](automation-orchestration/changedetection/README.md) | Website change monitoring |\n| [postiz](automation-orchestration/postiz/README.md) | Social media scheduling |\n\n[→ Full details](automation-orchestration/README.md)\n\n---\n\n## Container Management\n\nContainer orchestration interfaces and management tools.\n\n| Recipe | Description |\n|--------|-------------|\n| [portainer](container-management/portainer/README.md) | Container management UI |\n| [dockge](container-management/dockge/README.md) | Docker Compose stack manager |\n| [watchtower](container-management/watchtower/README.md) | Automated container updates |\n\n[→ Full details](container-management/README.md)\n\n---\n\n## Databases\n\nSQL, NoSQL, time series, vector, and graph databases organized by data model.\n\n| Subcategory | Description | Recipes |\n|-------------|-------------|---------|\n| [relational](databases/relational/README.md) | SQL databases | MySQL, MariaDB, PostgreSQL, SQLite |\n| [document](databases/document/README.md) | Document stores | MongoDB, CouchDB |\n| [key-value](databases/key-value/README.md) | In-memory stores | Redis, Dragonfly |\n| [graph](databases/graph/README.md) | Graph databases | Neo4j |\n| [timeseries](databases/timeseries/README.md) | Time series databases | InfluxDB, QuestDB |\n| [vector](databases/vector/README.md) | Vector embeddings for RAG | Qdrant, Milvus, Weaviate, ChromaDB |\n| [wide-column](databases/wide-column/README.md) | Wide-column stores | Cassandra |\n| [management](databases/management/README.md) | Admin tools | pgAdmin, phpMyAdmin, Mongo Express, Redis Commander |\n\n[→ Full details](databases/README.md)\n\n---\n\n## Development \u0026 CI/CD\n\nGit servers, CI/CD pipelines, and development tools.\n\n| Recipe | Description |\n|--------|-------------|\n| [gitea-mysql](development-ci-cd/gitea-mysql/README.md) | Gitea with MySQL backend |\n| [gitea-postgresql](development-ci-cd/gitea-postgresql/README.md) | Gitea with PostgreSQL backend |\n| [gitea-sqlite3](development-ci-cd/gitea-sqlite3/README.md) | Gitea with SQLite backend |\n| [gitlabce](development-ci-cd/gitlabce/README.md) | GitLab Community Edition |\n| [gogs-mysql](development-ci-cd/gogs-mysql/README.md) | Gogs with MySQL backend |\n| [gogs-postgres](development-ci-cd/gogs-postgres/README.md) | Gogs with PostgreSQL backend |\n| [gogs-sqlite3](development-ci-cd/gogs-sqlite3/README.md) | Gogs with SQLite backend |\n| [jenkins-sqlite3](development-ci-cd/jenkins-sqlite3/README.md) | Jenkins CI server |\n| [code-server](development-ci-cd/code-server/README.md) | VS Code in the browser |\n\n[→ Full details](development-ci-cd/README.md)\n\n---\n\n## Home Automation\n\nSmart home platforms, IoT, and home infrastructure.\n\n| Recipe | Description |\n|--------|-------------|\n| [frigate](home-automation/frigate/README.md) | AI-powered NVR with object detection |\n\nPlanned: Home Assistant, Node-RED, Mosquitto MQTT.\n\n[→ Full details](home-automation/README.md)\n\n---\n\n## Media \u0026 Entertainment\n\nMedia servers, photo management, streaming platforms, and the complete *Arr media automation stack.\n\n| Recipe | Description |\n|--------|-------------|\n| [jellyfin](media-entertainment/jellyfin/README.md) | Open-source media server with GPU transcoding |\n| [prowlarr](media-entertainment/prowlarr/README.md) | Indexer manager for *Arr stack |\n| [sonarr](media-entertainment/sonarr/README.md) | TV series lifecycle management |\n| [radarr](media-entertainment/radarr/README.md) | Movie lifecycle management |\n| [jellyseerr](media-entertainment/jellyseerr/README.md) | Media request management |\n| [bazarr](media-entertainment/bazarr/README.md) | Subtitle automation |\n| [immich](media-entertainment/immich/README.md) | Self-hosted Google Photos alternative |\n| [audiobookshelf](media-entertainment/audiobookshelf/README.md) | Audiobook and podcast server |\n\n[→ Full details](media-entertainment/README.md)\n\n---\n\n## Messaging \u0026 Collaboration\n\nPush notifications, newsletters, and team communication.\n\n| Recipe | Description |\n|--------|-------------|\n| [ntfy](messaging-collaboration/ntfy/README.md) | Push notification server |\n| [listmonk](messaging-collaboration/listmonk/README.md) | Newsletter and mailing list manager |\n\n[→ Full details](messaging-collaboration/README.md)\n\n---\n\n## Monitoring \u0026 Logging\n\nMetrics collection, visualization, log aggregation, and system observability.\n\n| Recipe | Description |\n|--------|-------------|\n| [Prometheus](monitoring-logging/Prometheus/README.md) | Time series metrics database |\n| [grafana](monitoring-logging/grafana/README.md) | Metrics visualization |\n| [graylog-elasticsearch-mongodb](monitoring-logging/graylog-elasticsearch-mongodb/README.md) | Centralized log management |\n| [fluentd](monitoring-logging/fluentd/README.md) | Unified logging layer |\n| [cacti-mysql](monitoring-logging/cacti-mysql/README.md) | Network graphing with RRDtool |\n| [uptime-kuma](monitoring-logging/uptime-kuma/README.md) | Status monitoring |\n| [beszel](monitoring-logging/beszel/README.md) | Lightweight server monitoring |\n| [glitchtip](monitoring-logging/glitchtip/README.md) | Error tracking (Sentry alternative) |\n| [homarr](monitoring-logging/homarr/README.md) | Dashboard for self-hosted services |\n| [scrutiny](monitoring-logging/scrutiny/README.md) | Hard drive S.M.A.R.T. monitoring |\n| [netdata](monitoring-logging/netdata/README.md) | Real-time performance monitoring |\n| [dozzle](monitoring-logging/dozzle/README.md) | Real-time container log viewer |\n| [matomo](monitoring-logging/matomo/README.md) | Web analytics (Google Analytics alternative) |\n\n[→ Full details](monitoring-logging/README.md)\n\n---\n\n## Networking\n\nVPNs, DNS servers, reverse proxies, ad blocking, and network tools.\n\n| Recipe | Description |\n|--------|-------------|\n| [adguard-home](networking/adguard-home/README.md) | Network-wide ad blocking |\n| [pihole](networking/pihole/README.md) | DNS-based ad blocking |\n| [wireguard](networking/wireguard/README.md) | Modern VPN tunnel |\n| [openvpn](networking/openvpn/README.md) | OpenVPN server |\n| [softethervpn](networking/softethervpn/README.md) | Multi-protocol VPN server |\n| [searxng](networking/searxng/README.md) | Privacy-respecting metasearch engine |\n| [nginx-proxy-manager](networking/nginx-proxy-manager/README.md) | Reverse proxy with GUI |\n| [traefik](networking/traefik/README.md) | Cloud-native edge router |\n| [headscale](networking/headscale/README.md) | Self-hosted Tailscale control server |\n| [guacamole](networking/guacamole/README.md) | Clientless remote desktop gateway |\n\n[→ Full details](networking/README.md)\n\n---\n\n## Personal Utilities\n\nKnowledge management, productivity tools, and personal finance.\n\n| Recipe | Description |\n|--------|-------------|\n| [bookstack](personal-utilities/bookstack/README.md) | Wiki and documentation platform |\n| [linkwarden](personal-utilities/linkwarden/README.md) | Bookmark manager with archival |\n| [excalidraw](personal-utilities/excalidraw/README.md) | Virtual whiteboard |\n| [firefly-iii](personal-utilities/firefly-iii/README.md) | Personal finance manager |\n| [it-tools](personal-utilities/it-tools/README.md) | Developer utilities collection |\n| [hoarder](personal-utilities/hoarder/README.md) | Bookmark and read-later app |\n| [mealie](personal-utilities/mealie/README.md) | Recipe manager |\n| [actual-budget](personal-utilities/actual-budget/README.md) | Budget tracking |\n\n[→ Full details](personal-utilities/README.md)\n\n---\n\n## Security\n\nAuthentication, secrets management, and password vaults.\n\n| Recipe | Description |\n|--------|-------------|\n| [authentik](security/authentik/README.md) | Identity provider and SSO |\n| [vaultwarden](security/vaultwarden/README.md) | Bitwarden-compatible password manager |\n\n[→ Full details](security/README.md)\n\n---\n\n## Storage Solutions\n\nFile synchronization, backup tools, and document management.\n\n| Recipe | Description |\n|--------|-------------|\n| [nextcloud-aio](storage-solutions/nextcloud-aio/README.md) | Self-hosted cloud storage |\n| [paperless-ngx](storage-solutions/paperless-ngx/README.md) | Document management system |\n| [filebrowser](storage-solutions/filebrowser/README.md) | Web file manager |\n| [pingvin-share](storage-solutions/pingvin-share/README.md) | File sharing (WeTransfer alternative) |\n| [syncthing](storage-solutions/syncthing/README.md) | Decentralized file sync |\n| [duplicati](storage-solutions/duplicati/README.md) | Encrypted backup solution |\n\n[→ Full details](storage-solutions/README.md)\n\n---\n\n## Web Application Servers\n\nCMS platforms, no-code databases, and business applications.\n\n| Recipe | Description |\n|--------|-------------|\n| [ghost](web-application-servers/ghost/README.md) | Professional publishing platform |\n| [baserow](web-application-servers/baserow/README.md) | No-code database (Airtable alternative) |\n| [invoice-ninja](web-application-servers/invoice-ninja/README.md) | Invoicing and billing |\n| [docmost](web-application-servers/docmost/README.md) | Documentation platform |\n| [penpot](web-application-servers/penpot/README.md) | Design platform (Figma alternative) |\n| [twenty](web-application-servers/twenty/README.md) | CRM platform |\n\n[→ Full details](web-application-servers/README.md)\n\n---\n\n## 🚀 Quick Start\n\n```bash\n# Clone the repository\ngit clone https://github.com/radioastronomyio/docker-compose-cookbook.git\ncd docker-compose-cookbook\n\n# Navigate to desired recipe\ncd media-entertainment/jellyfin\n\n# Copy and customize environment\ncp .env.example .env\nnano .env  # or your preferred editor\n\n# Deploy\ndocker compose up -d\n\n# Verify\ndocker compose ps\ndocker compose logs\n```\n\n---\n\n## 📋 Recipe Structure\n\nEvery recipe follows a standardized structure:\n\n```\nrecipe-name/\n├── docker-compose.yml    # Main compose configuration\n├── .env.example          # Environment template (copy to .env)\n├── README.md             # Quick start and overview\n├── docs/                 # Extended documentation (optional)\n│   ├── CONFIGURATION.md\n│   ├── SECURITY.md\n│   └── TROUBLESHOOTING.md\n└── scripts/              # Helper scripts (optional)\n```\n\n---\n\n## 🔧 Requirements\n\n| Requirement | Version | Notes |\n|-------------|---------|-------|\n| Docker Engine | 20.10+ | [Install guide](https://docs.docker.com/engine/install/) |\n| Docker Compose | v2+ | Included with Docker Desktop; [standalone install](https://docs.docker.com/compose/install/) |\n| Git | Any | For cloning the repository |\n| NVIDIA Container Toolkit | Latest | Required for GPU-accelerated recipes |\n\n---\n\n## 🤝 OSS Program Support\n\nThis repository benefits from open source programs that provide tooling to qualifying public repositories.\n\n| Program | Provides | Use Case |\n|---------|----------|----------|\n| [Greptile](https://greptile.com) | AI code review | PR review, codebase Q\u0026A |\n| [Atlassian](https://www.atlassian.com/software/views/open-source-license-request) | Jira, Confluence | Project tracking, documentation |\n\n---\n\n## 🌟 Open Science Philosophy\n\nWe practice open science and open methodology, our version of \"showing your work\":\n\n- Research methodologies are fully documented and repeatable\n- Infrastructure configurations are version-controlled and automated\n- Scripts and pipelines are published so others can learn, adapt, or improve them\n- Learning processes are captured and shared for community benefit\n\nAll projects operate under open source licenses (primarily MIT) to ensure maximum reproducibility.\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! To add a new recipe:\n\n1. Copy the `skeleton/` template to the appropriate category\n2. Customize the compose file and documentation\n3. Test the deployment locally\n4. Submit a pull request\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.\n\n---\n\n## 📄 License\n\n[MIT](LICENSE) © 2025 VintageDon\n\n---\n\n## 🙏 Acknowledgments\n\n- [Docker](https://www.docker.com/) for the container platform\n- [LinuxServer.io](https://www.linuxserver.io/) for well-maintained Docker images\n- [Awesome-Selfhosted](https://github.com/awesome-selfhosted/awesome-selfhosted) for self-hosting inspiration\n- [RadioAstronomy.io](https://github.com/radioastronomyio) research organization\n\n---\n\nLast Updated: 2026-03-29 | 100+ Active Recipes | 14 Categories\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradioastronomyio%2Fdocker-compose-cookbook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fradioastronomyio%2Fdocker-compose-cookbook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradioastronomyio%2Fdocker-compose-cookbook/lists"}