From d4465aa48db03f4c2d1ad3d8f2e384436f63c635 Mon Sep 17 00:00:00 2001 From: Nicolas Meienberger Date: Wed, 7 Sep 2022 21:18:41 +0200 Subject: [PATCH] feat: more apps exposable --- apps/freshrss/config.json | 3 ++- apps/freshrss/docker-compose.yml | 7 +++++++ apps/ghost/config.json | 3 ++- apps/ghost/docker-compose.yml | 7 +++++++ apps/invidious/config.json | 3 ++- apps/invidious/docker-compose.arm.yml | 7 +++++++ apps/invidious/docker-compose.yml | 7 +++++++ apps/plex/config.json | 3 ++- apps/plex/docker-compose.yml | 7 +++++++ 9 files changed, 43 insertions(+), 4 deletions(-) diff --git a/apps/freshrss/config.json b/apps/freshrss/config.json index 0b34be92..596424dc 100644 --- a/apps/freshrss/config.json +++ b/apps/freshrss/config.json @@ -2,9 +2,10 @@ "$schema": "../schema.json", "name": "FreshRSS", "available": true, + "exposable": true, "port": 8086, "id": "freshrss", - "tipi_version": 1, + "tipi_version": 2, "version": "1.19.2", "categories": ["utilities"], "description": "FreshRSS is a self-hosted RSS feed aggregator like Leed or Kriss Feed.\nIt is lightweight, easy to work with, powerful, and customizable.\n\nIt is a multi-user application with an anonymous reading mode. It supports custom tags. There is an API for (mobile) clients, and a Command-Line Interface.\n\nThanks to the WebSub standard (formerly PubSubHubbub), FreshRSS is able to receive instant push notifications from compatible sources, such as Mastodon, Friendica, WordPress, Blogger, FeedBurner, etc.\n\nFreshRSS natively supports basic Web scraping, based on XPath, for Web sites not providing any RSS / Atom feed.\n\nFinally, it supports extensions for further tuning.", diff --git a/apps/freshrss/docker-compose.yml b/apps/freshrss/docker-compose.yml index 782e09cb..fad93148 100644 --- a/apps/freshrss/docker-compose.yml +++ b/apps/freshrss/docker-compose.yml @@ -15,6 +15,13 @@ services: restart: unless-stopped networks: - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.freshrss.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.freshrss.entrypoints: websecure + traefik.http.routers.freshrss.service: freshrss + traefik.http.routers.freshrss.tls.certresolver: myresolver + traefik.http.services.freshrss.loadbalancer.server.port: 80 # labels: # traefik.enable: true diff --git a/apps/ghost/config.json b/apps/ghost/config.json index f94c14fc..0af16ee4 100644 --- a/apps/ghost/config.json +++ b/apps/ghost/config.json @@ -3,8 +3,9 @@ "name": "Ghost", "port": 8117, "available": true, + "exposable": true, "id": "ghost", - "tipi_version": 1, + "tipi_version": 2, "version": "5.7.0", "categories": ["social", "media"], "description": "Ghost is a powerful app for new-media creators to publish, share, and grow a business around their content. It comes with modern tools to build a website, publish content, send newsletters & offer paid subscriptions to members.", diff --git a/apps/ghost/docker-compose.yml b/apps/ghost/docker-compose.yml index 46ddd904..4486a4a6 100644 --- a/apps/ghost/docker-compose.yml +++ b/apps/ghost/docker-compose.yml @@ -22,6 +22,13 @@ services: - ${APP_DATA_DIR}/content:/var/lib/ghost/content networks: - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.ghost.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.ghost.entrypoints: websecure + traefik.http.routers.ghost.service: ghost + traefik.http.routers.ghost.tls.certresolver: myresolver + traefik.http.services.ghost.loadbalancer.server.port: 2368 ghostdb: container_name: ghostdb diff --git a/apps/invidious/config.json b/apps/invidious/config.json index 4ecd85ec..a1db11fc 100644 --- a/apps/invidious/config.json +++ b/apps/invidious/config.json @@ -2,10 +2,11 @@ "$schema": "../schema.json", "name": "Invidious", "available": true, + "exposable": true, "port": 8095, "id": "invidious", "version": "latest", - "tipi_version": 1, + "tipi_version": 2, "categories": ["media", "social"], "description": "Invidious is an open source alternative front-end to YouTube.", "short_desc": "An alternative front-end to YouTube", diff --git a/apps/invidious/docker-compose.arm.yml b/apps/invidious/docker-compose.arm.yml index 50975e6b..c9d8ace4 100644 --- a/apps/invidious/docker-compose.arm.yml +++ b/apps/invidious/docker-compose.arm.yml @@ -27,6 +27,13 @@ services: - invidious-db networks: - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.invidious.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.invidious.entrypoints: websecure + traefik.http.routers.invidious.service: invidious + traefik.http.routers.invidious.tls.certresolver: myresolver + traefik.http.services.invidious.loadbalancer.server.port: 3000 invidious-db: user: 1000:1000 diff --git a/apps/invidious/docker-compose.yml b/apps/invidious/docker-compose.yml index 58380b6b..ff64140d 100644 --- a/apps/invidious/docker-compose.yml +++ b/apps/invidious/docker-compose.yml @@ -28,6 +28,13 @@ services: - invidious-db networks: - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.invidious.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.invidious.entrypoints: websecure + traefik.http.routers.invidious.service: invidious + traefik.http.routers.invidious.tls.certresolver: myresolver + traefik.http.services.invidious.loadbalancer.server.port: 3000 invidious-db: user: 1000:1000 diff --git a/apps/plex/config.json b/apps/plex/config.json index 75509024..353c94fc 100644 --- a/apps/plex/config.json +++ b/apps/plex/config.json @@ -2,9 +2,10 @@ "$schema": "../schema.json", "name": "Plex", "available": true, + "exposable": true, "port": 32400, "id": "plex", - "tipi_version": 3, + "tipi_version": 4, "version": "1.28.1", "url_suffix": "/web", "categories": ["media"], diff --git a/apps/plex/docker-compose.yml b/apps/plex/docker-compose.yml index bdfdb4be..f1158fd4 100644 --- a/apps/plex/docker-compose.yml +++ b/apps/plex/docker-compose.yml @@ -13,3 +13,10 @@ services: - ${APP_DATA_DIR}/data/config:/config - ${ROOT_FOLDER_HOST}/media/data:/media restart: unless-stopped + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.plex.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.plex.entrypoints: websecure + traefik.http.routers.plex.service: plex + traefik.http.routers.plex.tls.certresolver: myresolver + traefik.http.services.plex.loadbalancer.server.port: 32400