33 lines
1.2 KiB
Markdown
33 lines
1.2 KiB
Markdown
---
|
|
date: 2025-4-02
|
|
updated: 2025-04-02
|
|
author: "Michael Housh"
|
|
---
|
|
|
|
# Homelab Documentation
|
|
|
|
Documentation about how the homelab is setup.
|
|
|
|
## Containers
|
|
|
|
Services run inside of docker containers that are spread between several
|
|
servers, which run them. The containers are deployed using a container
|
|
orchestrator, currently using [komo](https://komo.housh.dev).
|
|
|
|
All of the services have a corresponding repository for their configuration that
|
|
is hosted on an [internal git server](https://git.housh.dev/homelab). The
|
|
configuration will consist of a docker compose file (generally named
|
|
`compose.yaml`). There is often an `example.env` file for the service, these are
|
|
examples for documentation and variable naming purposes. The environment
|
|
variables themselves are setup in the container orchestrator for the service.
|
|
|
|
### Container orchestrator
|
|
|
|
The container orchestrator is where the actual configuration for the service is
|
|
done. It configures which physical server that the service will run on, it is
|
|
responsible for pulling the proper container images, pulls the configuration /
|
|
`compoose.yaml` file from the repository, sets up environment variables, and
|
|
deploys the service onto the server.
|
|
|
|
It also has some features for monitoring CPU and Memory usage of the servers.
|