Merge branch 'runtipi:master' into app/koillection

This commit is contained in:
Mathieu Daniere 2023-10-28 14:03:51 +02:00 committed by GitHub
commit 3641e30b9f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
198 changed files with 1920 additions and 301 deletions
.github/ISSUE_TEMPLATE
README.md
apps
2fauth
__tests__
actual-budget
adguard
audiobookshelf
autobrr
baikal/metadata
bazarr
budibase
calibre-web
changedetection
cloudflared
code-server
drawio
fireshare
flatnotes
forgejo
freshrss
ghost
ghostfolio
gitea
gladys
glances/metadata
gotosocial
grafana
grist
grocy
halo
homebox
immich
jellyfin-vue
jellyfin
joplin
kanboard
kasm-workspaces
kavita
kimai
kiwix-serve
libretranslate
lidarr
linkwarden
logto
mastodon

View File

@ -10,10 +10,20 @@ assignees: meienberger
Have you considered adding the app yourself? Have you considered adding the app yourself?
**Describe app** **Describe app**
A clear and concise description of what the app consists of and how it would benefit the users of Tipi. A clear and concise description of what the app consists of and how it would benefit the users of Tipi.
**Links** **Links**
Include links to all the available resources for the app. (eg: github repo, website, license) - Official repository: [Insert link]
- Official docker image: [Insert link]
Include links to alln other the available resources for the app. (eg: website, license)
**Additional context** **Additional context**
Add any other context or screenshots about the app request here. Add any other context or screenshots about the app request here.
**Checklist**
- [ ] I have put the app name in the title of the issue
- [ ] I have linked the repository of the app
- [ ] I have linked the official docker image

View File

@ -16,6 +16,7 @@ This is the official repository for the Tipi App Store. It contains all the apps
- [Budibase](https://github.com/Budibase/budibase) - Low code platform for creating internal tools, workflows, and admin panels in minutes. Supports PostgreSQL, MySQL, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀. Budibase, the low code platform you'll enjoy using ⚡ - [Budibase](https://github.com/Budibase/budibase) - Low code platform for creating internal tools, workflows, and admin panels in minutes. Supports PostgreSQL, MySQL, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀. Budibase, the low code platform you'll enjoy using ⚡
- [Bookstack](https://github.com/BookStackApp/BookStack) - Simple, easy-to-use platform for organising and storing information. - [Bookstack](https://github.com/BookStackApp/BookStack) - Simple, easy-to-use platform for organising and storing information.
- [Calibre-Web](https://github.com/janeczku/calibre-web) - Web Ebook Reader - [Calibre-Web](https://github.com/janeczku/calibre-web) - Web Ebook Reader
- [ChangeDetection.io](https://github.com/dgtlmoon/changedetection.io) - The best and simplest free open source website change detection, restock monitor and notification service.
- [Chatpad AI](https://github.com/deiucanta/chatpad) - Not just another ChatGPT user-interface! - [Chatpad AI](https://github.com/deiucanta/chatpad) - Not just another ChatGPT user-interface!
- [Code-Server](https://github.com/coder/code-server) - Web VS Code - [Code-Server](https://github.com/coder/code-server) - Web VS Code
- [Codex.Docs](https://github.com/codex-team/codex.docst) - Free Docs app powered by Editor.js ecosystem. - [Codex.Docs](https://github.com/codex-team/codex.docst) - Free Docs app powered by Editor.js ecosystem.
@ -28,6 +29,7 @@ This is the official repository for the Tipi App Store. It contains all the apps
- [Deemix](https://gitlab.com/Bockiii/deemix-docker) - deemix is a barebone deezer downloader library built from the ashes of Deezloader Remix. - [Deemix](https://gitlab.com/Bockiii/deemix-docker) - deemix is a barebone deezer downloader library built from the ashes of Deezloader Remix.
- [DokuWiki](https://github.com/dokuwiki/dokuwiki) - DokuWiki is a simple to use and highly versatile Open Source wiki software - [DokuWiki](https://github.com/dokuwiki/dokuwiki) - DokuWiki is a simple to use and highly versatile Open Source wiki software
- [Dozzle](https://github.com/amir20/dozzle) - Dozzle is a small web based app to monitor Docker logs - [Dozzle](https://github.com/amir20/dozzle) - Dozzle is a small web based app to monitor Docker logs
- [Draw.io](https://github.com/jgraph/drawio) - draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding.
- [Duplicati](https://github.com/linuxserver/docker-duplicati) - Store securely encrypted backups in the cloud! - [Duplicati](https://github.com/linuxserver/docker-duplicati) - Store securely encrypted backups in the cloud!
- [Emulatorjs](https://github.com/EmulatorJS/EmulatorJS) - Self-hosted Javascript emulation for various system. - [Emulatorjs](https://github.com/EmulatorJS/EmulatorJS) - Self-hosted Javascript emulation for various system.
- [Excalidraw](https://github.com/excalidraw/excalidraw) - Online whiteboard collaboration made easy - [Excalidraw](https://github.com/excalidraw/excalidraw) - Online whiteboard collaboration made easy
@ -61,11 +63,14 @@ This is the official repository for the Tipi App Store. It contains all the apps
- [Invidious](https://github.com/iv-org/invidious) - An alternative front-end to YouTube - [Invidious](https://github.com/iv-org/invidious) - An alternative front-end to YouTube
- [Jackett](https://github.com/Jackett/Jackett) - API Support for your favorite torrent trackers - [Jackett](https://github.com/Jackett/Jackett) - API Support for your favorite torrent trackers
- [Jellyfin](https://github.com/jellyfin/jellyfin) - A media server for your home collection - [Jellyfin](https://github.com/jellyfin/jellyfin) - A media server for your home collection
- [Jellyfin Vue (Beta)](https://github.com/jellyfin/jellyfin-vue) - A modern web client for Jellyfin based on Vue
- [Jellyseerr](https://github.com/Fallenbagel/jellyseerr) - Fork of overseerr for Jellyfin support - [Jellyseerr](https://github.com/Fallenbagel/jellyseerr) - Fork of overseerr for Jellyfin support
- [Joplin](https://github.com/laurent22/joplin) - Privacy focused note-taking app - [Joplin](https://github.com/laurent22/joplin) - Privacy focused note-taking app
- [Kanboard](https://github.com/kanboard/kanboard) - Kanboard is a free and open source Kanban project management software. - [Kanboard](https://github.com/kanboard/kanboard) - Kanboard is a free and open source Kanban project management software.
- [Kapowarr](https://github.com/Casvt/Kapowarr) - Kapowarr is a software to build and manage a comic book library, fitting in the \*arr suite of software. - [Kapowarr](https://github.com/Casvt/Kapowarr) - Kapowarr is a software to build and manage a comic book library, fitting in the \*arr suite of software.
- [Kasm Workspaces](https://github.com/kasmtech) - Kasm Workspaces is a docker container streaming platform for delivering browser-based access to desktops, applications, and web services
- [Kavita](https://github.com/Kareadita/Kavita) - Kavita is a fast, feature rich, cross platform reading server - [Kavita](https://github.com/Kareadita/Kavita) - Kavita is a fast, feature rich, cross platform reading server
- [Kimai](https://github.com/kimai/kimai) - Open source time-tracker
- [Libreddit](https://github.com/spikecodes/libreddit) - Private front-end for Reddit - [Libreddit](https://github.com/spikecodes/libreddit) - Private front-end for Reddit
- [LibrePhotos](https://github.com/LibrePhotos/librephotos) - Complete photo management service - [LibrePhotos](https://github.com/LibrePhotos/librephotos) - Complete photo management service
- [LibreTranslate](https://github.com/LibreTranslate/LibreTranslate) - Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup - [LibreTranslate](https://github.com/LibreTranslate/LibreTranslate) - Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup
@ -87,15 +92,20 @@ This is the official repository for the Tipi App Store. It contains all the apps
- [Monica](https://github.com/monicahq/monica) - A Personal Relationship Management tool to help you document your social life - [Monica](https://github.com/monicahq/monica) - A Personal Relationship Management tool to help you document your social life
- [Mixpost](https://github.com/inovector/mixpost) - Self-hosted social media management. Schedule and organize your social content. - [Mixpost](https://github.com/inovector/mixpost) - Self-hosted social media management. Schedule and organize your social content.
- [Mixpost Pro](https://mixpost.app/pricing) - Self-hosted social media management. Schedule and organize your social content. - [Mixpost Pro](https://mixpost.app/pricing) - Self-hosted social media management. Schedule and organize your social content.
- [Movary](https://github.com/leepeuker/movary - ) Track and rate your watched movies - [MongoDB](https://github.com/mongodb/mongo)- MongoDB is an open-source NoSQL database
- [Mongo Express](https://github.com/mongo-express/mongo-express) - A web-based MongoDB admin interface written with Node.js, Express, and Bootstrap3
- [Movary](https://github.com/leepeuker/movary ) - Track and rate your watched movies
- [mStream](https://github.com/IrosTheBeggar/mStream) - The easiest music streaming server available - [mStream](https://github.com/IrosTheBeggar/mStream) - The easiest music streaming server available
- [Mylar3](https://github.com/mylar3/mylar3) - Mylar3 is an automated Comic Book downloader (cbr/cbz) for use with NZB and torrents written in python. - [Mylar3](https://github.com/mylar3/mylar3) - Mylar3 is an automated Comic Book downloader (cbr/cbz) for use with NZB and torrents written in python.
- [n8n](https://github.com/n8n-io/n8n) - Workflow Automation Tool - [n8n](https://github.com/n8n-io/n8n) - Workflow Automation Tool
- [Navidrome](https://github.com/navidrome/navidrome) - A selfhosted music server - [Navidrome](https://github.com/navidrome/navidrome) - A selfhosted music server
- [Netdata](https://github.com/netdata/netdata) - Open-source, real-time, performance and health monitoring.
- [Nextcloud](https://github.com/nextcloud/server) - A safe home for all your data - [Nextcloud](https://github.com/nextcloud/server) - A safe home for all your data
- [Nitter](https://github.com/zedeus/nitter) - Alternative Twitter front-end - [Nitter](https://github.com/zedeus/nitter) - Alternative Twitter front-end
- [NocoDB](https://github.com/nocodb/nocodb) - Open Source Airtable Alternative - [NocoDB](https://github.com/nocodb/nocodb) - Open Source Airtable Alternative
- [Node-RED](https://github.com/node-red/node-red) - Low-code programming for event-driven applications - [Node-RED](https://github.com/node-red/node-red) - Low-code programming for event-driven applications
- [NoteMark](https://github.com/enchant97/note-mark/) - Note Mark is a lighting fast and minimal web-based Markdown notes app.
- [Ntfy](https://github.com/binwiederhier/ntfy) - A Straightforward Notification service that operates over HTTP
- [Obsidian LiveSync](https://github.com/vrtmrz/self-hosted-livesync-server) - LiveSync couchdb backend for Obsidian - [Obsidian LiveSync](https://github.com/vrtmrz/self-hosted-livesync-server) - LiveSync couchdb backend for Obsidian
- [OneDev](https://code.onedev.io/onedev/server) - Self-hosted Git Server with Kanban and CI/CD - [OneDev](https://code.onedev.io/onedev/server) - Self-hosted Git Server with Kanban and CI/CD
- [Openbooks](https://github.com/evan-buss/openbooks) - Search and Download eBooks - [Openbooks](https://github.com/evan-buss/openbooks) - Search and Download eBooks
@ -124,8 +134,10 @@ This is the official repository for the Tipi App Store. It contains all the apps
- [Sabnzbd](https://github.com/sabnzbd/sabnzbd) - Sabnzbd makes Usenet as simple and streamlined as possible by automating everything we can" - [Sabnzbd](https://github.com/sabnzbd/sabnzbd) - Sabnzbd makes Usenet as simple and streamlined as possible by automating everything we can"
- [SearXNG](https://github.com/searxng/searxng) - SearXNG is a free internet metasearch engine which aggregates results from various search services and databases. Users are neither tracked nor profiled - [SearXNG](https://github.com/searxng/searxng) - SearXNG is a free internet metasearch engine which aggregates results from various search services and databases. Users are neither tracked nor profiled
- [Send](https://gitlab.com/timvisee/send) - Simple, private file sharing - [Send](https://gitlab.com/timvisee/send) - Simple, private file sharing
- [Serge](https://github.com/serge-chat/serge) - A web interface for chatting with Alpaca through llama.cpp.
- [SimpleX SMP](https://github.com/simplex-chat/simplexmq) - A reference implementation of the SimpleX Messaging Protocol for simplex queues over public networks. - [SimpleX SMP](https://github.com/simplex-chat/simplexmq) - A reference implementation of the SimpleX Messaging Protocol for simplex queues over public networks.
- [Sonarr](https://github.com/Sonarr/Sonarr) - TV show manager for Usenet and BitTorrent - [Sonarr](https://github.com/Sonarr/Sonarr) - TV show manager for Usenet and BitTorrent
- [Speedtest Tracker](https://github.com/alexjustesen/speedtest-tracker) - Internet performance tracking application.
- [Sshwifty](https://github.com/nirui/sshwifty/) - Web SSH & Telnet (WebSSH & WebTelnet client) - [Sshwifty](https://github.com/nirui/sshwifty/) - Web SSH & Telnet (WebSSH & WebTelnet client)
- [Stirling-PDF](https://github.com/Frooodle/Stirling-PDF) - Locally hosted web application that allows you to perform various operations on PDF files. - [Stirling-PDF](https://github.com/Frooodle/Stirling-PDF) - Locally hosted web application that allows you to perform various operations on PDF files.
- [Syncthing](https://github.com/syncthing/syncthing) - Continuous File Synchronization - [Syncthing](https://github.com/syncthing/syncthing) - Continuous File Synchronization

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "2fauth", "id": "2fauth",
"tipi_version": 5, "tipi_version": 6,
"version": "4.2.2", "version": "4.2.3",
"categories": [ "categories": [
"security" "security"
], ],

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
2fauth: 2fauth:
image: 2fauth/2fauth:4.2.2 image: 2fauth/2fauth:4.2.3
container_name: 2fauth container_name: 2fauth
volumes: volumes:
- ${APP_DATA_DIR}/data:/2fauth - ${APP_DATA_DIR}/data:/2fauth

View File

@ -33,6 +33,7 @@ const networkExceptions = [
"gladys", "gladys",
"scrypted", "scrypted",
"homebridge", "homebridge",
"cloudflared",
]; ];
const getAppConfigs = (): AppConfig[] => { const getAppConfigs = (): AppConfig[] => {
const apps: AppConfig[] = []; const apps: AppConfig[] = [];

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8011, "port": 8011,
"id": "actual-budget", "id": "actual-budget",
"tipi_version": 10, "tipi_version": 11,
"version": "23.9.0", "version": "23.10.0",
"categories": [ "categories": [
"finance" "finance"
], ],

View File

@ -2,7 +2,7 @@ version: "3.9"
services: services:
actual-budget: actual-budget:
container_name: actual-budget container_name: actual-budget
image: actualbudget/actual-server:23.9.0 image: actualbudget/actual-server:23.10.0
restart: unless-stopped restart: unless-stopped
ports: ports:
- ${APP_PORT}:5006 - ${APP_PORT}:5006

View File

@ -3,8 +3,8 @@
"name": "Adguard", "name": "Adguard",
"available": true, "available": true,
"exposable": true, "exposable": true,
"tipi_version": 17, "tipi_version": 19,
"version": "0.107.38", "version": "0.107.40",
"port": 8104, "port": 8104,
"id": "adguard", "id": "adguard",
"categories": [ "categories": [

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
adguard: adguard:
image: adguard/adguardhome:v0.107.38 image: adguard/adguardhome:v0.107.40
container_name: adguard container_name: adguard
volumes: volumes:
- "${APP_DATA_DIR}/data/work:/opt/adguardhome/work" - "${APP_DATA_DIR}/data/work:/opt/adguardhome/work"

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 13378, "port": 13378,
"id": "audiobookshelf", "id": "audiobookshelf",
"tipi_version": 5, "tipi_version": 6,
"version": "2.4.3", "version": "2.4.4",
"categories": [ "categories": [
"books", "books",
"media" "media"

View File

@ -2,7 +2,7 @@ version: '3.7'
services: services:
audiobookshelf: audiobookshelf:
container_name: audiobookshelf container_name: audiobookshelf
image: ghcr.io/advplyr/audiobookshelf:2.4.3 image: ghcr.io/advplyr/audiobookshelf:2.4.4
restart: unless-stopped restart: unless-stopped
ports: ports:
- ${APP_PORT}:80 - ${APP_PORT}:80

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "autobrr", "id": "autobrr",
"tipi_version": 9, "tipi_version": 12,
"version": "1.29.0", "version": "1.32.0",
"categories": [ "categories": [
"media" "media"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
autobrr: autobrr:
container_name: autobrr container_name: autobrr
image: ghcr.io/autobrr/autobrr:v1.29.0 image: ghcr.io/autobrr/autobrr:v1.32.0
restart: unless-stopped restart: unless-stopped
ports: ports:
- ${APP_PORT}:7474 - ${APP_PORT}:7474

Binary file not shown.

Before

(image error) Size: 49 KiB

After

(image error) Size: 45 KiB

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 6767, "port": 6767,
"id": "bazarr", "id": "bazarr",
"tipi_version": 9, "tipi_version": 11,
"version": "1.2.4", "version": "1.3.1",
"categories": [ "categories": [
"media", "media",
"utilities" "utilities"

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
bazarr: bazarr:
image: lscr.io/linuxserver/bazarr:1.2.4 image: lscr.io/linuxserver/bazarr:1.3.1
container_name: bazarr container_name: bazarr
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "budibase", "id": "budibase",
"tipi_version": 9, "tipi_version": 19,
"version": "2.10.10", "version": "2.11.45",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -1,7 +1,7 @@
version: '3.7' version: '3.7'
services: services:
budibase: budibase:
image: budibase/budibase:2.10.10 image: budibase/budibase:2.11.45
restart: unless-stopped restart: unless-stopped
container_name: budibase container_name: budibase
ports: ports:

View File

@ -4,10 +4,12 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"port": 8100, "port": 8100,
"tipi_version": 6, "tipi_version": 7,
"version": "0.6.20", "version": "0.6.21",
"id": "calibre-web", "id": "calibre-web",
"categories": ["books"], "categories": [
"books"
],
"description": "On the initial setup screen, enter /books as your calibre library location. \n Default admin login: Username: admin Password: admin123", "description": "On the initial setup screen, enter /books as your calibre library location. \n Default admin login: Username: admin Password: admin123",
"short_desc": "Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.", "short_desc": "Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.",
"author": "https://github.com/janeczku/", "author": "https://github.com/janeczku/",

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
calibre-web: calibre-web:
image: lscr.io/linuxserver/calibre-web:0.6.20 image: lscr.io/linuxserver/calibre-web:0.6.21
container_name: calibre-web container_name: calibre-web
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -0,0 +1,18 @@
{
"name": "ChangeDetection",
"available": true,
"port": 8257,
"exposable": true,
"id": "changedetection",
"description": "The best and simplest free open source website change detection, restock monitor and notification service.",
"tipi_version": 2,
"version": "0.45.3",
"categories": [
"utilities"
],
"short_desc": "Website change detection.",
"author": "dgtlmoon",
"source": "https://github.com/dgtlmoon/changedetection.io",
"website": "https://changedetection.io/",
"form_fields": []
}

View File

@ -0,0 +1,49 @@
version: "3.7"
services:
changedetection:
image: ghcr.io/dgtlmoon/changedetection.io:0.45.3
container_name: changedetection
hostname: changedetection
volumes:
- ${APP_DATA_DIR}/data:/datastore
ports:
- ${APP_PORT}:5000
restart: unless-stopped
environment:
- PLAYWRIGHT_DRIVER_URL=ws://chnagedetection-chrome:3000/?stealth=1&--disable-web-security=true
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.changedetection-web-web-redirect.redirectscheme.scheme: https
traefik.http.services.changedetection-web.loadbalancer.server.port: 5000
# Web
traefik.http.routers.changedetection-web-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.changedetection-web-insecure.entrypoints: web
traefik.http.routers.changedetection-web-insecure.service: changedetection-web
traefik.http.routers.changedetection-web-insecure.middlewares: changedetection-web-web-redirect
# Websecure
traefik.http.routers.changedetection-web.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.changedetection-web.entrypoints: websecure
traefik.http.routers.changedetection-web.service: changedetection-web
traefik.http.routers.changedetection-web.tls.certresolver: myresolver
# Local domain
traefik.http.routers.changedetection-web-local-insecure.rule: Host(`changedetection-web.${LOCAL_DOMAIN}`)
traefik.http.routers.changedetection-web-local-insecure.entrypoints: web
traefik.http.routers.changedetection-web-local-insecure.service: changedetection-web
traefik.http.routers.changedetection-web-local-insecure.middlewares: changedetection-web-web-redirect
# Local domain secure
traefik.http.routers.changedetection-web-local.rule: Host(`changedetection-web.${LOCAL_DOMAIN}`)
traefik.http.routers.changedetection-web-local.entrypoints: websecure
traefik.http.routers.changedetection-web-local.service: changedetection-web
traefik.http.routers.changedetection-web-local.tls: true
chnagedetection-chrome:
hostname: chnagedetection-chrome
image: browserless/chrome:latest
restart: unless-stopped
container_name: chnagedetection-chrome
networks:
- tipi_main_network

View File

@ -0,0 +1,73 @@
## Web Site Change Detection, Restock monitoring and notifications.
**_Detect website content changes and perform meaningful actions - trigger notifications via Discord, Email, Slack, Telegram, API calls and many more._**
_Live your data-life pro-actively._
[<img src="https://raw.githubusercontent.com/dgtlmoon/changedetection.io/master/docs/screenshot.png" style="max-width:100%;" alt="Self-hosted web page change monitoring" title="Self-hosted web page change monitoring" />](https://changedetection.io?src=github)
### Target specific parts of the webpage using the Visual Selector tool.
Available when connected to a <a href="https://github.com/dgtlmoon/changedetection.io/wiki/Playwright-content-fetcher">playwright content fetcher</a> (included as part of our subscription service)
[<img src="https://raw.githubusercontent.com/dgtlmoon/changedetection.io/master/docs/visualselector-anim.gif" style="max-width:100%;" alt="Self-hosted web page change monitoring context difference " title="Self-hosted web page change monitoring context difference " />](https://changedetection.io?src=github)
### Easily see what changed, examine by word, line, or individual character.
[<img src="https://raw.githubusercontent.com/dgtlmoon/changedetection.io/master/docs/screenshot-diff.png" style="max-width:100%;" alt="Self-hosted web page change monitoring context difference " title="Self-hosted web page change monitoring context difference " />](https://changedetection.io?src=github)
### Perform interactive browser steps
Fill in text boxes, click buttons and more, setup your changedetection scenario.
Using the **Browser Steps** configuration, add basic steps before performing change detection, such as logging into websites, adding a product to a cart, accept cookie logins, entering dates and refining searches.
After **Browser Steps** have been run, then visit the **Visual Selector** tab to refine the content you're interested in.
Requires Playwright to be enabled.
### Example use cases
- Products and services have a change in pricing
- _Out of stock notification_ and _Back In stock notification_
- Monitor and track PDF file changes, know when a PDF file has text changes.
- Governmental department updates (changes are often only on their websites)
- New software releases, security advisories when you're not on their mailing list.
- Festivals with changes
- Discogs restock alerts and monitoring
- Realestate listing changes
- Know when your favourite whiskey is on sale, or other special deals are announced before anyone else
- COVID related news from government websites
- University/organisation news from their website
- Detect and monitor changes in JSON API responses
- JSON API monitoring and alerting
- Changes in legal and other documents
- Trigger API calls via notifications when text appears on a website
- Glue together APIs using the JSON filter and JSON notifications
- Create RSS feeds based on changes in web content
- Monitor HTML source code for unexpected changes, strengthen your PCI compliance
- You have a very sensitive list of URLs to watch and you do _not_ want to use the paid alternatives. (Remember, _you_ are the product)
- Get notified when certain keywords appear in Twitter search results
- Proactively search for jobs, get notified when companies update their careers page, search job portals for keywords.
- Get alerts when new job positions are open on Bamboo HR and other job platforms
- Website defacement monitoring
- Pokémon Card Restock Tracker / Pokémon TCG Tracker
- RegTech - stay ahead of regulatory changes, regulatory compliance
_Need an actual Chrome runner with Javascript support? We support fetching via WebDriver and Playwright!</a>_
#### Key Features
- Lots of trigger filters, such as "Trigger on text", "Remove text by selector", "Ignore text", "Extract text", also using regular-expressions!
- Target elements with xPath(1.0) and CSS Selectors, Easily monitor complex JSON with JSONPath or jq
- Switch between fast non-JS and Chrome JS based "fetchers"
- Track changes in PDF files (Monitor text changed in the PDF, Also monitor PDF filesize and checksums)
- Easily specify how often a site should be checked
- Execute JS before extracting text (Good for logging in, see examples in the UI!)
- Override Request Headers, Specify `POST` or `GET` and other methods
- Use the "Visual Selector" to help target specific elements
- Configurable [proxy per watch](https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration)
- Send a screenshot with the notification when a change is detected in the web page

Binary file not shown.

After

(image error) Size: 27 KiB

View File

@ -0,0 +1,17 @@
{
"$schema": "../schema.json",
"name": "Cloudflared",
"port": 14333,
"available": true,
"exposable": false,
"id": "cloudflared",
"tipi_version": 1,
"version": "2023.8.2",
"categories": ["utilities"],
"description": "Cloudflared-web is a docker image that packages both cloudflared cli and a no-frills Web UI for easy starting/stopping of cloudflare tunnel.",
"short_desc": "Cloudflare Tunnels in a Web UI",
"author": "WisdomSky",
"source": "https://github.com/WisdomSky/Cloudflared-web",
"form_fields": [
]
}

View File

@ -0,0 +1,10 @@
version: "3.9"
services:
cloudflared:
image: wisdomsky/cloudflared-web:2023.8.2
container_name: cloudflared
restart: unless-stopped
network_mode: host
volumes:
- ${APP_DATA_DIR}/data/cloudflared/config:/config

View File

@ -0,0 +1,31 @@
_Cloudflared-web is a docker image that packages both cloudflared cli and a no-frills Web UI for easy starting/stopping of cloudflare tunnel._
___
## Why use `Cloudflared-web`?
#### Pros
✅ Only need to run a docker command once. No need to run docker commands everytime you want to start or stop the container or when updating the token.
✅ Start and stop cloudflare tunnel anytime with a single click.
#### Cons
❌ Only supports Cloudflare Tunnel.
❌ Can only update hostname policies through the [ZeroTrust](https://one.dash.cloudflare.com/) dashboard.
___
The Web UI where you can setup the Cloudflared token can be accessed from port `14333`:
```
http://localhost:14333
```
## [Screenshots](https://github.com/WisdomSky/Cloudflared-web#screenshots)
[![Screenshot 1](https://raw.githubusercontent.com/WisdomSky/Cloudflared-web/main/screenshot-1.png)](https://raw.githubusercontent.com/WisdomSky/Cloudflared-web/main/screenshot-1.png)
[![Screenshot 2](https://raw.githubusercontent.com/WisdomSky/Cloudflared-web/main/screenshot-2.png)](https://raw.githubusercontent.com/WisdomSky/Cloudflared-web/main/screenshot-2.png)

Binary file not shown.

After

(image error) Size: 28 KiB

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8138, "port": 8138,
"id": "code-server", "id": "code-server",
"tipi_version": 14, "tipi_version": 17,
"version": "4.16.1", "version": "4.18.0",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
code-server: code-server:
image: lscr.io/linuxserver/code-server:4.16.1 image: lscr.io/linuxserver/code-server:4.18.0
container_name: code-server container_name: code-server
environment: environment:
- PUID=1000 - PUID=1000

23
apps/drawio/config.json Normal file
View File

@ -0,0 +1,23 @@
{
"name": "Draw.io",
"available": true,
"port": 8734,
"exposable": true,
"url_suffix": "?offline=1",
"id": "drawio",
"description": "draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding.",
"tipi_version": 3,
"version": "22.0.8",
"categories": [
"utilities"
],
"short_desc": "Diagramming and whiteboarding app.",
"author": "JGraph",
"source": "https://github.com/jgraph/drawio",
"website": "https://www.drawio.com/",
"form_fields": [],
"supported_architectures": [
"arm64",
"amd64"
]
}

View File

@ -0,0 +1,36 @@
version: "3.7"
services:
drawio:
image: jgraph/drawio:22.0.8
ports:
- ${APP_PORT}:8080
container_name: drawio
tty: true
stdin_open: true
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.drawio-web-redirect.redirectscheme.scheme: https
traefik.http.services.drawio.loadbalancer.server.port: 8080
# Web
traefik.http.routers.drawio-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.drawio-insecure.entrypoints: web
traefik.http.routers.drawio-insecure.service: drawio
traefik.http.routers.drawio-insecure.middlewares: drawio-web-redirect
# Websecure
traefik.http.routers.drawio.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.drawio.entrypoints: websecure
traefik.http.routers.drawio.service: drawio
traefik.http.routers.drawio.tls.certresolver: myresolver
# Local domain
traefik.http.routers.drawio-local-insecure.rule: Host(`drawio.${LOCAL_DOMAIN}`)
traefik.http.routers.drawio-local-insecure.entrypoints: web
traefik.http.routers.drawio-local-insecure.service: drawio
traefik.http.routers.drawio-local-insecure.middlewares: drawio-web-redirect
# Local domain secure
traefik.http.routers.drawio-local.rule: Host(`drawio.${LOCAL_DOMAIN}`)
traefik.http.routers.drawio-local.entrypoints: websecure
traefik.http.routers.drawio-local.service: drawio
traefik.http.routers.drawio-local.tls: true

View File

@ -0,0 +1,5 @@
## Draw.io
draw.io, this project, is a configurable diagramming/whiteboarding visualization application. draw.io is jointly owned and developed by JGraph Ltd and draw.io AG.
As well as running this project, we run a production-grade deployment of the diagramming interface at [https://app.diagrams.net](https://app.diagrams.net).

Binary file not shown.

After

(image error) Size: 14 KiB

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "fireshare", "id": "fireshare",
"tipi_version": 6, "tipi_version": 7,
"version": "1.2.13", "version": "1.2.14",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
fireshare: fireshare:
container_name: fireshare container_name: fireshare
image: shaneisrael/fireshare:v1.2.13 image: shaneisrael/fireshare:v1.2.14
ports: ports:
- ${APP_PORT}:80 - ${APP_PORT}:80
volumes: volumes:

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"id": "flatnotes", "id": "flatnotes",
"port": 8137, "port": 8137,
"tipi_version": 12, "tipi_version": 15,
"version": "3.2.3", "version": "3.4.0",
"categories": [ "categories": [
"utilities" "utilities"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
flatnotes: flatnotes:
container_name: flatnotes container_name: flatnotes
image: dullage/flatnotes:v3.2.3 image: dullage/flatnotes:v3.4.0
environment: environment:
FLATNOTES_AUTH_TYPE: ${FLATNOTES_AUTH_TYPE} FLATNOTES_AUTH_TYPE: ${FLATNOTES_AUTH_TYPE}
FLATNOTES_USERNAME: ${FLATNOTES_USERNAME} FLATNOTES_USERNAME: ${FLATNOTES_USERNAME}

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "forgejo", "id": "forgejo",
"tipi_version": 6, "tipi_version": 8,
"version": "1.20.4-0", "version": "1.20.5-0",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -2,7 +2,7 @@ version: '3.7'
services: services:
forgejo: forgejo:
image: codeberg.org/forgejo/forgejo:1.20.4-0 image: codeberg.org/forgejo/forgejo:1.20.5-0
container_name: forgejo container_name: forgejo
environment: environment:
- USER_UID=1000 - USER_UID=1000
@ -11,7 +11,7 @@ services:
- FORGEJO__database__HOST=forgejo-db:5432 - FORGEJO__database__HOST=forgejo-db:5432
- FORGEJO__database__NAME=forgejo - FORGEJO__database__NAME=forgejo
- FORGEJO__database__USER=forgejo - FORGEJO__database__USER=forgejo
- FORGEJO__database__PASSWD=forgejo - FORGEJO__database__PASSWD=${FORGEJO_DB_PASSWORD}
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- ${APP_DATA_DIR}/data/forgejo:/data - ${APP_DATA_DIR}/data/forgejo:/data

View File

@ -5,9 +5,11 @@
"exposable": true, "exposable": true,
"port": 8086, "port": 8086,
"id": "freshrss", "id": "freshrss",
"tipi_version": 5, "tipi_version": 6,
"version": "1.21.0", "version": "1.22.0",
"categories": ["utilities"], "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.", "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.",
"short_desc": "A free, self-hostable aggregator… ", "short_desc": "A free, self-hostable aggregator… ",
"author": "https://freshrss.org/", "author": "https://freshrss.org/",

View File

@ -2,7 +2,7 @@ version: "3.7"
services: services:
freshrss: freshrss:
image: lscr.io/linuxserver/freshrss:1.21.0 image: lscr.io/linuxserver/freshrss:1.22.0
container_name: freshrss container_name: freshrss
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "ghost", "id": "ghost",
"tipi_version": 45, "tipi_version": 57,
"version": "5.62.0", "version": "5.71.0",
"categories": [ "categories": [
"social", "social",
"media" "media"

View File

@ -2,7 +2,7 @@ version: "3.9"
services: services:
ghost: ghost:
image: ghost:5.62.0 image: ghost:5.71.0
container_name: ghost container_name: ghost
depends_on: depends_on:
- ghostdb - ghostdb

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "ghostfolio", "id": "ghostfolio",
"tipi_version": 7, "tipi_version": 12,
"version": "1.305.0", "version": "2.15.0",
"categories": [ "categories": [
"finance" "finance"
], ],

View File

@ -3,7 +3,7 @@ version: "3.9"
services: services:
ghostfolio: ghostfolio:
container_name: ghostfolio container_name: ghostfolio
image: ghostfolio/ghostfolio:1.305.0 image: ghostfolio/ghostfolio:2.15.0
restart: unless-stopped restart: unless-stopped
ports: ports:
- ${APP_PORT}:3333 - ${APP_PORT}:3333

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "gitea", "id": "gitea",
"tipi_version": 14, "tipi_version": 15,
"version": "1.20.4", "version": "1.20.5",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -16,13 +16,13 @@ PATH=/data/git/lfs
[server] [server]
APP_DATA_PATH = /data/gitea APP_DATA_PATH = /data/gitea
DOMAIN = localhost DOMAIN = {{APP_HOST}}
SSH_DOMAIN = localhost SSH_DOMAIN = {{APP_HOST}}
HTTP_PORT = 3000 HTTP_PORT = 3000
ROOT_URL = http://localhost:8108/ ROOT_URL = https://{{APP_DOMAIN}}/
DISABLE_SSH = false DISABLE_SSH = false
SSH_PORT = 22 SSH_PORT = 222
SSH_LISTEN_PORT = 22 SSH_LISTEN_PORT = 222
LFS_START_SERVER = true LFS_START_SERVER = true
LFS_JWT_SECRET = wo2G20l0nGsspUp8xsLNSNF7H8U-GQUVth5gj_q5cDk LFS_JWT_SECRET = wo2G20l0nGsspUp8xsLNSNF7H8U-GQUVth5gj_q5cDk
OFFLINE_MODE = false OFFLINE_MODE = false

View File

@ -2,7 +2,7 @@ version: "3.7"
services: services:
gitea: gitea:
image: gitea/gitea:1.20.4 image: gitea/gitea:1.20.5
container_name: gitea container_name: gitea
environment: environment:
- USER_UID=1000 - USER_UID=1000

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": false, "exposable": false,
"id": "gladys", "id": "gladys",
"tipi_version": 18, "tipi_version": 19,
"version": "4.28.0", "version": "4.29.0",
"categories": [ "categories": [
"automation" "automation"
], ],

View File

@ -3,7 +3,7 @@ version: '3'
services: services:
gladys: gladys:
container_name: gladys container_name: gladys
image: gladysassistant/gladys:v4.28.0 image: gladysassistant/gladys:v4.29.0
privileged: true privileged: true
restart: on-failure restart: on-failure
stop_grace_period: 1m stop_grace_period: 1m

Binary file not shown.

Before

(image error) Size: 12 KiB

After

(image error) Size: 9.3 KiB

View File

@ -6,10 +6,10 @@
"exposable": true, "exposable": true,
"force_expose": true, "force_expose": true,
"id": "gotosocial", "id": "gotosocial",
"tipi_version": 8, "tipi_version": 10,
"uid": 1000, "uid": 1000,
"gid": 1000, "gid": 1000,
"version": "0.11.1", "version": "0.12.1",
"categories": [ "categories": [
"social" "social"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
gotosocial: gotosocial:
container_name: gotosocial container_name: gotosocial
image: superseriousbusiness/gotosocial:0.11.1 image: superseriousbusiness/gotosocial:0.12.1
user: 1000:1000 user: 1000:1000
ports: ports:
- ${APP_PORT}:8080 - ${APP_PORT}:8080

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "grafana", "id": "grafana",
"tipi_version": 15, "tipi_version": 18,
"version": "10.1.2", "version": "10.2.0",
"categories": [ "categories": [
"data" "data"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
grafana: grafana:
container_name: grafana container_name: grafana
image: grafana/grafana-oss:10.1.2 image: grafana/grafana-oss:10.2.0
ports: ports:
- ${APP_PORT}:3000 - ${APP_PORT}:3000
volumes: volumes:

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"id": "grist", "id": "grist",
"description": "Grist is a modern relational spreadsheet. It combines the flexibility of a spreadsheet with the robustness of a database to organize your data and make you more productive.", "description": "Grist is a modern relational spreadsheet. It combines the flexibility of a spreadsheet with the robustness of a database to organize your data and make you more productive.",
"tipi_version": 3, "tipi_version": 5,
"version": "1.1.4", "version": "1.1.6",
"categories": [ "categories": [
"utilities" "utilities"
], ],

View File

@ -6,7 +6,7 @@ services:
environment: environment:
- APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
- GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR}
image: "gristlabs/grist:1.1.4" image: "gristlabs/grist:1.1.6"
ports: ports:
- "${APP_PORT}:8484" - "${APP_PORT}:8484"
restart: always restart: always

View File

@ -3,8 +3,8 @@
"name": "Grocy", "name": "Grocy",
"available": true, "available": true,
"exposable": true, "exposable": true,
"tipi_version": 3, "tipi_version": 4,
"version": "3.3.2", "version": "4.0.3",
"port": 8136, "port": 8136,
"id": "grocy", "id": "grocy",
"categories": ["automation", "finance"], "categories": ["automation", "finance"],

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
grocy: grocy:
image: lscr.io/linuxserver/grocy:v3.3.2-ls180 image: lscr.io/linuxserver/grocy:v4.0.3-ls215
container_name: grocy container_name: grocy
volumes: volumes:
- ${APP_DATA_DIR}/data:/config - ${APP_DATA_DIR}/data:/config

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8092, "port": 8092,
"id": "halo", "id": "halo",
"tipi_version": 8, "tipi_version": 11,
"version": "2.9.1", "version": "2.10.1",
"description": "Halo is a powerful and easy-to-use open source website building tool.", "description": "Halo is a powerful and easy-to-use open source website building tool.",
"short_desc": "Halo - Open source website building tool.", "short_desc": "Halo - Open source website building tool.",
"categories": [ "categories": [

View File

@ -2,7 +2,7 @@ version: "3.7"
services: services:
halo: halo:
image: halohub/halo:2.9.1 image: halohub/halo:2.10.1
container_name: halo container_name: halo
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:

View File

@ -5,9 +5,11 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "homebox", "id": "homebox",
"tipi_version": 5, "tipi_version": 7,
"version": "0.9.2", "version": "0.10.1",
"categories": ["utilities"], "categories": [
"utilities"
],
"description": "Homebox is the inventory and organization system built for the Home User", "description": "Homebox is the inventory and organization system built for the Home User",
"short_desc": "Homebox is the inventory and organization system built for the Home User", "short_desc": "Homebox is the inventory and organization system built for the Home User",
"author": "hay-kot", "author": "hay-kot",

View File

@ -2,7 +2,7 @@ version: "3.4"
services: services:
homebox: homebox:
image: ghcr.io/hay-kot/homebox:v0.9.2 image: ghcr.io/hay-kot/homebox:v0.10.1
container_name: homebox container_name: homebox
restart: always restart: always
environment: environment:

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8128, "port": 8128,
"id": "immich", "id": "immich",
"tipi_version": 43, "tipi_version": 49,
"version": "1.78.1", "version": "1.82.1",
"categories": [ "categories": [
"data", "data",
"photography" "photography"

View File

@ -3,7 +3,7 @@ version: "3.7"
services: services:
immich: immich:
container_name: immich container_name: immich
image: altran1502/immich-proxy:v1.78.1 image: altran1502/immich-proxy:v1.82.1
ports: ports:
- ${APP_PORT}:8080 - ${APP_PORT}:8080
depends_on: depends_on:
@ -43,7 +43,7 @@ services:
immich-server: immich-server:
container_name: immich-server container_name: immich-server
image: altran1502/immich-server:v1.78.1 image: altran1502/immich-server:v1.82.1
command: ["start-server.sh"] command: ["start-server.sh"]
volumes: volumes:
- ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload
@ -68,7 +68,7 @@ services:
immich-microservices: immich-microservices:
container_name: immich-microservices container_name: immich-microservices
image: altran1502/immich-server:v1.78.1 image: altran1502/immich-server:v1.82.1
command: ["start-microservices.sh"] command: ["start-microservices.sh"]
volumes: volumes:
- ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload
@ -93,7 +93,7 @@ services:
immich-machine-learning: immich-machine-learning:
container_name: immich-machine-learning container_name: immich-machine-learning
image: altran1502/immich-machine-learning:v1.78.1 image: altran1502/immich-machine-learning:v1.82.1
volumes: volumes:
- ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload
- ${APP_DATA_DIR}/data/immich-ml-cache:/cache - ${APP_DATA_DIR}/data/immich-ml-cache:/cache
@ -114,7 +114,7 @@ services:
immich-web: immich-web:
container_name: immich-web container_name: immich-web
image: altran1502/immich-web:v1.78.1 image: altran1502/immich-web:v1.82.1
restart: unless-stopped restart: unless-stopped
networks: networks:
- tipi_main_network - tipi_main_network

View File

@ -0,0 +1,17 @@
{
"$schema": "../schema.json",
"name": "Jellyfin Vue (Beta)",
"port": 8202,
"available": true,
"exposable": true,
"id": "jellyfin-vue",
"tipi_version": 1,
"version": "unstable.2023-09-18.fe0f640",
"categories": ["media"],
"description": "A modern web client for Jellyfin based on Vue",
"short_desc": "A modern web client for Jellyfin based on Vue",
"author": "Jellyfin",
"source": "https://github.com/jellyfin/jellyfin-vue",
"form_fields": [
]
}

View File

@ -0,0 +1,36 @@
version: "3"
services:
jellyfin-vue:
container_name: jellyfin-vue
image: ghcr.io/jellyfin/jellyfin-vue:unstable.2023-09-18.fe0f640
ports:
- ${APP_PORT}:80
restart: unless-stopped
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.jellyfin-vue-web-redirect.redirectscheme.scheme: https
traefik.http.services.jellyfin-vue.loadbalancer.server.port: 80
# Web
traefik.http.routers.jellyfin-vue-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.jellyfin-vue-insecure.entrypoints: web
traefik.http.routers.jellyfin-vue-insecure.service: jellyfin-vue
traefik.http.routers.jellyfin-vue-insecure.middlewares: jellyfin-vue-web-redirect
# Websecure
traefik.http.routers.jellyfin-vue.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.jellyfin-vue.entrypoints: websecure
traefik.http.routers.jellyfin-vue.service: jellyfin-vue
traefik.http.routers.jellyfin-vue.tls.certresolver: myresolver
# Local domain
traefik.http.routers.jellyfin-vue-local-insecure.rule: Host(`jellyfin-vue.${LOCAL_DOMAIN}`)
traefik.http.routers.jellyfin-vue-local-insecure.entrypoints: web
traefik.http.routers.jellyfin-vue-local-insecure.service: jellyfin-vue
traefik.http.routers.jellyfin-vue-local-insecure.middlewares: jellyfin-vue-web-redirect
# Local domain secure
traefik.http.routers.jellyfin-vue-local.rule: Host(`jellyfin-vue.${LOCAL_DOMAIN}`)
traefik.http.routers.jellyfin-vue-local.entrypoints: websecure
traefik.http.routers.jellyfin-vue-local.service: jellyfin-vue
traefik.http.routers.jellyfin-vue-local.tls: true

View File

@ -0,0 +1,15 @@
# Important Info
- This is a beta build of the new Jellyfin Vue UI. You still need an exisiting Jellyfin server. T
- This will have bugs and Issues, as its a Beta, Unstable Build.
# Jellyfin Vue
### Part of the [Jellyfin Project](https://jellyfin.org)
___
[![Logo Banner](https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/banner-logo-solid.svg?sanitize=true)](https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/banner-logo-solid.svg?sanitize=true)
This is an alternative client for Jellyfin based on Vue.js. It might not be feature complete and it's constantly evolving.

Binary file not shown.

After

(image error) Size: 85 KiB

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8091, "port": 8091,
"id": "jellyfin", "id": "jellyfin",
"tipi_version": 6, "tipi_version": 7,
"version": "10.8.10", "version": "10.8.11",
"categories": [ "categories": [
"media" "media"
], ],

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
jellyfin: jellyfin:
image: lscr.io/linuxserver/jellyfin:10.8.10 image: lscr.io/linuxserver/jellyfin:10.8.11
container_name: jellyfin container_name: jellyfin
volumes: volumes:
- ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/config:/config
@ -17,25 +17,27 @@ services:
networks: networks:
- tipi_main_network - tipi_main_network
labels: labels:
traefik.enable: ${APP_EXPOSED} # Main
traefik.http.middlewares.jellyfin-mw.headers.SSLForceHost: true traefik.enable: true
traefik.http.middlewares.jellyfin-mw.headers.SSLHost: ${APP_DOMAIN} traefik.http.middlewares.jellyfin-web-redirect.redirectscheme.scheme: https
traefik.http.middlewares.jellyfin-mw.headers.SSLRedirect: true traefik.http.services.jellyfin.loadbalancer.server.port: 8096
traefik.http.middlewares.jellyfin-mw.headers.STSIncludeSubdomains: true # Web
traefik.http.middlewares.jellyfin-mw.headers.STSPreload: true traefik.http.routers.jellyfin-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.middlewares.jellyfin-mw.headers.STSSeconds: 315360000 traefik.http.routers.jellyfin-insecure.entrypoints: web
traefik.http.middlewares.jellyfin-mw.headers.browserXSSFilter: true traefik.http.routers.jellyfin-insecure.service: jellyfin
traefik.http.middlewares.jellyfin-mw.headers.contentTypeNosniff: true traefik.http.routers.jellyfin-insecure.middlewares: jellyfin-web-redirect
traefik.http.middlewares.jellyfin-mw.headers.customFrameOptionsValue: 'allow-from https://${DOMAIN}' # Websecure
traefik.http.middlewares.jellyfin-mw.headers.customResponseHeaders.X-Robots-Tag: noindex,nofollow,nosnippet,noarchive,notranslate,noimageindex
traefik.http.middlewares.jellyfin-mw.headers.forceSTSHeader: true
traefik.http.middlewares.jellyfin-mw.headers.frameDeny: true
traefik.http.routers.jellyfin.entryPoints: websecure
traefik.http.routers.jellyfin.middlewares: jellyfin-mw
traefik.http.routers.jellyfin.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.jellyfin.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.jellyfin.service: jellyfin-svc traefik.http.routers.jellyfin.entrypoints: websecure
traefik.http.routers.jellyfin.tls: true traefik.http.routers.jellyfin.service: jellyfin
traefik.http.routers.jellyfin.tls.certresolver: myresolver traefik.http.routers.jellyfin.tls.certresolver: myresolver
traefik.http.routers.jellyfin.tls.domains: ${APP_DOMAIN} # Local domain
traefik.http.services.jellyfin-svc.loadBalancer.passHostHeader: true traefik.http.routers.jellyfin-local-insecure.rule: Host(`jellyfin.${LOCAL_DOMAIN}`)
traefik.http.services.jellyfin-svc.loadBalancer.server.port: 8096 traefik.http.routers.jellyfin-local-insecure.entrypoints: web
traefik.http.routers.jellyfin-local-insecure.service: jellyfin
traefik.http.routers.jellyfin-local-insecure.middlewares: jellyfin-web-redirect
# Local domain secure
traefik.http.routers.jellyfin-local.rule: Host(`jellyfin.${LOCAL_DOMAIN}`)
traefik.http.routers.jellyfin-local.entrypoints: websecure
traefik.http.routers.jellyfin-local.service: jellyfin
traefik.http.routers.jellyfin-local.tls: true

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8099, "port": 8099,
"id": "joplin", "id": "joplin",
"tipi_version": 8, "tipi_version": 10,
"version": "2.12.1", "version": "2.13.2",
"categories": [ "categories": [
"utilities" "utilities"
], ],

View File

@ -3,7 +3,7 @@ version: "3.7"
services: services:
joplin: joplin:
container_name: joplin container_name: joplin
image: florider89/joplin-server:2.12.1 image: florider89/joplin-server:2.13.2
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
- db-joplin - db-joplin

View File

@ -5,8 +5,8 @@
"port": 8010, "port": 8010,
"id": "kanboard", "id": "kanboard",
"description": "Kanboard is a free and open source Kanban project management software.", "description": "Kanboard is a free and open source Kanban project management software.",
"tipi_version": 6, "tipi_version": 7,
"version": "1.2.32", "version": "1.2.33",
"categories": [ "categories": [
"development" "development"
], ],

View File

@ -3,7 +3,7 @@ version: "3.9"
services: services:
kanboard: kanboard:
container_name: kanboard container_name: kanboard
image: kanboard/kanboard:v1.2.32 image: kanboard/kanboard:v1.2.33
environment: environment:
- PLUGIN_INSTALLER=${PLUGIN_INSTALLER} - PLUGIN_INSTALLER=${PLUGIN_INSTALLER}
ports: ports:

View File

@ -0,0 +1,22 @@
{
"name": "Kasm Workspaces",
"available": true,
"port": 8744,
"exposable": true,
"id": "kasm-workspaces",
"description": "Kasm Workspaces is a docker container streaming platform for delivering browser-based access to desktops, applications, and web services.",
"tipi_version": 2,
"version": "1.120.20221218",
"categories": [
"utilities"
],
"short_desc": "Container streaming platform.",
"author": "Kasm",
"source": "https://github.com/kasmtech",
"website": "https://www.kasmweb.com/",
"form_fields": [],
"supported_architectures": [
"arm64",
"amd64"
]
}

View File

@ -0,0 +1,41 @@
version: "3.7"
services:
kasm-workspaces:
image: lscr.io/linuxserver/kasm:1.120.20221218
container_name: kasm-workspaces
privileged: true
environment:
- KASM_PORT=8744
volumes:
- ${APP_DATA_DIR}/data:/opt
ports:
- 8743:3000
- ${APP_PORT}:8744
restart: unless-stopped
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.kasm-workspaces-web-redirect.redirectscheme.scheme: https
traefik.http.services.kasm-workspaces.loadbalancer.server.port: 8744
# Web
traefik.http.routers.kasm-workspaces-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.kasm-workspaces-insecure.entrypoints: web
traefik.http.routers.kasm-workspaces-insecure.service: kasm-workspaces
traefik.http.routers.kasm-workspaces-insecure.middlewares: kasm-workspaces-web-redirect
# Websecure
traefik.http.routers.kasm-workspaces.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.kasm-workspaces.entrypoints: websecure
traefik.http.routers.kasm-workspaces.service: kasm-workspaces
traefik.http.routers.kasm-workspaces.tls.certresolver: myresolver
# Local domain
traefik.http.routers.kasm-workspaces-local-insecure.rule: Host(`kasm-workspaces.${LOCAL_DOMAIN}`)
traefik.http.routers.kasm-workspaces-local-insecure.entrypoints: web
traefik.http.routers.kasm-workspaces-local-insecure.service: kasm-workspaces
traefik.http.routers.kasm-workspaces-local-insecure.middlewares: kasm-workspaces-web-redirect
# Local domain secure
traefik.http.routers.kasm-workspaces-local.rule: Host(`kasm-workspaces.${LOCAL_DOMAIN}`)
traefik.http.routers.kasm-workspaces-local.entrypoints: websecure
traefik.http.routers.kasm-workspaces-local.service: kasm-workspaces
traefik.http.routers.kasm-workspaces-local.tls: true

View File

@ -0,0 +1,8 @@
## Kasm
Kasm Workspaces is a docker container streaming platform for delivering browser-based access to desktops, applications, and web services. Kasm uses devops-enabled Containerized Desktop Infrastructure (CDI) to create on-demand, disposable, docker containers that are accessible via web browser. Example use-cases include Remote Browser Isolation (RBI), Data Loss Prevention (DLP), Desktop as a Service (DaaS), Secure Remote Access Services (RAS), and Open Source Intelligence (OSINT) collections.
The rendering of the graphical-based containers is powered by the open-source project KasmVNC
**Warning:** You will firtly need to access the port 8743 for the initial setup of the container. **If you dont do this the app won't work!**<br>
**Warning:** The app works with https if you dont access **all the ports** (setup and main) with https in the front you will get an empty response error.

Binary file not shown.

After

(image error) Size: 15 KiB

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "kavita", "id": "kavita",
"tipi_version": 6, "tipi_version": 7,
"version": "0.7.8", "version": "0.7.9",
"categories": [ "categories": [
"media" "media"
], ],

View File

@ -3,7 +3,7 @@ version: "3.9"
services: services:
kavita: kavita:
container_name: kavita container_name: kavita
image: kizaing/kavita:0.7.8 image: jvmilazz0/kavita:0.7.9
ports: ports:
- ${APP_PORT}:5000 - ${APP_PORT}:5000
volumes: volumes:

45
apps/kimai/config.json Normal file
View File

@ -0,0 +1,45 @@
{
"name": "Kimai",
"available": true,
"port": 8003,
"exposable": true,
"id": "kimai",
"description": "Kimai is a professional grade time-tracking application, free and open-source. It handles use-cases of freelancers as well as companies with dozens or hundreds of users.",
"tipi_version": 1,
"version": "fpm-2.1.0-prod",
"categories": ["utilities"],
"short_desc": "Open source time-tracker",
"author": "Kevin Papst",
"source": "https://github.com/kimai/kimai",
"website": "https://www.kimai.org",
"form_fields": [
{
"type": "random",
"label": "KIMAI_DATABASE_ROOT_PASSWORD",
"min": 32,
"env_variable": "KIMAI_DATABASE_ROOT_PASSWORD"
},
{
"type": "random",
"label": "KIMAI_DATABASE_PASSWORD",
"min": 32,
"env_variable": "KIMAI_DATABASE_PASSWORD"
},
{
"type": "text",
"label": "Admin email",
"max": 254,
"min": 3,
"required": true,
"env_variable": "KIMAI_ADMINMAIL"
},
{
"type": "password",
"label": "Admin password",
"max": 128,
"min": 10,
"required": true,
"env_variable": "KIMAI_ADMINPASS"
}
]
}

View File

@ -0,0 +1,86 @@
# Adapted from https://github.com/tobybatch/kimai2/blob/799a534b8d93d18a2d10573457936a31052ce8e0/compose/docker-compose.fpm.prod.yml
version: "3.5"
services:
nginx:
container_name: kimai-proxy
image: tobybatch/nginx-fpm-reverse-proxy:latest
ports:
- ${APP_PORT}:80
volumes:
- ${APP_DATA_DIR}/data/public:/opt/kimai/public:ro
restart: unless-stopped
depends_on:
- kimai
healthcheck:
test: wget --spider http://kimai-proxy/health || exit 1
interval: 20s
start_period: 10s
timeout: 10s
retries: 3
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.kimai-proxy-web-redirect.redirectscheme.scheme: https
traefik.http.services.kimai-proxy.loadbalancer.server.port: 80
# Web
traefik.http.routers.kimai-proxy-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.kimai-proxy-insecure.entrypoints: web
traefik.http.routers.kimai-proxy-insecure.service: kimai-proxy
traefik.http.routers.kimai-proxy-insecure.middlewares: kimai-proxy-web-redirect
# Websecure
traefik.http.routers.kimai-proxy.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.kimai-proxy.entrypoints: websecure
traefik.http.routers.kimai-proxy.service: kimai-proxy
traefik.http.routers.kimai-proxy.tls.certresolver: myresolver
# Local domain
traefik.http.routers.kimai-proxy-local-insecure.rule: Host(`kimai.${LOCAL_DOMAIN}`)
traefik.http.routers.kimai-proxy-local-insecure.entrypoints: web
traefik.http.routers.kimai-proxy-local-insecure.service: kimai-proxy
traefik.http.routers.kimai-proxy-local-insecure.middlewares: kimai-proxy-web-redirect
# Local domain secure
traefik.http.routers.kimai-proxy-local.rule: Host(`kimai-proxy.${LOCAL_DOMAIN}`)
traefik.http.routers.kimai-proxy-local.entrypoints: websecure
traefik.http.routers.kimai-proxy-local.service: kimai-proxy
traefik.http.routers.kimai-proxy-local.tls: true
kimai:
container_name: kimai
image: kimai/kimai2:fpm-2.1.0-prod
environment:
- ADMINMAIL=${KIMAI_ADMINMAIL}
- ADMINPASS=${KIMAI_ADMINPASS}
- "DATABASE_URL=mysql://kimai:${KIMAI_DATABASE_PASSWORD}@kimai-sqldb/kimai?charset=utf8&serverVersion=5.7"
- TRUSTED_HOSTS=kimai-proxy,localhost,127.0.0.1
volumes:
- ${APP_DATA_DIR}/data/public:/opt/kimai/public
- ${APP_DATA_DIR}/data/var:/opt/kimai/var
# - ./ldap.conf:/etc/openldap/ldap.conf:z
# - ./ROOT-CA.pem:/etc/ssl/certs/ROOT-CA.pem:z
restart: unless-stopped
networks:
- tipi_main_network
sqldb:
container_name: kimai-sqldb
image: mysql:5.7
environment:
- MYSQL_DATABASE=kimai
- MYSQL_USER=kimai
- MYSQL_PASSWORD=${KIMAI_DATABASE_PASSWORD}
- MYSQL_ROOT_PASSWORD=${KIMAI_DATABASE_ROOT_PASSWORD}
volumes:
- ${APP_DATA_DIR}/data/mysql:/var/lib/mysql
command: --default-storage-engine innodb
restart: unless-stopped
healthcheck:
test: mysqladmin -p$$MYSQL_ROOT_PASSWORD ping -h localhost
interval: 20s
start_period: 10s
timeout: 10s
retries: 3
networks:
- tipi_main_network

View File

@ -0,0 +1,8 @@
<p align="center">
<img src="https://raw.githubusercontent.com/kimai/images/ceed673becba2526f1055552ca7c255374ca5bf8/repository-header.png" alt="Kimai logo">
</p>
Kimai is a professional grade time-tracking application, free and open-source. It handles use-cases of freelancers as well as companies with dozens or hundreds of users. Kimai was build to track your project times and ships with many advanced features, including but not limited to:
JSON API, invoicing, data exports, multi-timer and punch-in punch-out mode, tagging, multi-user - multi-timezones - multi-language ([over 30 translations existing](https://hosted.weblate.org/projects/kimai/)!), authentication via SAML/LDAP/Database, two-factor authentication (2FA) with TOTP, customizable role and team permissions, responsive design, user/customer/project specific rates, advanced search & filtering, money and time budgets, advanced reporting, support for [plugins](https://www.kimai.org/store/) and so much more.

Binary file not shown.

After

(image error) Size: 41 KiB

View File

@ -0,0 +1,17 @@
{
"$schema": "../schema.json",
"name": "Kiwix Server",
"port": 8169,
"available": true,
"exposable": true,
"id": "kiwix-serve",
"tipi_version": 1,
"version": "3.5.0-2",
"categories": ["media"],
"description": "Kiwix Server is a web server for hosting .zim files",
"short_desc": "Kiwix Server is a web server for hosting .zim files",
"author": "Kiwix",
"source": "https://github.com/kiwix/kiwix-tools/",
"website": "https://kiwix.org/",
"form_fields": []
}

View File

@ -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}/data/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

View File

@ -0,0 +1,26 @@
# Kiwix Server
Kiwix Server is a .zim compatible web server: it allows you to deliver .zim files over the HTTP protocol within your local network be it a University or your own house. Simply start Kiwix-Serve on your machine, and your content will be available for anybody through their web browser. This allows you to view a website without having internet access.
**Ensure that your there are .zim files in the `${APP_DATA_DIR}/data/zim` directory otherwise the server won't launch properly and will need to be restarted**
For doumentation see [the Kiwix wiki](https://wiki.kiwix.org/wiki/Kiwix-serve)
## Features
* Full text search engine
* Search suggestions
* Really small and efficient
* Compatible with almost all browsers
* Available on all platforms
* Available as command line executable
* Embedded in Kiwix UI
* Able to deal with one ZIM file or XML library files
* [RESTful API endpoint with OPDS (XML)](https://wiki.kiwix.org/wiki/OPDS)
## What are ZIM files?
The ZIM file format is an open file format that stores wiki content for offline usage. The format is defined by the openZIM project, which also supports an Kiwix. The format is primarily used to store the contents of Wikipedia and other Wikimedia projects, including articles, full-text search indices and auxiliary files.
Download ZIM files from the [Kiwix library](https://library.kiwix.org/#lang=eng), or create your own (see [Zimit](https://www.youzim.it/))

Binary file not shown.

After

(image error) Size: 25 KiB

View File

@ -5,9 +5,11 @@
"exposable": true, "exposable": true,
"port": 8121, "port": 8121,
"id": "libretranslate", "id": "libretranslate",
"tipi_version": 6, "tipi_version": 9,
"version": "1.3.11", "version": "1.4.0",
"categories": ["utilities"], "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.", "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.", "short_desc": "Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.",
"author": "LibreTranslate", "author": "LibreTranslate",

View File

@ -2,7 +2,7 @@ version: "3.7"
services: services:
libretranslate: libretranslate:
container_name: libretranslate container_name: libretranslate
image: libretranslate/libretranslate:v1.3.11 image: libretranslate/libretranslate:v1.4.0
dns: dns:
- ${DNS_IP} - ${DNS_IP}
ports: ports:

View File

@ -5,8 +5,8 @@
"exposable": true, "exposable": true,
"port": 8131, "port": 8131,
"id": "lidarr", "id": "lidarr",
"tipi_version": 5, "tipi_version": 6,
"version": "1.3.5", "version": "1.4.5",
"categories": [ "categories": [
"media", "media",
"music" "music"

View File

@ -1,7 +1,7 @@
version: "3.7" version: "3.7"
services: services:
lidarr: lidarr:
image: lscr.io/linuxserver/lidarr:1.3.5 image: lscr.io/linuxserver/lidarr:1.4.5
container_name: lidarr container_name: lidarr
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -5,10 +5,11 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "linkwarden", "id": "linkwarden",
"tipi_version": 1, "tipi_version": 3,
"supported_architectures": ["amd64"], "version": "1.2.5",
"version": "v1.0.1", "categories": [
"categories": ["data"], "data"
],
"description": "A self-hosted, open-source collaborative bookmark manager to collect, organize and archive webpages.", "description": "A self-hosted, open-source collaborative bookmark manager to collect, organize and archive webpages.",
"short_desc": "A self-hosted, open-source collaborative bookmark manager", "short_desc": "A self-hosted, open-source collaborative bookmark manager",
"author": "Linkwarden", "author": "Linkwarden",
@ -25,6 +26,14 @@
"label": "Linkwarden Nextauth Secret", "label": "Linkwarden Nextauth Secret",
"min": 32, "min": 32,
"env_variable": "LINKWARDEN_NEXTAUTH_SECRET" "env_variable": "LINKWARDEN_NEXTAUTH_SECRET"
},
{
"type": "boolean",
"label": "Disable Registration",
"hint": "Needed for at least one user. If on registration will be disabled.",
"required": false,
"default": "false",
"env_variable": "LINKWARDEN_NEXT_PUBLIC_DISABLE_REGISTRATION"
} }
] ]
} }

View File

@ -2,12 +2,13 @@ version: "3.7"
services: services:
linkwarden: linkwarden:
image: ghcr.io/selfhostedhub/linkwarden:v1.0.1 image: ghcr.io/linkwarden/linkwarden:v1.2.5
container_name: linkwarden container_name: linkwarden
environment: environment:
- DATABASE_URL=postgresql://tipi:${LINKWARDEN_DB_PASSWORD}@linkwarden-db:5432/linkwarden - DATABASE_URL=postgresql://tipi:${LINKWARDEN_DB_PASSWORD}@linkwarden-db:5432/linkwarden
- NEXTAUTH_SECRET=${LINKWARDEN_NEXTAUTH_SECRET} - NEXTAUTH_SECRET=${LINKWARDEN_NEXTAUTH_SECRET}
- NEXTAUTH_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - NEXTAUTH_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
- NEXT_PUBLIC_DISABLE_REGISTRATION=${LINKWARDEN_NEXT_PUBLIC_DISABLE_REGISTRATION}
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- ${APP_DATA_DIR}/data/linkwarden:/data/data - ${APP_DATA_DIR}/data/linkwarden:/data/data

View File

@ -5,8 +5,8 @@
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "logto", "id": "logto",
"tipi_version": 8, "tipi_version": 10,
"version": "1.9.0", "version": "1.10.0",
"force_expose": true, "force_expose": true,
"categories": [ "categories": [
"security" "security"

View File

@ -4,7 +4,7 @@ services:
depends_on: depends_on:
logto-db: logto-db:
condition: service_healthy condition: service_healthy
image: svhd/logto:1.9.0 image: svhd/logto:1.10.0
container_name: logto container_name: logto
entrypoint: ["sh", "-c", "npm run cli db seed -- --swe && npm start"] entrypoint: ["sh", "-c", "npm run cli db seed -- --swe && npm start"]
ports: ports:

View File

@ -7,8 +7,8 @@
"force_expose": true, "force_expose": true,
"generate_vapid_keys": true, "generate_vapid_keys": true,
"id": "mastodon", "id": "mastodon",
"tipi_version": 7, "tipi_version": 11,
"version": "4.1.7", "version": "4.2.1",
"categories": [ "categories": [
"social" "social"
], ],

View File

@ -3,7 +3,7 @@ version: "3"
services: services:
mastodon: mastodon:
container_name: mastodon container_name: mastodon
image: lscr.io/linuxserver/mastodon:4.1.7 image: lscr.io/linuxserver/mastodon:4.2.1
ports: ports:
- 8209:80 - 8209:80
- ${APP_PORT}:443 - ${APP_PORT}:443

Some files were not shown because too many files have changed in this diff Show More