coreos-home-server/service
Alex Palaistras ffea499b5f prosody: Enable C2S direct TLS, disable HTTPS
Direct TLS connections for clients allow for faster connection
establishment, and disabling HTTPS in Prosody fixes use of components
which expect to be exposed via a reverse proxy (such as Nginx).
2022-03-22 22:24:50 +00:00
..
biboumi base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
coturn base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
dovecot base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
git base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
letsencrypt base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
mariadb base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
navidrome base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
nginx base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
postfix base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
prosody prosody: Enable C2S direct TLS, disable HTTPS 2022-03-22 22:24:50 +00:00
radicale radicale: Update to version 3.1.5 2022-03-15 18:44:35 +00:00
rclone rclone: Copy symbolic links verbatim 2022-02-17 21:53:09 +00:00
redis base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
rspamd base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
rss2email base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
spectrum base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
writefreely base: Only copy service directories if used 2022-02-05 16:05:00 +00:00
README.md Flatten directory structures 2022-01-15 11:43:33 +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.

  • 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.