From 8ff4cdd45ee128ff60872b422da4435ed1a36365 Mon Sep 17 00:00:00 2001 From: DrMxrcy Date: Tue, 18 Mar 2025 21:32:06 -0400 Subject: [PATCH] feat: Add OtterWiki --- blueprints/otterwiki/docker-compose.yml | 10 ++++++++++ blueprints/otterwiki/otterwiki.png | Bin 0 -> 9781 bytes blueprints/otterwiki/template.yml | 12 ++++++++++++ meta.json | 18 ++++++++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 blueprints/otterwiki/docker-compose.yml create mode 100644 blueprints/otterwiki/otterwiki.png create mode 100644 blueprints/otterwiki/template.yml diff --git a/blueprints/otterwiki/docker-compose.yml b/blueprints/otterwiki/docker-compose.yml new file mode 100644 index 0000000..b81a39f --- /dev/null +++ b/blueprints/otterwiki/docker-compose.yml @@ -0,0 +1,10 @@ +version: "3.8" +services: + otterwiki: + image: redimp/otterwiki:2 + restart: unless-stopped + volumes: + - otterwiki-data:/app-data + +volumes: + otterwiki-data: {} diff --git a/blueprints/otterwiki/otterwiki.png b/blueprints/otterwiki/otterwiki.png new file mode 100644 index 0000000000000000000000000000000000000000..5aa86f70008df13477f20594248fa8412a9b8c32 GIT binary patch literal 9781 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 literal 0 HcmV?d00001 diff --git a/blueprints/otterwiki/template.yml b/blueprints/otterwiki/template.yml new file mode 100644 index 0000000..095f0cb --- /dev/null +++ b/blueprints/otterwiki/template.yml @@ -0,0 +1,12 @@ +variables: + main_domain: ${domain} + +config: + domains: + - serviceName: otterwiki + port: 80 + host: ${main_domain} + + env: [] + + mounts: [] diff --git a/meta.json b/meta.json index 0b01ced..553dcaa 100644 --- a/meta.json +++ b/meta.json @@ -1809,5 +1809,23 @@ "self-hosted", "documentation" ] + }, + { + "id": "otterwiki", + "name": "Otter Wiki", + "version": "2", + "description": "An Otter Wiki is a simple, lightweight, and fast wiki engine built with Python and Flask. It provides a user-friendly interface for creating and managing wiki content with markdown support.", + "logo": "otterwiki.png", + "links": { + "github": "https://github.com/redimp/otterwiki", + "website": "https://otterwiki.com/", + "docs": "https://github.com/redimp/otterwiki/wiki" + }, + "tags": [ + "wiki", + "documentation", + "knowledge-base", + "markdown" + ] } ] \ No newline at end of file