From 71f7728f091d578b97fdf21dcbd514a4eb153af4 Mon Sep 17 00:00:00 2001 From: jonnymacbean <75743578+jonnymacbean@users.noreply.github.com> Date: Wed, 27 Sep 2023 16:34:01 +0100 Subject: [PATCH] add kwiix-serve files --- apps/kiwix-serve/config.json | 19 +++++++++++ apps/kiwix-serve/docker-compose.yml | 39 +++++++++++++++++++++++ apps/kiwix-serve/metadata/description.md | 1 + apps/kiwix-serve/metadata/logo.jpg | Bin 0 -> 12163 bytes 4 files changed, 59 insertions(+) create mode 100644 apps/kiwix-serve/config.json create mode 100644 apps/kiwix-serve/docker-compose.yml create mode 100644 apps/kiwix-serve/metadata/description.md create mode 100644 apps/kiwix-serve/metadata/logo.jpg diff --git a/apps/kiwix-serve/config.json b/apps/kiwix-serve/config.json new file mode 100644 index 00000000..35898c4c --- /dev/null +++ b/apps/kiwix-serve/config.json @@ -0,0 +1,19 @@ +{ + "$schema": "../schema.json", + "name": "Kiwix Serve", + "port": 8080, + "available": true, + "exposable": true, + "id": "kiwix-serve", + "tipi_version": 1, + "version": "3.5.0-2", + "categories": [ + "media" + ], + "description": "Kiwix Serve is a web server for hosting .zim files", + "short_desc": "Kiwix Serve is a web server for hosting .zim files", + "author": "Kiwix", + "source": "https://github.com/kiwix/kiwix-tools/", + "website": "https://kiwix.org/", + "form_fields": [] +} \ No newline at end of file diff --git a/apps/kiwix-serve/docker-compose.yml b/apps/kiwix-serve/docker-compose.yml new file mode 100644 index 00000000..7c349984 --- /dev/null +++ b/apps/kiwix-serve/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" + +services: + kiwix-serve: + container_name: kiwix-serve + image: ghcr.io/kiwix/kiwix-serve:3.5.0-2 + ports: + - ${APP_PORT}:8080 + volumes: + - ${APP_DATA_DIR}/zim:/data + command: '*.zim' + restart: unless-stopped + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.kiwix-serve-web-redirect.redirectscheme.scheme: https + traefik.http.services.kiwix-serve.loadbalancer.server.port: 8080 + # Web + traefik.http.routers.kiwix-serve-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.kiwix-serve-insecure.entrypoints: web + traefik.http.routers.kiwix-serve-insecure.service: kiwix-serve + traefik.http.routers.kiwix-serve-insecure.middlewares: kiwix-serve-web-redirect + # Websecure + traefik.http.routers.kiwix-serve.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.kiwix-serve.entrypoints: websecure + traefik.http.routers.kiwix-serve.service: kiwix-serve + traefik.http.routers.kiwix-serve.tls.certresolver: myresolver + # Local domain + traefik.http.routers.kiwix-serve-local-insecure.rule: Host(`kiwix-serve.${LOCAL_DOMAIN}`) + traefik.http.routers.kiwix-serve-local-insecure.entrypoints: web + traefik.http.routers.kiwix-serve-local-insecure.service: kiwix-serve + traefik.http.routers.kiwix-serve-local-insecure.middlewares: kiwix-serve-web-redirect + # Local domain secure + traefik.http.routers.kiwix-serve-local.rule: Host(`kiwix-serve.${LOCAL_DOMAIN}`) + traefik.http.routers.kiwix-serve-local.entrypoints: websecure + traefik.http.routers.kiwix-serve-local.service: kiwix-serve + traefik.http.routers.kiwix-serve-local.tls: true diff --git a/apps/kiwix-serve/metadata/description.md b/apps/kiwix-serve/metadata/description.md new file mode 100644 index 00000000..30404ce4 --- /dev/null +++ b/apps/kiwix-serve/metadata/description.md @@ -0,0 +1 @@ +TODO \ No newline at end of file diff --git a/apps/kiwix-serve/metadata/logo.jpg b/apps/kiwix-serve/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f31a9e0c3bdce49488796765c427a6ba22cd75fc GIT binary patch literal 12163 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

AzBRaLY9Ji^%xk{ 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