diff --git a/core/caddy/compose.yml b/core/caddy/compose.yml index 0d0eb78..db7dc3c 100644 --- a/core/caddy/compose.yml +++ b/core/caddy/compose.yml @@ -1,22 +1,8 @@ services: - caddy-init: - container_name: caddy-init - build: - context: . - environment: - - DRAWIO_VERSION=29.5.2 - volumes: - - caddy-caddyfiles:/etc/caddy - - caddy-diagrams:/srv/diagrams - restart: "no" - caddy: container_name: caddy image: caddy:2.10.2-alpine restart: unless-stopped - depends_on: - caddy-init: - condition: service_completed_successfully ports: - "8080:80" volumes: @@ -30,9 +16,12 @@ services: volumes: caddy-caddyfiles: name: caddy-caddyfiles + external: true caddy-data: caddy-config: caddy-diagrams: + name: caddy-diagrams + external: true networks: proxy: diff --git a/core/caddy/config/Caddyfile b/core/caddy/config/Caddyfile index b54a478..dded2ed 100644 --- a/core/caddy/config/Caddyfile +++ b/core/caddy/config/Caddyfile @@ -1,4 +1,5 @@ { local_certs } -import /etc/caddy/sites/*.caddy +import /etc/caddy/sites/outils.caddy +import /etc/caddy/sites/diagrams.caddy diff --git a/core/caddy/config/sites/diagrams.caddy b/core/caddy/config/sites/diagrams.caddy new file mode 100644 index 0000000..32cbb68 --- /dev/null +++ b/core/caddy/config/sites/diagrams.caddy @@ -0,0 +1,4 @@ +http://diagrams.ft-chatons.local { + root * /srv/diagrams + file_server +} \ No newline at end of file diff --git a/core/caddy/config/sites/outils.caddy b/core/caddy/config/sites/outils.caddy index b36818e..5d1e588 100644 --- a/core/caddy/config/sites/outils.caddy +++ b/core/caddy/config/sites/outils.caddy @@ -39,9 +39,4 @@ http://outils.ft-chatons.local { handle_path /teapot { respond "HTML Tea! Tea! Teapot!" 418 } -} - -http://diagrams.ft-chatons.local { - root * /srv/diagrams - file_server -} +} \ No newline at end of file diff --git a/core/tools/caddy-init.sh b/core/tools/caddy-init.sh new file mode 100644 index 0000000..8ec516a --- /dev/null +++ b/core/tools/caddy-init.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env + +DRAWIO_VERSION="29.5.2" + +docker volume create caddy-caddyfiles +docker volume create caddy-diagrams + +docker run --rm \ + -v /home/bapasqui/projects/ft_chatons/core/caddy/config:/src:ro \ + -v caddy-caddyfiles:/etc/caddy \ + alpine cp -r /src/. /etc/caddy/ + + +mkdir -p /tmp/drawio-extract +wget -v \ + "https://github.com/jgraph/drawio/releases/download/v${DRAWIO_VERSION}/draw.war" \ + -O /tmp/drawio.war +unzip -q /tmp/drawio.war -d /tmp/drawio-extract +rm /tmp/drawio.war + +docker run --rm \ + -v /tmp/drawio-extract:/src:ro \ + -v caddy-diagrams:/srv/diagrams \ + alpine cp -r /src/. /srv/diagrams/ + +docker run --rm \ + -v caddy-diagrams:/srv/diagrams \ + alpine ls /srv/diagrams + +rm -rf /tmp/drawio-extract \ No newline at end of file diff --git a/core/tools/test-caddy b/core/tools/test-caddy index 63fe3a6..87e089c 100755 --- a/core/tools/test-caddy +++ b/core/tools/test-caddy @@ -1,6 +1,7 @@ #!/usr/bin/env bash DOMAIN_NAME="http://outils.ft-chatons.local:8080" +DIAGRAM_DOMAIN_NAME="http://diagrams.ft-chatons.local:8080" GREEN='\033[0;32m' RED='\033[0;31m' @@ -120,3 +121,4 @@ test_endpoint "Auth Check Unauthorized" "$DOMAIN_NAME/secretpage" "401" "" test_endpoint_auth "Auth Check Authorized" "$DOMAIN_NAME/secretpage" "towel" "poisson" "200" "Welcome, towel" "exact" test_endpoint_auth "Auth Check wrong password" "$DOMAIN_NAME/secretpage" "towel" "fakepassword" "401" test_endpoint "Root redirect" "$DOMAIN_NAME/" "200" "Hello world!" "exact" "true" +