coreos-home-server/service
2024-01-03 17:56:19 +00:00
..
attic Move deprecated services to attic 2022-09-22 18:25:14 +01:00
biboumi Improve formatting for common Containerfile parts 2024-01-02 15:39:54 +00:00
coturn Improve formatting for common Containerfile parts 2024-01-02 15:39:54 +00:00
dovecot Improve formatting for common Containerfile parts 2024-01-02 15:39:54 +00:00
gitea gitea: Move to multi-stage build 2024-01-02 15:41:46 +00:00
gotosocial Improve formatting for common Containerfile parts 2024-01-02 15:39:54 +00:00
grafana Fix nits for Grafana, LetsEncrypt containers 2024-01-03 16:49:24 +00:00
hugo hugo: Fix exec invocation in entrypoint 2024-01-03 17:56:19 +00:00
letsencrypt Fix nits for Grafana, LetsEncrypt containers 2024-01-03 16:49:24 +00:00
lldap lldap: Correct chown command in entrypoint 2024-01-03 17:55:04 +00:00
mariadb mariadb: Facilitate automated version updates 2023-12-22 19:24:25 +00:00
navidrome navidrome: Move to multi-stage container build 2024-01-03 17:17:02 +00:00
nginx chore(deps): update dependency nginx/nginx to v1.25.3 2023-12-21 12:20:25 +00:00
postfix chore(deps): update dependency debian_12/postfix to v3.7.9-0+deb12u1 2024-01-03 16:20:57 +00:00
prometheus Use safer curl invocations in Container builds 2023-12-21 16:56:31 +00:00
prosody renovate.json: Fix regex matcher for Containerfile 2023-12-20 23:55:21 +00:00
radicale Unify Renovate version matching for v prefix 2023-12-21 12:19:36 +00:00
rclone chore(deps): update docker.io/rclone/rclone docker tag to v1.65.0 2023-12-21 12:21:00 +00:00
redis chore(deps): update dependency redis/redis to v7.2.3 2023-12-21 00:00:53 +00:00
rspamd renovate.json: Fix regex matcher for Containerfile 2023-12-20 23:55:21 +00:00
rss2email Unify Renovate version matching for v prefix 2023-12-21 12:19:36 +00:00
slidge slidge: Update WhatsApp to latest version 2023-12-22 20:10:54 +00:00
README.md dovecot: Update Grafana dashboard 2023-12-01 15:45:43 +00:00

CoreOS Service Configuration

This directory contains a set of common services available for deployment onto a CoreOS Home Server setup, and managed via systemd and Podman. Each service is given its own subdirectory, and each follows a set of common conventions in laying out its files.

Specifically, for a service example, we might find the following files and directories under the corresponding directory:

  • spec.bu -- This file is typically included by the host configuration, and is intended with installing any additional service files required for enabling the service.

  • Containerfile -- This file is used in building a container image, handled by the container-build@example service and presumably used in the systemd file for the example service.

  • example.env.template -- An optional file containing KEY=value definitions that can then be used in the systemd service. Host-wide environment is also available in this context, and can be used in expanding shared configuration, secrets, etc. This file is used by the container-environment@example service.

  • systemd/ -- This directory contains systemd configuration, to be copied into the host-wide /etc/systemd/system directory. You'll typically find things like example.service files which run the service under Podman, as well as potential one-off services which copy files around in pre-existing Podman containers.

  • quadlet/ -- This directory contains configuration for Quadlet, aka podman-systemd.unit, which allows for generating comprehensive Systemd configuration from more idiomatic templates. Most services will be found as example.container files, installed under /etc/containers/systemd in running systems.

  • container/ -- This directory contains any static files included in the Podman image, including templated configuration, scripts, etc.

  • service/ -- This (largely optional) directory contains files required by the systemd services themselves, and which are not included in the Podman images by default; examples include database migration files, one-off configuration files, etc.

Of all these files, the only ones whose paths are mandated by external services are the Containerfile and <name>.env.template files, neither of which are required by anything other than convention (i.e. you can choose not to build a container image via the systemd service).

Each service here might have additional details on how it's expected to be deployed and used, check the respective README.md files for more information.