https://github.com/natoboram/docker-compose
My personal homelab
https://github.com/natoboram/docker-compose
docker docker-compose homelab
Last synced: 8 months ago
JSON representation
My personal homelab
- Host: GitHub
- URL: https://github.com/natoboram/docker-compose
- Owner: NatoBoram
- License: agpl-3.0
- Created: 2024-03-13T23:41:03.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-02-08T23:41:47.000Z (over 1 year ago)
- Last Synced: 2025-02-09T00:24:00.471Z (over 1 year ago)
- Topics: docker, docker-compose, homelab
- Language: Shell
- Homepage:
- Size: 456 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Docker Compose
[](https://github.com/NatoBoram/docker-compose/actions/workflows/docker.yaml) [](https://github.com/NatoBoram/docker-compose/actions/workflows/node.js.yaml) [](https://github.com/NatoBoram/docker-compose/actions/workflows/github-code-scanning/codeql) [](https://github.com/NatoBoram/docker-compose/actions/workflows/deploy.yaml) [](https://wakapi.dev/summary?interval=any&project=docker-compose)
My personal homelab setup using Docker Compose.
To get started with your own homelab, take an hour to watch [Christian Lempa](https://youtube.com/@christianlempa)'s videos on Docker:
-
## Usage
Top-level folders represent a different machine in which Docker Compose is used to manage containers.
The machines are:
- [Helion](./helion) (decomissioned)
- [Olea](./olea) (cloud server)
- [Phantom](./phantom) (current)
Each folder contains a `compose.yaml` that orchestrates the services running on that machine. The `compose.yaml` file loads services at `compose.${service}.yaml` and may expect overrides at `compose.override.yaml`. You'll have to read service definitions to see what needs to be overridden.
Each service has its own `.env.${service}` file. This is a template that contains default environment variables for that service that are expected to be modified. Copy that file to `.env.${service}.local` and override the defaults. The `compose.${service}.yaml` files will expect the `.env.${service}.local` file to exist and won't start without it.