From df5a43529aba32d281254e1c0060407b6425f836 Mon Sep 17 00:00:00 2001 From: redbeardymcgee Date: Sun, 10 Nov 2024 16:46:36 -0600 Subject: [PATCH] custom caddy container for acme dns --- quadlets/build/README.md | 5 +++++ quadlets/build/caddy/Caddyfile | 7 +++++++ quadlets/build/caddy/Containerfile | 8 ++++++++ quadlets/build/caddy/README.md | 11 +++++++++++ quadlets/build/caddy/caddy.build | 4 ++++ quadlets/build/caddy/caddy.container | 24 ++++++++++++++++++++++++ 6 files changed, 59 insertions(+) create mode 100644 quadlets/build/README.md create mode 100644 quadlets/build/caddy/Caddyfile create mode 100644 quadlets/build/caddy/Containerfile create mode 100644 quadlets/build/caddy/README.md create mode 100644 quadlets/build/caddy/caddy.build create mode 100644 quadlets/build/caddy/caddy.container diff --git a/quadlets/build/README.md b/quadlets/build/README.md new file mode 100644 index 0000000..7d83929 --- /dev/null +++ b/quadlets/build/README.md @@ -0,0 +1,5 @@ +# Building customized containers + +- Create a directory named after the container +- Add $container.build +- Add custom Containerfile diff --git a/quadlets/build/caddy/Caddyfile b/quadlets/build/caddy/Caddyfile new file mode 100644 index 0000000..88d6f0a --- /dev/null +++ b/quadlets/build/caddy/Caddyfile @@ -0,0 +1,7 @@ +{ + acme_dns $provider $api_key +} + +qb.$domain.$tld { + reverse_proxy localhost:8080 +} diff --git a/quadlets/build/caddy/Containerfile b/quadlets/build/caddy/Containerfile new file mode 100644 index 0000000..fabb25c --- /dev/null +++ b/quadlets/build/caddy/Containerfile @@ -0,0 +1,8 @@ +FROM docker.io/caddy:$version-builder AS builder + +RUN xcaddy build \ + --with github.com/caddy-dns/$module + +FROM docker.io/caddy:$version + +COPY --from=builder /usr/bin/caddy /usr/bin/caddy diff --git a/quadlets/build/caddy/README.md b/quadlets/build/caddy/README.md new file mode 100644 index 0000000..1facad1 --- /dev/null +++ b/quadlets/build/caddy/README.md @@ -0,0 +1,11 @@ +# podman 5.2.5 + +```bash +dnf -y install btrfs-progs-devel passt +curl -fsSL \ + -o podman-5.2.5.tar.gz \ + https://github.com/containers/podman/archive/refs/tags/v5.2.5.tar.gz +tar xzf podman-5.2.5.tar.gz +cd podman-5.2.5 +make BUILDTAGS="selinux seccomp" PREFIX=/usr +``` diff --git a/quadlets/build/caddy/caddy.build b/quadlets/build/caddy/caddy.build new file mode 100644 index 0000000..f93de3d --- /dev/null +++ b/quadlets/build/caddy/caddy.build @@ -0,0 +1,4 @@ +[Build] +ImageTag=localhost/caddy-njalla +SetWorkingDirectory=unit + diff --git a/quadlets/build/caddy/caddy.container b/quadlets/build/caddy/caddy.container new file mode 100644 index 0000000..669d170 --- /dev/null +++ b/quadlets/build/caddy/caddy.container @@ -0,0 +1,24 @@ +[Unit] +Description=Reverse proxy +After=network-online.target + +[Service] +Restart=on-failure + +[Install] +WantedBy=default.target + +[Container] +Image=caddy.build +ContainerName=caddy +HostName=caddy + +PublishPort=80:80 +PublishPort=443:443 +PublishPort=443:443/udp + +Volume=/volumes/caddy/config:/config +Volume=/volumes/caddy/data:/data + +Volume=./Caddyfile:/etc/caddy/Caddyfile +