61 lines
2.4 KiB
Markdown
61 lines
2.4 KiB
Markdown
# 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](https://www.portainer.io/) 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](./Doku/docker-compose.yaml) | Docker volume backup and management tool | [Read the article](https://chns.tech/posts/2024/02-18-doku-docker-disk-usage-dashboard/) |
|
|
| [Draw.io](./Draw.io/docker-compose.yaml) | Self-hosted diagramming and flowchart tool | [Read the article](https://chns.tech/posts/2024/10-20-draw-io-whiteboarding-diagramming-web-application/) |
|
|
| [Gitea](./Gitea/docker-compose.yaml) | Lightweight self-hosted Git service | [Read the article](#) |
|
|
| [IT-Tools](./IT-Tools/docker-compose.yaml) | Collection of handy tools for developers and sysadmins | [Read the article](https://chns.tech/posts/2023/10-22-it-tools-handy-tools-for-developers/) |
|
|
| [Watchtower](./Watchtower/docker-compose.yaml) | Automatically keeps Docker container images up to date | [Read the article](https://chns.tech/posts/2024/07-14-watchtower-automatic-docker-container-updater/) |
|
|
|
|
---
|
|
|
|
## Usage
|
|
|
|
Each application lives in its own folder with a `docker-compose.yaml` file. You can use them in a few ways:
|
|
|
|
**Portainer Stack**
|
|
1. In Portainer, go to **Stacks → Add Stack**
|
|
2. Choose **Repository** and point it at this repo, or use **Web editor** and paste the compose file contents directly
|
|
3. Set any required environment variables and deploy
|
|
|
|
**Docker Compose CLI**
|
|
```bash
|
|
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
|
|
└── Watchtower/
|
|
└── docker-compose.yaml
|
|
```
|
|
|
|
---
|
|
|
|
## License
|
|
|
|
[MIT](./LICENSE)
|