From cd7573e418be84366c5cb7787797f6856d753d19 Mon Sep 17 00:00:00 2001 From: Seth For Privacy Date: Fri, 9 Sep 2022 08:32:23 -0400 Subject: [PATCH 1/2] Add LibreTranslate --- apps/libretranslate/config.json | 16 ++++++++++++++++ apps/libretranslate/docker-compose.yml | 20 ++++++++++++++++++++ apps/libretranslate/metadata/description.md | 7 +++++++ apps/libretranslate/metadata/logo.jpg | Bin 0 -> 18495 bytes 4 files changed, 43 insertions(+) create mode 100644 apps/libretranslate/config.json create mode 100644 apps/libretranslate/docker-compose.yml create mode 100644 apps/libretranslate/metadata/description.md create mode 100644 apps/libretranslate/metadata/logo.jpg diff --git a/apps/libretranslate/config.json b/apps/libretranslate/config.json new file mode 100644 index 00000000..3245ad38 --- /dev/null +++ b/apps/libretranslate/config.json @@ -0,0 +1,16 @@ +{ + "$schema": "../schema.json", + "name": "LibreTranslate", + "available": true, + "exposable": true, + "port": 8106, + "id": "libretranslate", + "tipi_version": 1, + "version": "latest", + "categories": ["utilities"], + "description": "Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source Argos Translate library.", + "short_desc": "Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.", + "author": "LibreTranslate", + "source": "https://github.com/LibreTranslate/LibreTranslate", + "form_fields": [] +} diff --git a/apps/libretranslate/docker-compose.yml b/apps/libretranslate/docker-compose.yml new file mode 100644 index 00000000..d24dc43a --- /dev/null +++ b/apps/libretranslate/docker-compose.yml @@ -0,0 +1,20 @@ +version: "3.7" +services: + libretranslate: + container_name: libretranslate + image: libretranslate/libretranslate:latest + dns: + - ${DNS_IP} + ports: + - ${APP_PORT}:5000 + restart: unless-stopped + networks: + - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.libretranslate.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.libretranslate.entrypoints: websecure + traefik.http.routers.libretranslate.service: libretranslate + traefik.http.routers.libretranslate.tls.certresolver: myresolver + traefik.http.services.libretranslate.loadbalancer.server.port: 5000 + diff --git a/apps/libretranslate/metadata/description.md b/apps/libretranslate/metadata/description.md new file mode 100644 index 00000000..c5354d85 --- /dev/null +++ b/apps/libretranslate/metadata/description.md @@ -0,0 +1,7 @@ +# LibreTranslate + +[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs) | [Community Forum](https://community.libretranslate.com/) + +Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source [Argos Translate](https://github.com/argosopentech/argos-translate) library. + +![image](https://user-images.githubusercontent.com/64697405/139015751-279f31ac-36f1-4950-9ea7-87e76bf65f51.png) \ No newline at end of file diff --git a/apps/libretranslate/metadata/logo.jpg b/apps/libretranslate/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c71acc73284b7ff330167c7ddde622c6d7ffbf43 GIT binary patch literal 18495 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 literal 0 HcmV?d00001 From 235cb3629d26551cafe46088e20ad52d962485c7 Mon Sep 17 00:00:00 2001 From: Nicolas Meienberger Date: Sat, 10 Sep 2022 12:01:34 +0200 Subject: [PATCH 2/2] chore(libretranslate): fixed version + logo update --- apps/libretranslate/config.json | 4 ++-- apps/libretranslate/docker-compose.yml | 2 +- apps/libretranslate/metadata/logo.jpg | Bin 18495 -> 20269 bytes 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/libretranslate/config.json b/apps/libretranslate/config.json index 3245ad38..a6a7b18b 100644 --- a/apps/libretranslate/config.json +++ b/apps/libretranslate/config.json @@ -3,10 +3,10 @@ "name": "LibreTranslate", "available": true, "exposable": true, - "port": 8106, + "port": 8121, "id": "libretranslate", "tipi_version": 1, - "version": "latest", + "version": "v1.2.9", "categories": ["utilities"], "description": "Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source Argos Translate library.", "short_desc": "Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.", diff --git a/apps/libretranslate/docker-compose.yml b/apps/libretranslate/docker-compose.yml index d24dc43a..b8e05cc4 100644 --- a/apps/libretranslate/docker-compose.yml +++ b/apps/libretranslate/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: libretranslate: container_name: libretranslate - image: libretranslate/libretranslate:latest + image: libretranslate/libretranslate:v1.2.9 dns: - ${DNS_IP} ports: diff --git a/apps/libretranslate/metadata/logo.jpg b/apps/libretranslate/metadata/logo.jpg index c71acc73284b7ff330167c7ddde622c6d7ffbf43..9eb63999db03eea91035b0d5b35f897a28b3384d 100644 GIT binary patch literal 20269 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