summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAlan Pearce2023-07-07 20:14:19 +0200
committerAlan Pearce2023-07-07 20:14:19 +0200
commit2d635ac0e7045663e22df1d4183ae4348f01d527 (patch)
tree30a7e5e68bd165febb4877fa7518398524e1a06c
parent3885eb15f33e967dfa83981af58ccac7af62fe4b (diff)
downloadwebsite-2d635ac0e7045663e22df1d4183ae4348f01d527.tar.lz
website-2d635ac0e7045663e22df1d4183ae4348f01d527.tar.zst
website-2d635ac0e7045663e22df1d4183ae4348f01d527.zip
Enable Caddyfile to validate without redis
Validation tries to connect to the redis server by the `storage` global
option, which is not possible without secrets that are not exposed
during the build
-rw-r--r--.dockerignore1
-rw-r--r--Caddyfile3
-rw-r--r--Dockerfile5
-rw-r--r--redis.Caddyfile2
4 files changed, 9 insertions, 2 deletions
diff --git a/.dockerignore b/.dockerignore
index ee13087..dbb2ff0 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,3 +1,4 @@
 *
 !Caddyfile
+!redis.Caddyfile
 !public
diff --git a/Caddyfile b/Caddyfile
index b5d1b91..e5ca8f7 100644
--- a/Caddyfile
+++ b/Caddyfile
@@ -3,8 +3,7 @@
 	persist_config off
 	auto_https disable_redirects
 	acme_ca https://acme.zerossl.com/v2/DV90
-	storage redis {
-	}
+	import globals/*
 	servers :80 {
 		metrics
 		protocols h1 h2c
diff --git a/Dockerfile b/Dockerfile
index a963128..72dc719 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -16,4 +16,9 @@ COPY public /srv
 EXPOSE 9091/tcp
 
 ENV SITE_ROOT=/srv
+
+RUN mkdir /etc/caddy/globals/
+RUN touch /etc/caddy/globals/dummy
 RUN ["/usr/bin/caddy", "validate", "--config", "/etc/caddy/Caddyfile"]
+
+COPY redis.Caddyfile /etc/caddy/globals/redis
diff --git a/redis.Caddyfile b/redis.Caddyfile
new file mode 100644
index 0000000..c0f4bfc
--- /dev/null
+++ b/redis.Caddyfile
@@ -0,0 +1,2 @@
+storage redis {
+}