Commit Graph

380 Commits

Author SHA1 Message Date
0493a7fbfa hugo: Move to multi-stage container build
As with other container definitions, this helps make layers more
cacheable both between containers and in version updates.
2024-01-02 16:11:26 +00:00
9b9a906363 grafana: Move to multi-stage build
This improves cacheability and lowers total container image size by only
copying artefacts that are useful for deployment.
2024-01-02 15:55:37 +00:00
f9625a8e66 gitea: Move to multi-stage build
This improves caching by consolidating build steps and using a
multi-stage build step for the binary installation.
2024-01-02 15:41:46 +00:00
f7148a0771 Improve formatting for common Containerfile parts 2024-01-02 15:39:54 +00:00
524384051d dovecot: Consolidate container build instructions
This improves cacheability of layers by consolidating instructions
across different container builds. Future work will involve installing
from an external binary repository.
2024-01-02 15:31:49 +00:00
a43f5a0c1f gotosocial: Use ADD, not curl, in package download 2023-12-31 12:29:09 +00:00
30217f74a8 gotosocial: Move to multi-stage container build 2023-12-30 19:21:47 +00:00
2a8d56e17e container-build: Use bash for ExecCondition
Since `sh` may point to a POSIX shell, and brace expansion is undefined there.
2023-12-30 18:39:26 +00:00
005f4c33d5 letsencrypt: Fix hook invocations 2023-12-30 17:36:21 +00:00
c17b4e91c8 coturn: Make container builds more consistent 2023-12-30 17:13:32 +00:00
faa0420931 letsencrypt: Move to Debian, source-built image
This makes container builds more consistent, and therefore more
cacheable in relation to other containers.

In addition, certificates and keys are now copied to two separate
volumes, one containing all certificates (for use in services like
`nginx`, which may require unfettered access to certificates) and one
containing certificates only for a specific domain, for use in most
other cases.
2023-12-30 17:10:38 +00:00
e9924cb0e9 biboumi: Move to Github, fix correctness issues 2023-12-30 16:19:57 +00:00
69caede2b0 slidge: Update WhatsApp to latest version 2023-12-22 20:10:54 +00:00
ab12d60d31 Tag existing images with previous on re-build
Container builds using the `container-build@` systemd service will
generally tag any container image built with the `latest` tag, which is
then referred to pervasively in container executions.

However, this tag is overwritten when building new images, and, combined
with how `podman auto-update` will prune old image digests, may cause us
to lack the ability to roll back, automatically or otherwise.

This commit sets a `previous` tag on container re-builds, which should
only generally happen when source files change (due to the `ExecCondition`)
present on the service, which in turn should ensure that images are not
spuriously tagged as such.
2023-12-22 19:27:40 +00:00
4a022d3918 mariadb: Facilitate automated version updates
This sets the `MARIADB_AUTO_UPGRADE` environment variable, used by the
base MariaDB image in applying schema changes, as generally necessary
when performing minor or major upgrades.
2023-12-22 19:24:25 +00:00
renovate[bot]
e842d9a4e4 chore(deps): update docker.io/mariadb docker tag to v10.11 2023-12-22 18:38:04 +00:00
f7a92c7acf coturn: Use dedicated coturn user for daemon
Previously, we'd use the Debian-provided `turnserver` user, which is no
longer available in source builds; we now create and use a dedicated
`coturn` user for more consistency with other services.
2023-12-22 18:34:37 +00:00
ffac219286 coturn: Add required runtime dependencies 2023-12-22 18:27:40 +00:00
f7321a92eb renovate: Auto-merge minor and patch updates 2023-12-22 18:22:03 +00:00
151f571700 biboumi: Add ca-certificates build dependency 2023-12-22 18:13:12 +00:00
8f3773a780 coturn: Move to source-built image, version 4.6.2
This also improves base image caching by re-using as many initial steps
as possible.
2023-12-22 17:54:13 +00:00
f9351e64eb biboumi: Move to source-built image, better cache
We now depend on upstream source to be more flexible with respect to
updates, and re-order running image layers for better caching.
2023-12-22 11:36:47 +00:00
f710c4846f Use safer curl invocations in Container builds
Calls to `curl` will now use the `--fail` option, in addition to
`--silent` and `--show-error`, in an effort to catch issues with server
or client-side errors.
2023-12-21 16:56:31 +00:00
dd570cc4b0 gitea: Fix version extraction for Renovate 2023-12-21 16:52:38 +00:00
a00807bd5f slidge: Fix Renovate definitions for auto-updates 2023-12-21 13:00:52 +00:00
renovate[bot]
835d896ee0 chore(deps): update docker.io/rust docker tag to v1.74 2023-12-21 12:26:08 +00:00
renovate[bot]
986fd11955 chore(deps): update dependency grafana/grafana to v10.2.3 2023-12-21 12:25:19 +00:00
renovate[bot]
4538e9b0ae chore(deps): update docker.io/rclone/rclone docker tag to v1.65.0 2023-12-21 12:21:00 +00:00
renovate[bot]
5c92dbe13e chore(deps): update dependency gohugoio/hugo to v0.121.1 2023-12-21 12:20:42 +00:00
renovate[bot]
22ce725ad7 chore(deps): update dependency nginx/nginx to v1.25.3 2023-12-21 12:20:25 +00:00
39ef7132c6 Unify Renovate version matching for v prefix 2023-12-21 12:19:36 +00:00
renovate[bot]
d07e7f5025 chore(deps): update docker.io/golang:1.21-bookworm docker digest to 1415bb0 2023-12-21 12:13:30 +00:00
renovate[bot]
4c201be9d4 chore(deps): update dependency go-gitea/gitea to v1.21.3 2023-12-21 12:13:06 +00:00
renovate[bot]
63b28ea2a6 chore(deps): update dependency prometheus/prometheus to v2.48.1 2023-12-21 00:03:18 +00:00
renovate[bot]
20ad7a4488 chore(deps): update dependency redis/redis to v7.2.3 2023-12-21 00:00:53 +00:00
renovate[bot]
ac890e6a29 chore(deps): update docker.io/goacme/lego docker tag to v4.14.2 2023-12-20 23:58:05 +00:00
ad155d765e renovate.json: Fix regex matcher for Containerfile 2023-12-20 23:55:21 +00:00
renovate[bot]
ddefd2a959 chore(deps): pin dependencies 2023-12-20 23:17:49 +00:00
952df3d324 Update service versions with Renovate
This adds basic configuration for Renovate, and sets up most services
for automated updates to package versions.
2023-12-20 23:00:19 +00:00
d8a4b7874f Skip container builds unless local files changed
This commit adds an `ExecCondition` directive on the `container-build@`
service, used as a pre-requisite for all other Podman-based services,
skipping `podman build` invocations unless local `Containerfile` or any
files in the `container` sub-directories have changed.

Container builds are responsible for the majority of time taken during
boot, even with cache in place; this will help alleviate pressure and
hopefully speed up boot considerably.
2023-12-20 19:50:39 +00:00
8e408413a1 gitea: Update to version 1.21.2 2023-12-15 16:47:06 +00:00
b234163cc5 navidrome: Update to version 0.50.2 2023-12-15 16:46:47 +00:00
7c456c4f31 gotosocial: Update to version 0.13.0 2023-12-15 16:46:22 +00:00
d8802ffd18 rspamd: Update version to 3.7.5 2023-12-15 16:42:51 +00:00
1a7b819b2c slidge: Pin to version 0.4.7 for GoPy 2023-12-14 13:51:33 +00:00
733130db8d Increase start timeout for Prometheus and Grafana
Containers for Prometheus and Grafana can take longer to start due to
migrations on large databases etc., which in turn can cause systemd to
kill these mid-execution.
2023-12-14 12:15:50 +00:00
c7eec07f55 slidge: Update slidge-whatsapp version 2023-12-14 12:14:17 +00:00
2bf0009773 slidge: Update plugins to newest versions 2023-12-07 21:39:13 +00:00
b6da57b47a Update Grafana dashboard for Node Exporter 2023-12-04 17:31:01 +00:00
c5fa13b613 Update Grafana dashboard for Podman metrics 2023-12-04 17:17:03 +00:00