Merge branch 'master' into master

This commit is contained in:
Jazys 2023-08-29 23:50:05 +02:00 committed by GitHub
commit 46abcee1a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 306 additions and 25 deletions

View File

@ -5,8 +5,8 @@
"available": true,
"exposable": true,
"id": "filestash",
"tipi_version": 2,
"version": "397fd8b",
"tipi_version": 3,
"version": "latest",
"categories": ["utilities"],
"description": "A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze",
"short_desc": "A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze",

View File

@ -2,7 +2,7 @@ version: "2"
services:
filestash:
container_name: filestash
image: machines/filestash:397fd8b
image: machines/filestash:latest
restart: unless-stopped
environment:
- APPLICATION_URL=${APP_DOMAIN}

View File

@ -5,7 +5,7 @@
"available": true,
"exposable": true,
"id": "ghost",
"tipi_version": 41,
"tipi_version": 42,
"version": "5.60.0",
"categories": [
"social",

View File

@ -16,7 +16,7 @@ services:
database__connection__user: tipi
database__connection__password: ${GHOST_DATABASE_PASSWORD}
database__connection__database: ghosttipi
url: http://localhost:${APP_PORT}
url: ${APP_PROTOCOL:-http}://${APP_DOMAIN}
volumes:
- ${APP_DATA_DIR}/content:/var/lib/ghost/content
networks:

View File

@ -1,3 +1,6 @@
# Install Information
After Ghost is installed, head over to https://yourdomain.com/ghost/ to finish setup and create the admin account!
# A painless self-hosted Blog
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.

View File

@ -5,8 +5,8 @@
"available": true,
"exposable": false,
"id": "gladys",
"tipi_version": 16,
"version": "4.27.0",
"tipi_version": 17,
"version": "4.27.2",
"categories": [
"automation"
],

View File

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

View File

@ -5,8 +5,8 @@
"available": true,
"exposable": true,
"id": "grafana",
"tipi_version": 11,
"version": "9.5.8",
"tipi_version": 13,
"version": "10.1.0",
"categories": [
"data"
],

View File

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

View File

@ -5,8 +5,8 @@
"exposable": true,
"port": 8128,
"id": "immich",
"tipi_version": 38,
"version": "1.75.2",
"tipi_version": 39,
"version": "1.76.0",
"categories": [
"data",
"photography"

View File

@ -3,7 +3,7 @@ version: "3.7"
services:
immich:
container_name: immich
image: altran1502/immich-proxy:v1.75.2
image: altran1502/immich-proxy:v1.76.0
ports:
- ${APP_PORT}:8080
depends_on:
@ -93,7 +93,7 @@ services:
immich-machine-learning:
container_name: immich-machine-learning
image: altran1502/immich-machine-learning:v1.75.2
image: altran1502/immich-machine-learning:v1.76.0
volumes:
- ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload
- ${APP_DATA_DIR}/data/immich-ml-cache:/cache

View File

@ -0,0 +1,30 @@
{
"$schema": "../schema.json",
"name": "Linkwarden",
"port": 8199,
"available": true,
"exposable": true,
"id": "linkwarden",
"tipi_version": 1,
"supported_architectures": ["amd64"],
"version": "v1.0.1",
"categories": ["data"],
"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",
"author": "Linkwarden",
"source": "https://github.com/linkwarden/linkwarden",
"form_fields": [
{
"type": "random",
"label": "Linkwarden DB Password",
"min": 32,
"env_variable": "LINKWARDEN_DB_PASSWORD"
},
{
"type": "random",
"label": "Linkwarden Nextauth Secret",
"min": 32,
"env_variable": "LINKWARDEN_NEXTAUTH_SECRET"
}
]
}

View File

@ -0,0 +1,57 @@
version: "3.7"
services:
linkwarden:
image: ghcr.io/selfhostedhub/linkwarden:v1.0.1
container_name: linkwarden
environment:
- DATABASE_URL=postgresql://tipi:${LINKWARDEN_DB_PASSWORD}@linkwarden-db:5432/linkwarden
- NEXTAUTH_SECRET=${LINKWARDEN_NEXTAUTH_SECRET}
- NEXTAUTH_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
restart: unless-stopped
volumes:
- ${APP_DATA_DIR}/data/linkwarden:/data/data
ports:
- ${APP_PORT}:3000
depends_on:
- linkwarden-db
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.linkwarden-web-redirect.redirectscheme.scheme: https
traefik.http.services.linkwarden.loadbalancer.server.port: 3000
# Web
traefik.http.routers.linkwarden-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.linkwarden-insecure.entrypoints: web
traefik.http.routers.linkwarden-insecure.service: linkwarden
traefik.http.routers.linkwarden-insecure.middlewares: linkwarden-web-redirect
# Websecure
traefik.http.routers.linkwarden.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.linkwarden.entrypoints: websecure
traefik.http.routers.linkwarden.service: linkwarden
traefik.http.routers.linkwarden.tls.certresolver: myresolver
# Local domain
traefik.http.routers.linkwarden-local-insecure.rule: Host(`linkwarden.${LOCAL_DOMAIN}`)
traefik.http.routers.linkwarden-local-insecure.entrypoints: web
traefik.http.routers.linkwarden-local-insecure.service: linkwarden
traefik.http.routers.linkwarden-local-insecure.middlewares: linkwarden-web-redirect
# Local domain secure
traefik.http.routers.linkwarden-local.rule: Host(`linkwarden.${LOCAL_DOMAIN}`)
traefik.http.routers.linkwarden-local.entrypoints: websecure
traefik.http.routers.linkwarden-local.service: linkwarden
traefik.http.routers.linkwarden-local.tls: true
linkwarden-db:
container_name: linkwarden-db
image: postgres
restart: unless-stopped
environment:
- POSTGRES_USER=tipi
- POSTGRES_PASSWORD=${LINKWARDEN_DB_PASSWORD}
- POSTGRES_DB=linkwarden
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
networks:
- tipi_main_network

View File

@ -0,0 +1,30 @@
# Linkwarden
## [](https://github.com/linkwarden/linkwarden#intro--motivation)Intro & motivation
**Linkwarden is a self-hosted, open-source collaborative bookmark manager to collect, organize and archive webpages.** The objective is to organize useful webpages and articles you find across the web in one place, and since useful webpages can go away (see the inevitability of [Link Rot](https://www.howtogeek.com/786227/what-is-link-rot-and-how-does-it-threaten-the-web/)), Linkwarden also saves a copy of each webpage as a Screenshot and PDF, ensuring accessibility even if the original content is no longer available.
Additionally, Linkwarden is designed with collaboration in mind, sharing links with the public and/or allowing multiple users to work together seamlessly.
[![](https://github.com/linkwarden/linkwarden/raw/main/assets/showcase_image.png)](https://github.com/linkwarden/linkwarden/blob/main/assets/showcase_image.png)
**A bit of a "history"** Linkwarden has been completely rebuilt and redesigned from ground up, so pretty much the only thing it has in common with its predecessor is the idea behind it - bookmark management.
## Features
- ✅ Auto capture a screenshot and a PDF of each link.
- ✅ Organize links by collection, name, description and multiple tags.
- ✅ Collaborate on gathering links in a collection.
- ✅ Customize the permissions of each member.
- ✅ Share your collected links with the world.
- ✅ Search, filter and sort by link details.
- ✅ Responsive design and supports most browsers.
## Screenshots
[![](https://github.com/linkwarden/linkwarden/raw/main/assets/collections.png)](https://github.com/linkwarden/linkwarden/blob/main/assets/collections.png)
[![](https://github.com/linkwarden/linkwarden/raw/main/assets/collaborators.png)](https://github.com/linkwarden/linkwarden/blob/main/assets/collaborators.png)
[![](https://github.com/linkwarden/linkwarden/raw/main/assets/link_details.png)](https://github.com/linkwarden/linkwarden/blob/main/assets/link_details.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

View File

@ -10,7 +10,7 @@
]
},
"id": "pihole",
"tipi_version": 8,
"tipi_version": 9,
"version": "2023.05.2",
"url_suffix": "/admin",
"categories": [

View File

@ -18,12 +18,10 @@ services:
environment:
TZ: ${TZ}
WEBPASSWORD: ${APP_PASSWORD}
FTLCONF_REPLY_ADDR4: 10.21.21.201
cap_add:
- NET_ADMIN
networks:
tipi_main_network:
ipv4_address: 10.21.21.201
- tipi_main_network
labels:
# Main
traefik.enable: true

View File

@ -5,8 +5,8 @@
"available": true,
"exposable": true,
"id": "tandoor",
"tipi_version": 2,
"version": "1.5.5",
"tipi_version": 3,
"version": "1.5.6",
"categories": [
"data"
],

View File

@ -2,7 +2,7 @@ version: "3.7"
services:
tandoor:
container_name: tandoor
image: ghcr.io/tandoorrecipes/recipes:1.5.5
image: ghcr.io/tandoorrecipes/recipes:1.5.6
volumes:
- ${APP_DATA_DIR}/data/staticfiles:/opt/recipes/staticfiles
- ${APP_DATA_DIR}/data/mediafiles:/opt/recipes/mediafiles

16
apps/viewtube/config.json Normal file
View File

@ -0,0 +1,16 @@
{
"$schema": "../schema.json",
"name": "ViewTube",
"port": 8180,
"available": true,
"exposable": true,
"id": "viewtube",
"tipi_version": 1,
"version": "0.12.2",
"categories": ["media"],
"description": "The open source, privacy-conscious way to enjoy your favorite YouTube content.",
"short_desc": "The open source, privacy-conscious way to enjoy your favorite YouTube content.",
"author": "ViewTube",
"source": "https://github.com/ViewTube/viewtube",
"form_fields": []
}

View File

@ -0,0 +1,66 @@
version: '3'
services:
viewtube:
restart: unless-stopped
container_name: viewtube
image: mauriceo/viewtube:0.12.2
depends_on:
- viewtube-mongodb
- viewtube-redis
volumes:
- ${APP_DATA_DIR}/data/viewtube:/data
environment:
- VIEWTUBE_DATABASE_HOST=viewtube-mongodb
- VIEWTUBE_REDIS_HOST=viewtube-redis
- VIEWTUBE_SECURE=true
- VIEWTUBE_CORS_ORIGIN=${APP_PROTOCOL:-http}://${APP_DOMAIN}
# - VIEWTUBE_YOUTUBE_COOKIE=
# - VIEWTUBE_YOUTUBE_IDENTIFIER=
ports:
- ${APP_PORT}:8066
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.viewtube-web-redirect.redirectscheme.scheme: https
traefik.http.services.viewtube.loadbalancer.server.port: 8066
# Web
traefik.http.routers.viewtube-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.viewtube-insecure.entrypoints: web
traefik.http.routers.viewtube-insecure.service: viewtube
traefik.http.routers.viewtube-insecure.middlewares: viewtube-web-redirect
# Websecure
traefik.http.routers.viewtube.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.viewtube.entrypoints: websecure
traefik.http.routers.viewtube.service: viewtube
traefik.http.routers.viewtube.tls.certresolver: myresolver
# Local domain
traefik.http.routers.viewtube-local-insecure.rule: Host(`viewtube.${LOCAL_DOMAIN}`)
traefik.http.routers.viewtube-local-insecure.entrypoints: web
traefik.http.routers.viewtube-local-insecure.service: viewtube
traefik.http.routers.viewtube-local-insecure.middlewares: viewtube-web-redirect
# Local domain secure
traefik.http.routers.viewtube-local.rule: Host(`viewtube.${LOCAL_DOMAIN}`)
traefik.http.routers.viewtube-local.entrypoints: websecure
traefik.http.routers.viewtube-local.service: viewtube
traefik.http.routers.viewtube-local.tls: true
viewtube-mongodb:
container_name: viewtube-mongodb
restart: unless-stopped
image: mongo:5
networks:
- tipi_main_network
volumes:
- ${APP_DATA_DIR}/data/db:/data/db
viewtube-redis:
container_name: viewtube-redis
restart: unless-stopped
image: redis:7
networks:
- tipi_main_network
volumes:
- ${APP_DATA_DIR}/data/redis:/data

View File

@ -0,0 +1,44 @@
ViewTube is an alternative YouTube frontend that lets you watch, search and discover YouTube videos without ads or tracking. It's built to be mobile and desktop friendly, with dark and light themes, and a touch-friendly video player with gestures. You can create an account separately from YouTube, read comments, watch playlists, subscribe to channels and receive push notifications for new uploads It's built using [Nuxt](https://nuxt.com/) and [Nest](https://nestjs.com/).
You can find the documentation at [viewtube.wiki](https://viewtube.wiki)
## Features
- Watch videos without ads or tracking
- Built from the ground up to be mobile and desktop friendly
- Dark and light themes
- Touch friendly video player with gestures
- Supports loop, speed, autoplay and volume
- Create an account separately from Youtube
- Read comments
- Search for videos
- Watch playlists
- Subscribe to channels and see their latest uploads
- Receive push notifications for subscribed channels
- Integrated SponsorBlock support
## Where does ViewTube get the data from?
ViewTube does not use the official Youtube API. It instead scrapes the data from the website using a combination of custom built tools and the following open source libraries.
- [node-ytdl-core](https://github.com/fent/node-ytdl-core)
- [node-ytsr](https://github.com/TimeForANinja/node-ytsr)
- [node-ytpl](https://github.com/TimeForANinja/node-ytpl)
- [yt-comment-scraper](https://github.com/FreeTubeApp/yt-comment-scraper)
- [yt-channel-info](https://github.com/FreeTubeApp/yt-channel-info)
## Screenshots
### Homepage
[![Screenshot-Homepage](https://camo.githubusercontent.com/7ca1b34ee39d918f86a7043a3ffae08b574d5630975255eb8840536e7e169248/68747470733a2f2f692e6962622e636f2f476b35744b51372f6c78743179306d6b2e6a7067)](https://camo.githubusercontent.com/7ca1b34ee39d918f86a7043a3ffae08b574d5630975255eb8840536e7e169248/68747470733a2f2f692e6962622e636f2f476b35744b51372f6c78743179306d6b2e6a7067)
### Video
[![Screenshot-Video](https://camo.githubusercontent.com/07ecf2f4a9e61eb326d2125375f674020cbf97b1a998defdeb21fd8d1aa6f8f7/68747470733a2f2f692e6962622e636f2f52544c327633662f6732656a663777662e6a7067)](https://camo.githubusercontent.com/07ecf2f4a9e61eb326d2125375f674020cbf97b1a998defdeb21fd8d1aa6f8f7/68747470733a2f2f692e6962622e636f2f52544c327633662f6732656a663777662e6a7067)
### Channel
[![Screenshot-Channel](https://camo.githubusercontent.com/b50d3f852326d5436cc32507eb2ee48d036092ae1cba3bc61485a8a4661d0ffd/68747470733a2f2f692e6962622e636f2f68396d663179642f366a3435616f35722e6a7067)](https://camo.githubusercontent.com/b50d3f852326d5436cc32507eb2ee48d036092ae1cba3bc61485a8a4661d0ffd/68747470733a2f2f692e6962622e636f2f68396d663179642f366a3435616f35722e6a7067)

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1,37 @@
## (Optional) Use cookies from a real account
You can provide your own cookies to circumvent any Rate Limiting Issue.
### YouTube cookie
- Navigate to YouTube in a web browser
- Log in, preferrably with a separate account you don't use often
- Open up the dev tools console
- Type `document.cookie`
- Copy the entire response into the `VIEWTUBE_YOUTUBE_COOKIE` environment variable
### YouTube identifier
- Navigate to a video
- Right click and click "view source"
- Press CTRL+F to search for "ID\_TOKEN"
- Copy this value into the `VIEWTUBE_YOUTUBE_IDENTIFIER` environment variable
```
"form_fields": [
{
"type": "text",
"label": "Youtube Cookie",
"hint": "Optional, Read below",
"required": false,
"env_variable": "VIEWTUBE_YOUTUBE_COOKIE"
},
{
"type": "text",
"label": "Youtube Identifier",
"hint": "Optional, Read below",
"required": false,
"env_variable": "VIEWTUBE_YOUTUBE_IDENTIFIER"
}
]
```

View File

@ -5,8 +5,8 @@
"no_gui": true,
"port": 9993,
"id": "zerotier",
"tipi_version": 3,
"version": "1.10.6",
"tipi_version": 4,
"version": "1.12.1",
"categories": [
"network",
"security"

View File

@ -2,7 +2,7 @@ version: "3.7"
services:
zerotier:
container_name: zerotier
image: zerotier/zerotier:1.10.6
image: zerotier/zerotier:1.12.1
restart: on-failure
command: "${NETWORK_ID}"
cap_add: