mirror of
https://github.com/veggiemonk/awesome-docker.git
synced 2026-06-30 18:40:32 +02:00
aa0df11fba
* Structural reorg - part 1
Removals (~16 entries that failed the "for Docker" test):
- Container Composition: LLM Harbor
- Deployment: awesome-stacks
- Orchestration: Ansible Linux Docker, ManageIQ, RedHerd Framework
- Reverse Proxy: idle-less
- Service Discovery: etcd, istio (then section deleted)
- Volume: duplicacy-cli-cron
- Security: crowdsec-blocklist-import, dvwassl
- Dev Env: DockerDL, ESP32 Linux builder, Rust Universal Compiler
- Testing: InSpec
- Wrappers: Ansible
- Monitoring SaaS: Prometheus, Broadcom, Splunk-blog (when merging)
Structural moves:
- Service Discovery → folded into Networking (docker-consul, docker-dns, registrator kept; etcd/istio dropped)
- Metadata (1 entry, OCI spec) → deleted
- User Interface > Terminal > {Terminal UI, CLI tools, Other} → flattened to one Terminal subsection
- CI Services (under "Services based on Docker") → merged into CI/CD
- Monitoring Services → merged into Monitoring
- CaaS → merged into PaaS / CaaS
- Top-level Services based on Docker (mostly 💴) → deleted; pricing is signaled by 💴, not topology
- TOC updated to match
CONTRIBUTING.md tightening:
- Added a "for Docker" test framed as one yes/no question
- 12-row example table covering monitoring, reverse proxies, scanners, schedulers, tutorials, awesome-stacks-style submissions
- One-sentence sanity check ("This project exists to ____")
- New entry-description rule: descriptions must make the Docker connection obvious
* Tighten project submission criteria
* Manual review and clean up
* Add relevant project in 2026
* fix lint
* add relevant projects
* Add Cloud Run Compose, fix redirected URLs
- Add Cloud Run Compose under Deployment & Platforms (docker-compose deploys).
- Update GCP Artifact Registry URL to follow docs.cloud.google.com redirect.
- Update CodeFresh URL to its post-acquisition home at octopus.com/codefresh.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* remove dead projects
* exclude bot protected website
* clean up
* clean up more
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
94 lines
5.4 KiB
Markdown
94 lines
5.4 KiB
Markdown
# Contributing to awesome-docker
|
|
|
|
Thanks for taking the time to contribute.
|
|
|
|
This repository is a curated list of Docker/container resources plus a Go-based maintenance CLI used by CI. Contributions are welcome for both content and tooling.
|
|
|
|
Please read and follow the [Code of Conduct](./CODE_OF_CONDUCT.md).
|
|
|
|
## What We Accept
|
|
|
|
- New high-quality projects that are **for Docker** (see the test below)
|
|
- Fixes to descriptions, ordering, or categorization
|
|
- Removal of broken, archived, deprecated, or duplicate entries
|
|
- Improvements to the Go CLI and GitHub workflows
|
|
|
|
## The "for Docker" Test (read this before submitting)
|
|
|
|
This list is for projects whose purpose is to make working with Docker better.
|
|
It is **not** a directory of "software you can run in a container" — that's most
|
|
software ever written. Before opening a PR, apply this test:
|
|
|
|
> **If you removed the Docker integration, would the project still have a reason to exist?**
|
|
>
|
|
> - **Yes, it would** → it's a general tool that happens to use Docker. **Reject.**
|
|
> - **No, the project is *about* Docker** → it belongs here.
|
|
|
|
### Examples
|
|
|
|
| Project shape | Verdict | Why |
|
|
| ----------------------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------------------------------------------- |
|
|
| Tool that monitors **containers**, container resources, or container logs | ✅ Accept | Its value disappears if you take Docker away. |
|
|
| Tool that monitors **a host / server / service** and happens to ship as Docker | ❌ Reject | Its job is monitoring; Docker is just the delivery vehicle. |
|
|
| Reverse proxy that **auto-configures from Docker labels/events** | ✅ Accept | Tightly coupled to the Docker API. |
|
|
| Reverse proxy that just *runs in* Docker and configures from a static YAML file | ❌ Reject | Same proxy works fine without Docker. |
|
|
| Dockerfile linter, image scanner, registry, BuildKit frontend, runtime, SDK | ✅ Accept | Object of work is the Docker image, daemon, or socket. |
|
|
| General IaC scanner that **happens to read Dockerfiles** among many formats | ⚠️ Borderline | Allowed if Docker support is a first-class feature, not an afterthought. |
|
|
| "Awesome 150 web apps deployable with `docker run`" | ❌ Reject | Belongs in `awesome-selfhosted`; Docker is incidental. |
|
|
| Cron / privilege-drop / health-check utility designed for **container init** | ✅ Accept | Solves a problem that only exists *because* of how containers are built. |
|
|
| Generic KV store / service mesh / cluster scheduler that supports Docker | ❌ Reject | Existed before Docker, works without it. |
|
|
| Tutorial, video, or book whose **subject** is Docker | ✅ Accept | Under Useful Resources / Videos / Where to start. |
|
|
| Tutorial that uses Docker as a setup step for an unrelated topic | ❌ Reject | Belongs with the unrelated topic. |
|
|
|
|
### One-sentence sanity check
|
|
|
|
Write the sentence: *"This project exists to ____."* If the blank doesn't
|
|
contain **Docker, container, image, registry, Dockerfile, Compose, Swarm,
|
|
BuildKit, or OCI** — it probably doesn't belong here.
|
|
|
|
## README Entry Rules
|
|
|
|
- Use one link per entry.
|
|
- Prefer GitHub project/repository URLs over marketing pages.
|
|
- Keep entries alphabetically sorted within their section (case-insensitive).
|
|
- Keep descriptions concise and concrete: one sentence, lead with the verb.
|
|
- **The description should make the Docker connection obvious.** "Monitor
|
|
unhealthy containers" is good; "Monitor your services" is not — the latter
|
|
could be any monitoring tool, and a reviewer can't tell whether the project
|
|
passes the test above.
|
|
- Use `:yen:` for paid/commercial services.
|
|
- Use `:ice_cube:` for stale projects (2+ years inactive).
|
|
- Do not use `:skull:`; archived/deprecated projects should be removed.
|
|
- Avoid duplicate links and redirect variants.
|
|
|
|
## Local Validation
|
|
|
|
```bash
|
|
# Build CLI
|
|
make build
|
|
|
|
# Validate README formatting and content
|
|
make lint
|
|
|
|
# Run code tests (when touching Go code)
|
|
make test
|
|
|
|
# Optional: full external checks (requires GITHUB_TOKEN)
|
|
./awesome-docker check
|
|
./awesome-docker validate
|
|
```
|
|
|
|
## Pull Request Expectations
|
|
|
|
- Keep the PR focused to one logical change.
|
|
- Explain what changed and why.
|
|
- If adding entries, include the target category.
|
|
- If removing entries, explain why (archived, broken, duplicate, etc.).
|
|
- Fill in the PR template checklist.
|
|
|
|
## Maintainer Notes
|
|
|
|
- Changes should be reviewed before merge.
|
|
- Prefer helping contributors improve a PR over silently rejecting it.
|
|
- Keep `.github` documentation and workflows aligned with current tooling.
|