Commit Graph

90 Commits

Author SHA1 Message Date
79231c37f1 Set generic Podman defaults and per-service log IDs
Defaults for Podman that were previous applied as command-line arguments
to all `podman run` or `podman create` invocations are now specified in
a dedicated configuration file.

Services are also better identified against their name rather than the
generic `podman` ID derived from the `ExecStart` invocations.
2021-08-28 22:27:54 +01:00
6c28399c83 Makefile: Update to latest CoreOS version 2021-08-28 12:51:23 +01:00
132c804089 Fix title-casing for service descriptions 2021-08-28 12:51:11 +01:00
e971bb11cc Update images and applications to latest versions
This includes setting the Debian base image to a specific release rather
than the generic `stable` version, which can cause issues when assuming
package versions or external repository status.
2021-08-27 19:20:58 +01:00
4b0ac30354 Introduce host configuration for lhr01srv 2021-08-24 19:15:52 +01:00
e652b42eb7 Makefile: Use shell expansion more consistently 2021-08-15 20:26:41 +01:00
896ba3f4c5 mariadb: Don't enable migration systemd service
This is intended to be defined as a dependency to other services, and
should not be run on its own by default.
2021-08-14 23:48:12 +01:00
78266f4d15 Makefile: Improve bare-metal deploy target 2021-08-14 23:47:54 +01:00
55e8315dc7 service/prosody: Update to latest version 2021-08-14 22:38:24 +01:00
41328342b3 Implement basic volume backup and restore mechanism
This commit implements three new services, specifically:

  - The `container-volume` service, which applies to a specific volume
    name and ensures this exists. This is mainly useful as a dependency
    to other services, as Podman will create named volumes itself if
    needed.

  - The `container-volume-backup` service, which creates a `tar.gz`
    snapshot of the given volume's contents in `/var/lib/backups`.

  - The `container-volume-restore` service, which populates an empty
    volume from a pre-existing file in `/var/lib/backups`, presumably
    created by `container-volume-backup`.

These are then be used to automatically create volume snapshots every 12
hours, rolling over every 7 days.
2021-08-14 22:38:17 +01:00
b832deddfe Makefile: Update to latest CoreOS version 2021-08-14 22:30:13 +01:00
a4580e1cae Improve service initialization, move system files
System files are moved to `/etc/coreos-home-server` to be unambiguous
in relation to other, pre-installed system files. Long-running services
are also now defined as `Type=notify`, which helps improve ordering and
dependencies.
2021-08-14 22:28:28 +01:00
ef7951dd72 container-build: Don't apply '--no-cache' option
This was changed recently to help with re-building container images with
side-effects, but causes other issues and delays.
2021-08-01 23:38:05 +01:00
f0c2d09e43 Makefile: Update to latest CoreOS version 2021-08-01 23:37:49 +01:00
010e9ba14c git: Verify SSH keys when added 2021-08-01 23:37:30 +01:00
75765576dc Fix various issues
The fixes here include typos, removals of deprecated paths, fixes for
first-boot-only systemd targets and related MariaDB migrate machinery,
better logging for Postfix, and an increase in the default request body
size for the default NGINX ingress.
2021-08-01 22:31:25 +01:00
40823a31de host/lhr01nuc: Add default update strategies
These are more wary and operate on a weekend upgrade window, which is
likely when a side-project will have more time and focus.
2021-08-01 22:29:25 +01:00
7d9560cbdb Move 'host.env' file to '/etc/container-service'
This consolidates configuration specific to the CoreOS home-server
setup, and thus makes this easier to manage.
2021-08-01 22:28:22 +01:00
15315d34fe Add Spectrum2 IM transport for XMPP 2021-07-29 00:14:00 +01:00
950dd3a13c container-build: Don't re-use cached layer by default
This allows container builds to use latest remote state, if available,
without having to build versioning into the container files themselves.
2021-07-24 15:57:39 +01:00
6859168b8c Don't use PrivateTmp for Podman services
The various `Private` systemd options will conflict with namespacing
used by Podman, which in turn causes issues with other services.
2021-07-24 15:56:08 +01:00
1bc04af944 Implement reload targets for more services 2021-07-24 15:55:37 +01:00
b9e2029df8 Makefile: Update to latest CoreOS version 2021-07-24 14:52:31 +01:00
176f65f998 nginx: Fix issues, consolidate naming
Naming for services has been consolidated to `nginx-proxy` and
`nginx-serve`, and issues with resolving underlying containers in the
case of restarts have been fixed by way of resolver configuration.
2021-07-24 14:52:27 +01:00
3ace3b517b git: Reuse host keys, add Github key authorization 2021-06-30 22:41:32 +01:00
e0b7b635ab Makefile: Update to latest CoreOS version
And introduce a `purge` target, intended to supplant the current `clean`
target, in allowing the latter to be used to clean Butane configuration
without removing any cached images.
2021-06-27 18:36:15 +01:00
3254ead3a7 Simplify systemd services, use volumes
This commit represents a large amount of work toward moving services to
a more standard approach to storing data, and a simplification in how
networks are managed.
2021-06-27 18:36:06 +01:00
318305be5b Move from FCCT to Butane
This reflects a change in the upstream project. A number of other fixes
have been made.
2021-05-09 13:05:34 +01:00
83fa08d4b7 Don't publish ports for Radicale
These will, in general, be proxied into by the HTTP ingress, and do not
need to be exposed on the host itself.
2021-04-03 16:16:11 +01:00
606da239dc More fixes for Nginx-backed services 2021-03-28 14:00:17 +01:00
fb7d7eaa22 Use podman run instead of create && start
And correctly remove containers if systemd services are stopped.
2021-03-27 23:03:56 +00:00
b3ab5a6ce3 Fix various issues with Nginx containers 2021-03-27 18:44:19 +00:00
ffb3fe2bcd Move Nginx Ingress services to own network 2021-03-27 11:19:45 +00:00
aafa8d9f12 Move systemd files to separate folders
This will help make subsequent synchronization with hosts easier, as
systemd files and potential dropins are guarnateed to exist under a
certain hierarchy that can be dropped as-is into host configuration
directories.
2021-03-26 20:47:08 +00:00
a9fd93097e
Merge pull request #1 from deuill/rdircd
Integrate Reliable Discord-Client IRC Daemon
2021-03-25 18:49:09 +00:00
096fb6e2f8 Integrate Reliable Discord-Client IRC Daemon
This is intended to connect via Biboumi, which in turn is used by
Prosody in connecting Discord with XMPP.
2021-03-23 23:59:37 +00:00
dc2c3a7933 Integrate Biboumi IRC-to-XMPP gateway 2021-03-21 12:23:35 +00:00
65e15b036e postfix: Correct use of invalid POSTFIX_ env
These were likely due to copy-paste misses, and cause issues with
connecting to the underlying mail database.
2021-03-21 00:19:46 +00:00
4309b3d093 Consolidate use of apt-get update in containers
We no longer perform `apt-get upgrade`, and make indentation consistent
between different Containerfile definitions.
2021-03-21 00:16:51 +00:00
d9f675817e First public release for CoreOS Home Server
This contains the culmination of work done privately for a few months,
and is intended to be a solid basis for other peoples' experimentations
with setting up single-node, home-server setups using Fedora CoreOS.
2021-03-20 16:32:42 +00:00