local domain configs M-O (#689)
* feat(jackett): change config to support local domain * feat(matrix-conduit): change config to support local domain * feat(mealie): change config to support local domain * feat(memos): change config to support local domain * feat(mind): change config to support local domain * feat(minecraft-server): change config to support local domain * feat(mixpost): change config to support local domain * feat(mixpost-pro): change config to support local domain * feat(moneroblock): change config to support local domain * feat(monerod): change config to support local domain * feat(monica): change config to support local domain * feat(movary): change config to support local domain * feat(mstream): change config to support local domain * feat(mylar3): change config to support local domain * feat(n8n): change config to support local domain * feat(navidrome): change config to support local domain * feat(nitter): change config to support local domain * feat(nocodb): change config to support local domain * feat(nodered): change config to support local domain * feat(onedev): change config to support local domain * feat(openbooks): change config to support local domain * feat(overseerr): change config to support local domain * feat(owncloud): change config to support local domain
This commit is contained in:
parent
9b82525f92
commit
49e9316685
|
@ -9,10 +9,7 @@
|
|||
"version": "0.21.188",
|
||||
"description": "Jackett works as a proxy server: it translates queries from apps (Sonarr, Radarr, SickRage, CouchPotato, Mylar3, Lidarr, DuckieTV, qBittorrent, Nefarious etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches.",
|
||||
"short_desc": "API Support for your favorite torrent trackers ",
|
||||
"categories": [
|
||||
"media",
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["media", "utilities"],
|
||||
"author": "",
|
||||
"source": "https://github.com/Jackett/Jackett",
|
||||
"form_fields": []
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
"force_expose": true,
|
||||
"no_gui": true,
|
||||
"id": "matrix-conduit",
|
||||
"tipi_version": 1,
|
||||
"tipi_version": 2,
|
||||
"version": "0.5.0",
|
||||
"categories": ["social"],
|
||||
"description": "Conduit is a fast Matrix homeserver that’s easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.",
|
||||
|
@ -49,7 +49,7 @@
|
|||
"type": "text",
|
||||
"label": "Loggin Level",
|
||||
"hint": "Available levels: error, warn, info, debug, trace",
|
||||
"placeholder": "-warn,rocket=off,_=off,sled=off",
|
||||
"placeholder": "-warn,rocket=off,_=off,sled=off",
|
||||
"required": false,
|
||||
"env_variable": "LOG"
|
||||
}
|
||||
|
|
|
@ -22,12 +22,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
traefik.http.routers.matrix.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.matrix.entrypoints: websecure
|
||||
traefik.http.routers.matrix.service: matrix
|
||||
traefik.http.routers.matrix.tls.certresolver: myresolver
|
||||
traefik.http.services.matrix.loadbalancer.server.port: 6167
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.matrix-conduit-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.matrix-conduit.loadbalancer.server.port: 6167
|
||||
# Web
|
||||
traefik.http.routers.matrix-conduit-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.matrix-conduit-insecure.entrypoints: web
|
||||
traefik.http.routers.matrix-conduit-insecure.service: matrix-conduit
|
||||
traefik.http.routers.matrix-conduit-insecure.middlewares: matrix-conduit-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.matrix-conduit.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.matrix-conduit.entrypoints: websecure
|
||||
traefik.http.routers.matrix-conduit.service: matrix-conduit
|
||||
traefik.http.routers.matrix-conduit.tls.certresolver: myresolver
|
||||
# Local domain
|
||||
traefik.http.routers.matrix-conduit-local-insecure.rule: Host(`matrix-conduit.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.matrix-conduit-local-insecure.entrypoints: web
|
||||
traefik.http.routers.matrix-conduit-local-insecure.service: matrix-conduit
|
||||
traefik.http.routers.matrix-conduit-local-insecure.middlewares: matrix-conduit-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.matrix-conduit-local.rule: Host(`matrix-conduit.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.matrix-conduit-local.entrypoints: websecure
|
||||
traefik.http.routers.matrix-conduit-local.service: matrix-conduit
|
||||
traefik.http.routers.matrix-conduit-local.tls: true
|
||||
|
||||
matrix-conduit-well-known:
|
||||
container_name: matrix-conduit-well-known
|
||||
|
@ -40,9 +58,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
traefik.http.routers.matrix-well-knows.rule: Host(`${APP_DOMAIN}`) && PathPrefix(`/.well-known/matrix`)
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.matrix-well-knows-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.matrix-well-knows.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.matrix-well-knows-insecure.rule: Host(`${APP_DOMAIN}`) && PathPrefix(`/.well-known/matrix`)
|
||||
traefik.http.routers.matrix-well-knows-insecure.entrypoints: web
|
||||
traefik.http.routers.matrix-well-knows-insecure.service: matrix-well-knows
|
||||
traefik.http.routers.matrix-well-knows-insecure.middlewares: matrix-well-knows-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.matrix-well-knows.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.matrix-well-knows.entrypoints: websecure
|
||||
traefik.http.routers.matrix-well-knows.service: matrix-well-knows
|
||||
traefik.http.routers.matrix-well-knows.tls.certresolver: myresolver
|
||||
traefik.http.services.matrix-well-knows.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.matrix-well-knows-local-insecure.rule: Host(`matrix-well-knows.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.matrix-well-knows-local-insecure.entrypoints: web
|
||||
traefik.http.routers.matrix-well-knows-local-insecure.service: matrix-well-knows
|
||||
traefik.http.routers.matrix-well-knows-local-insecure.middlewares: matrix-well-knows-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.matrix-well-knows-local.rule: Host(`matrix-well-knows.${LOCAL_DOMAIN}`) && PathPrefix(`/.well-known/matrix`)
|
||||
traefik.http.routers.matrix-well-knows-local.entrypoints: websecure
|
||||
traefik.http.routers.matrix-well-knows-local.service: matrix-well-knows
|
||||
traefik.http.routers.matrix-well-knows-local.tls: true
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mealie",
|
||||
"tipi_version": 2,
|
||||
"tipi_version": 3,
|
||||
"supported_architectures": ["arm64", "amd64"],
|
||||
"version": "v0.5.6",
|
||||
"description": "Mealie is a self-hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience for the whole family. Easily add recipes into your database by providing the url and Mealie will automatically import the relevant data or add a family recipe with the UI editor. Mealie also provides an API for interactions from 3rd party applications. Default username / password is changeme@email.com / MyPassword",
|
||||
|
|
|
@ -14,9 +14,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mealie-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mealie.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.mealie-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mealie-insecure.entrypoints: web
|
||||
traefik.http.routers.mealie-insecure.service: mealie
|
||||
traefik.http.routers.mealie-insecure.middlewares: mealie-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mealie.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mealie.entrypoints: websecure
|
||||
traefik.http.routers.mealie.service: mealie
|
||||
traefik.http.routers.mealie.tls.certresolver: myresolver
|
||||
traefik.http.services.mealie.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.mealie-local-insecure.rule: Host(`mealie.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mealie-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mealie-local-insecure.service: mealie
|
||||
traefik.http.routers.mealie-local-insecure.middlewares: mealie-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mealie-local.rule: Host(`mealie.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mealie-local.entrypoints: websecure
|
||||
traefik.http.routers.mealie-local.service: mealie
|
||||
traefik.http.routers.mealie-local.tls: true
|
||||
|
|
|
@ -5,19 +5,14 @@
|
|||
"exposable": true,
|
||||
"port": 5230,
|
||||
"id": "memos",
|
||||
"tipi_version": 6,
|
||||
"tipi_version": 7,
|
||||
"version": "0.13.1",
|
||||
"categories": [
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["utilities"],
|
||||
"description": "Memo hub for knowledge management and collaboration.",
|
||||
"short_desc": "Memo hub for knowledge management and collaboration.",
|
||||
"author": "boojack",
|
||||
"website": "https://usememos.com/",
|
||||
"source": "https://github.com/usememos/memos",
|
||||
"supported_architectures": [
|
||||
"arm64",
|
||||
"amd64"
|
||||
],
|
||||
"supported_architectures": ["arm64", "amd64"],
|
||||
"form_fields": []
|
||||
}
|
||||
|
|
|
@ -4,16 +4,34 @@ services:
|
|||
image: neosmemo/memos:0.13.1
|
||||
container_name: memos
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/memos:/var/opt/memos
|
||||
- ${APP_DATA_DIR}/memos:/var/opt/memos
|
||||
ports:
|
||||
- ${APP_PORT}:5230
|
||||
- ${APP_PORT}:5230
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- tipi_main_network
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
traefik.http.routers.memos.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.memos.entrypoints: websecure
|
||||
traefik.http.routers.memos.service: memos
|
||||
traefik.http.routers.memos.tls.certresolver: myresolver
|
||||
traefik.http.services.memos.loadbalancer.server.port: 5230
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.memos-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.memos.loadbalancer.server.port: 5230
|
||||
# Web
|
||||
traefik.http.routers.memos-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.memos-insecure.entrypoints: web
|
||||
traefik.http.routers.memos-insecure.service: memos
|
||||
traefik.http.routers.memos-insecure.middlewares: memos-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.memos.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.memos.entrypoints: websecure
|
||||
traefik.http.routers.memos.service: memos
|
||||
traefik.http.routers.memos.tls.certresolver: myresolver
|
||||
# Local domain
|
||||
traefik.http.routers.memos-local-insecure.rule: Host(`memos.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.memos-local-insecure.entrypoints: web
|
||||
traefik.http.routers.memos-local-insecure.service: memos
|
||||
traefik.http.routers.memos-local-insecure.middlewares: memos-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.memos-local.rule: Host(`memos.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.memos-local.entrypoints: websecure
|
||||
traefik.http.routers.memos-local.service: memos
|
||||
traefik.http.routers.memos-local.tls: true
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mind",
|
||||
"tipi_version": 4,
|
||||
"tipi_version": 5,
|
||||
"version": "1.3.1",
|
||||
"categories": [
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["utilities"],
|
||||
"description": "A simple self hosted reminder platform that uses push to send notifications to your device. Set the reminder and forget about it!",
|
||||
"short_desc": "A simple self hosted reminder platform that uses push to send notifications to your device.",
|
||||
"author": "https://github.com/Casvt",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '3.3'
|
||||
version: "3.3"
|
||||
|
||||
services:
|
||||
mind:
|
||||
|
@ -13,9 +13,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mind-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mind.loadbalancer.server.port: 8080
|
||||
# Web
|
||||
traefik.http.routers.mind-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mind-insecure.entrypoints: web
|
||||
traefik.http.routers.mind-insecure.service: mind
|
||||
traefik.http.routers.mind-insecure.middlewares: mind-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mind.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mind.entrypoints: websecure
|
||||
traefik.http.routers.mind.service: mind
|
||||
traefik.http.routers.mind.tls.certresolver: myresolver
|
||||
traefik.http.services.mind.loadbalancer.server.port: 8080
|
||||
# Local domain
|
||||
traefik.http.routers.mind-local-insecure.rule: Host(`mind.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mind-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mind-local-insecure.service: mind
|
||||
traefik.http.routers.mind-local-insecure.middlewares: mind-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mind-local.rule: Host(`mind.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mind-local.entrypoints: websecure
|
||||
traefik.http.routers.mind-local.service: mind
|
||||
traefik.http.routers.mind-local.tls: true
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
"no_gui": true,
|
||||
"port": 25565,
|
||||
"id": "minecraft-server",
|
||||
"tipi_version": 1,
|
||||
"tipi_version": 2,
|
||||
"version": "latest",
|
||||
"categories": ["gaming"],
|
||||
"description": "Minecraft Server",
|
||||
|
|
|
@ -17,9 +17,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.minecraft-server-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.minecraft-server.loadbalancer.server.port: 25565
|
||||
# Web
|
||||
traefik.http.routers.minecraft-server-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.minecraft-server-insecure.entrypoints: web
|
||||
traefik.http.routers.minecraft-server-insecure.service: minecraft-server
|
||||
traefik.http.routers.minecraft-server-insecure.middlewares: minecraft-server-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.minecraft-server.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.minecraft-server.entrypoints: websecure
|
||||
traefik.http.routers.minecraft-server.service: minecraft-server
|
||||
traefik.http.routers.minecraft-server.tls.certresolver: myresolver
|
||||
traefik.http.services.minecraft-server.loadbalancer.server.port: 25565
|
||||
# Local domain
|
||||
traefik.http.routers.minecraft-server-local-insecure.rule: Host(`minecraft-server.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.minecraft-server-local-insecure.entrypoints: web
|
||||
traefik.http.routers.minecraft-server-local-insecure.service: minecraft-server
|
||||
traefik.http.routers.minecraft-server-local-insecure.middlewares: minecraft-server-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.minecraft-server-local.rule: Host(`minecraft-server.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.minecraft-server-local.entrypoints: websecure
|
||||
traefik.http.routers.minecraft-server-local.service: minecraft-server
|
||||
traefik.http.routers.minecraft-server-local.tls: true
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mixpost-pro",
|
||||
"tipi_version": 5,
|
||||
"tipi_version": 6,
|
||||
"version": "0.7",
|
||||
"categories": ["social", "utilities"],
|
||||
"description": "Mixpost it's the coolest Self-hosted social media management software.",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '3.7'
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
mixpost-pro:
|
||||
|
@ -27,12 +27,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mixpost-pro-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mixpost-pro.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.mixpost-pro-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-pro-insecure.entrypoints: web
|
||||
traefik.http.routers.mixpost-pro-insecure.service: mixpost-pro
|
||||
traefik.http.routers.mixpost-pro-insecure.middlewares: mixpost-pro-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mixpost-pro.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-pro.entrypoints: websecure
|
||||
traefik.http.routers.mixpost-pro.service: mixpost-pro
|
||||
traefik.http.routers.mixpost-pro.tls.certresolver: myresolver
|
||||
traefik.http.services.mixpost-pro.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.mixpost-pro-local-insecure.rule: Host(`mixpost-pro.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-pro-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mixpost-pro-local-insecure.service: mixpost-pro
|
||||
traefik.http.routers.mixpost-pro-local-insecure.middlewares: mixpost-pro-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mixpost-pro-local.rule: Host(`mixpost-pro.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-pro-local.entrypoints: websecure
|
||||
traefik.http.routers.mixpost-pro-local.service: mixpost-pro
|
||||
traefik.http.routers.mixpost-pro-local.tls: true
|
||||
|
||||
mixpost-pro-mysql:
|
||||
image: mysql/mysql-server:8.0
|
||||
|
@ -44,7 +62,7 @@ services:
|
|||
- MYSQL_PASSWORD=${MIXPOST_MYSQL_PASSWORD}
|
||||
- MYSQL_DATABASE=mixpost
|
||||
healthcheck:
|
||||
test: ['CMD', 'mysqladmin', 'ping', '-p ${MIXPOST_MYSQL_PASSWORD}']
|
||||
test: ["CMD", "mysqladmin", "ping", "-p ${MIXPOST_MYSQL_PASSWORD}"]
|
||||
retries: 3
|
||||
timeout: 5s
|
||||
volumes:
|
||||
|
@ -53,13 +71,13 @@ services:
|
|||
- tipi_main_network
|
||||
|
||||
mixpost-pro-redis:
|
||||
image: 'redis:latest'
|
||||
image: "redis:latest"
|
||||
container_name: mixpost-pro-redis
|
||||
command: redis-server --appendonly yes --replica-read-only no --requirepass "${MIXPOST_REDIS_PASSWORD}"
|
||||
volumes:
|
||||
- '${APP_DATA_DIR}/data/redis:/data'
|
||||
- "${APP_DATA_DIR}/data/redis:/data"
|
||||
healthcheck:
|
||||
test: ['CMD', 'redis-cli', 'ping']
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
retries: 3
|
||||
timeout: 5s
|
||||
networks:
|
||||
|
|
|
@ -5,18 +5,14 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mixpost",
|
||||
"tipi_version": 3,
|
||||
"tipi_version": 4,
|
||||
"version": "1.2.0",
|
||||
"categories": [
|
||||
"social"
|
||||
],
|
||||
"categories": ["social"],
|
||||
"description": "Mixpost it's the coolest Self-hosted social media management software.",
|
||||
"short_desc": "Self-hosted social media management. Schedule and organize your social content. ",
|
||||
"author": "Inovector",
|
||||
"source": "https://github.com/inovector/mixpost",
|
||||
"supported_architectures": [
|
||||
"amd64"
|
||||
],
|
||||
"supported_architectures": ["amd64"],
|
||||
"form_fields": [
|
||||
{
|
||||
"type": "random",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '3.7'
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
mixpost:
|
||||
|
@ -27,12 +27,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mixpost-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mixpost.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.mixpost-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-insecure.entrypoints: web
|
||||
traefik.http.routers.mixpost-insecure.service: mixpost
|
||||
traefik.http.routers.mixpost-insecure.middlewares: mixpost-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mixpost.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mixpost.entrypoints: websecure
|
||||
traefik.http.routers.mixpost.service: mixpost
|
||||
traefik.http.routers.mixpost.tls.certresolver: myresolver
|
||||
traefik.http.services.mixpost.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.mixpost-local-insecure.rule: Host(`mixpost.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mixpost-local-insecure.service: mixpost
|
||||
traefik.http.routers.mixpost-local-insecure.middlewares: mixpost-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mixpost-local.rule: Host(`mixpost.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mixpost-local.entrypoints: websecure
|
||||
traefik.http.routers.mixpost-local.service: mixpost
|
||||
traefik.http.routers.mixpost-local.tls: true
|
||||
|
||||
mixpost-mysql:
|
||||
image: mysql/mysql-server:8.0
|
||||
|
@ -44,7 +62,7 @@ services:
|
|||
- MYSQL_PASSWORD=${MIXPOST_MYSQL_PASSWORD}
|
||||
- MYSQL_DATABASE=mixpost
|
||||
healthcheck:
|
||||
test: ['CMD', 'mysqladmin', 'ping', '-p ${MIXPOST_MYSQL_PASSWORD}']
|
||||
test: ["CMD", "mysqladmin", "ping", "-p ${MIXPOST_MYSQL_PASSWORD}"]
|
||||
retries: 3
|
||||
timeout: 5s
|
||||
volumes:
|
||||
|
@ -53,12 +71,12 @@ services:
|
|||
- tipi_main_network
|
||||
|
||||
mixpost-redis:
|
||||
image: 'redis:latest'
|
||||
image: "redis:latest"
|
||||
command: redis-server --appendonly yes --replica-read-only no --requirepass "${MIXPOST_REDIS_PASSWORD}"
|
||||
volumes:
|
||||
- '${APP_DATA_DIR}/data/redis:/data'
|
||||
- "${APP_DATA_DIR}/data/redis:/data"
|
||||
healthcheck:
|
||||
test: ['CMD', 'redis-cli', 'ping']
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
retries: 3
|
||||
timeout: 5s
|
||||
networks:
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"exposable": true,
|
||||
"port": 31312,
|
||||
"id": "moneroblock",
|
||||
"tipi_version": 2,
|
||||
"tipi_version": 3,
|
||||
"version": "0.1.2",
|
||||
"categories": [
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["utilities"],
|
||||
"description": "MoneroBlock is a trustless block explorer for the Monero payment network.",
|
||||
"short_desc": "Decentralized and trustless Monero block explorer",
|
||||
"author": "duggavo",
|
||||
|
|
|
@ -12,9 +12,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.moneroblock-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.moneroblock.loadbalancer.server.port: 31312
|
||||
# Web
|
||||
traefik.http.routers.moneroblock-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.moneroblock-insecure.entrypoints: web
|
||||
traefik.http.routers.moneroblock-insecure.service: moneroblock
|
||||
traefik.http.routers.moneroblock-insecure.middlewares: moneroblock-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.moneroblock.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.moneroblock.entrypoints: websecure
|
||||
traefik.http.routers.moneroblock.service: moneroblock
|
||||
traefik.http.routers.moneroblock.tls.certresolver: myresolver
|
||||
traefik.http.services.moneroblock.loadbalancer.server.port: 31312
|
||||
# Local domain
|
||||
traefik.http.routers.moneroblock-local-insecure.rule: Host(`moneroblock.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.moneroblock-local-insecure.entrypoints: web
|
||||
traefik.http.routers.moneroblock-local-insecure.service: moneroblock
|
||||
traefik.http.routers.moneroblock-local-insecure.middlewares: moneroblock-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.moneroblock-local.rule: Host(`moneroblock.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.moneroblock-local.entrypoints: websecure
|
||||
traefik.http.routers.moneroblock-local.service: moneroblock
|
||||
traefik.http.routers.moneroblock-local.tls: true
|
||||
|
|
|
@ -6,11 +6,9 @@
|
|||
"no_gui": true,
|
||||
"port": 18080,
|
||||
"id": "monerod",
|
||||
"tipi_version": 6,
|
||||
"tipi_version": 7,
|
||||
"version": "0.18.2.2",
|
||||
"categories": [
|
||||
"finance"
|
||||
],
|
||||
"categories": ["finance"],
|
||||
"description": "A device on the Internet running the Monero software, with a full copy of the Monero blockchain, actively assisting the Monero network. This is a simple and straightforward Dockerized monerod built from source and exposing standard ports. Please note that running this requires >50GB of free disk space and is best run on solid-state (SSD) storage.",
|
||||
"short_desc": "Monero is a private, decentralized cryptocurrency that keeps your finances confidential and secure.",
|
||||
"author": "sethforprivacy",
|
||||
|
|
|
@ -21,9 +21,27 @@ services:
|
|||
--prune-blockchain
|
||||
--zmq-pub=tcp://0.0.0.0:18083
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.monerod-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.monerod.loadbalancer.server.port: 18089
|
||||
# Web
|
||||
traefik.http.routers.monerod-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.monerod-insecure.entrypoints: web
|
||||
traefik.http.routers.monerod-insecure.service: monerod
|
||||
traefik.http.routers.monerod-insecure.middlewares: monerod-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.monerod.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.monerod.entrypoints: websecure
|
||||
traefik.http.routers.monerod.service: monerod
|
||||
traefik.http.routers.monerod.tls.certresolver: myresolver
|
||||
traefik.http.services.monerod.loadbalancer.server.port: 18089
|
||||
# Local domain
|
||||
traefik.http.routers.monerod-local-insecure.rule: Host(`monerod.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.monerod-local-insecure.entrypoints: web
|
||||
traefik.http.routers.monerod-local-insecure.service: monerod
|
||||
traefik.http.routers.monerod-local-insecure.middlewares: monerod-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.monerod-local.rule: Host(`monerod.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.monerod-local.entrypoints: websecure
|
||||
traefik.http.routers.monerod-local.service: monerod
|
||||
traefik.http.routers.monerod-local.tls: true
|
||||
|
|
|
@ -5,16 +5,10 @@
|
|||
"exposable": true,
|
||||
"port": 3291,
|
||||
"id": "monica",
|
||||
"tipi_version": 1,
|
||||
"tipi_version": 2,
|
||||
"version": "4.0.0",
|
||||
"categories": [
|
||||
"data",
|
||||
"social"
|
||||
],
|
||||
"supported_architectures": [
|
||||
"amd64",
|
||||
"arm64"
|
||||
],
|
||||
"categories": ["data", "social"],
|
||||
"supported_architectures": ["amd64", "arm64"],
|
||||
"description": "Monica is an open-source web application to organize and record your interactions with your loved ones. We call it a PRM, or Personal Relationship Management. Think of it as a CRM (a popular tool used by sales teams in the corporate world) for your friends or family.",
|
||||
"short_desc": "A Personal Relationship Management tool to help you document your social life.",
|
||||
"author": "monicahq",
|
||||
|
|
|
@ -18,12 +18,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.monica-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.monica.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.monica-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.monica-insecure.entrypoints: web
|
||||
traefik.http.routers.monica-insecure.service: monica
|
||||
traefik.http.routers.monica-insecure.middlewares: monica-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.monica.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.monica.entrypoints: websecure
|
||||
traefik.http.routers.monica.service: monica
|
||||
traefik.http.routers.monica.tls.certresolver: myresolver
|
||||
traefik.http.services.monica.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.monica-local-insecure.rule: Host(`monica.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.monica-local-insecure.entrypoints: web
|
||||
traefik.http.routers.monica-local-insecure.service: monica
|
||||
traefik.http.routers.monica-local-insecure.middlewares: monica-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.monica-local.rule: Host(`monica.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.monica-local.entrypoints: websecure
|
||||
traefik.http.routers.monica-local.service: monica
|
||||
traefik.http.routers.monica-local.tls: true
|
||||
|
||||
monica-db:
|
||||
image: mariadb:10.6.11
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "movary",
|
||||
"tipi_version": 8,
|
||||
"tipi_version": 9,
|
||||
"version": "0.54.0",
|
||||
"categories": [
|
||||
"media"
|
||||
],
|
||||
"categories": ["media"],
|
||||
"description": "Movary is a self-hosted web application to track and rate your watched movies (like a digital movie diary). You can import/export your history and ratings from/to third parties like trakt.tv or letterboxd.com, scrobble your watches via Plex and Jellyfin and more.",
|
||||
"short_desc": "Movary is a self-hosted web application to track and rate your watched movies. ",
|
||||
"author": "leepeuker",
|
||||
|
|
|
@ -24,12 +24,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.movary-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.movary.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.movary-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.movary-insecure.entrypoints: web
|
||||
traefik.http.routers.movary-insecure.service: movary
|
||||
traefik.http.routers.movary-insecure.middlewares: movary-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.movary.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.movary.entrypoints: websecure
|
||||
traefik.http.routers.movary.service: movary
|
||||
traefik.http.routers.movary.tls.certresolver: myresolver
|
||||
traefik.http.services.movary.loadbalancer.server.port: 80
|
||||
# Local domain
|
||||
traefik.http.routers.movary-local-insecure.rule: Host(`movary.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.movary-local-insecure.entrypoints: web
|
||||
traefik.http.routers.movary-local-insecure.service: movary
|
||||
traefik.http.routers.movary-local-insecure.middlewares: movary-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.movary-local.rule: Host(`movary.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.movary-local.entrypoints: websecure
|
||||
traefik.http.routers.movary-local.service: movary
|
||||
traefik.http.routers.movary-local.tls: true
|
||||
|
||||
movary-db:
|
||||
image: linuxserver/mariadb:latest
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mstream",
|
||||
"tipi_version": 1,
|
||||
"tipi_version": 2,
|
||||
"version": "v5.11.4-ls101",
|
||||
"categories": ["music", "media"],
|
||||
"description": "mStream is a personal music streaming server. You can use mStream to stream your music from your home computer to any device, anywhere.",
|
||||
|
|
|
@ -17,10 +17,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mstream-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mstream.loadbalancer.server.port: 3000
|
||||
# Web
|
||||
traefik.http.routers.mstream-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mstream-insecure.entrypoints: web
|
||||
traefik.http.routers.mstream-insecure.service: mstream
|
||||
traefik.http.routers.mstream-insecure.middlewares: mstream-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mstream.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mstream.entrypoints: websecure
|
||||
traefik.http.routers.mstream.service: mstream
|
||||
traefik.http.routers.mstream.tls.certresolver: myresolver
|
||||
traefik.http.services.mstream.loadbalancer.server.port: 3000
|
||||
|
||||
# Local domain
|
||||
traefik.http.routers.mstream-local-insecure.rule: Host(`mstream.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mstream-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mstream-local-insecure.service: mstream
|
||||
traefik.http.routers.mstream-local-insecure.middlewares: mstream-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mstream-local.rule: Host(`mstream.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mstream-local.entrypoints: websecure
|
||||
traefik.http.routers.mstream-local.service: mstream
|
||||
traefik.http.routers.mstream-local.tls: true
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "mylar3",
|
||||
"tipi_version": 1,
|
||||
"tipi_version": 2,
|
||||
"version": "v0.7.1-ls84",
|
||||
"categories": ["media"],
|
||||
"description": "Mylar3 is an automated Comic Book downloader (cbr/cbz) for use with NZB and torrents written in python.",
|
||||
|
|
|
@ -9,7 +9,7 @@ services:
|
|||
volumes:
|
||||
- ${APP_DATA_DIR}/data/mylar3-config:/config
|
||||
- ${ROOT_FOLDER_HOST}/media/data/comics:/comics
|
||||
- ${ROOT_FOLDER_HOST}/media/downloads/mylar3:/downloads
|
||||
- ${ROOT_FOLDER_HOST}/media/downloads/mylar3:/downloads
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
|
@ -18,9 +18,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.mylar3-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.mylar3.loadbalancer.server.port: 8090
|
||||
# Web
|
||||
traefik.http.routers.mylar3-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mylar3-insecure.entrypoints: web
|
||||
traefik.http.routers.mylar3-insecure.service: mylar3
|
||||
traefik.http.routers.mylar3-insecure.middlewares: mylar3-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.mylar3.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.mylar3.entrypoints: websecure
|
||||
traefik.http.routers.mylar3.service: mylar3
|
||||
traefik.http.routers.mylar3.tls.certresolver: myresolver
|
||||
traefik.http.services.mylar3.loadbalancer.server.port: 8090
|
||||
# Local domain
|
||||
traefik.http.routers.mylar3-local-insecure.rule: Host(`mylar3.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mylar3-local-insecure.entrypoints: web
|
||||
traefik.http.routers.mylar3-local-insecure.service: mylar3
|
||||
traefik.http.routers.mylar3-local-insecure.middlewares: mylar3-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.mylar3-local.rule: Host(`mylar3.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.mylar3-local.entrypoints: websecure
|
||||
traefik.http.routers.mylar3-local.service: mylar3
|
||||
traefik.http.routers.mylar3-local.tls: true
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"exposable": true,
|
||||
"port": 8094,
|
||||
"id": "n8n",
|
||||
"tipi_version": 14,
|
||||
"tipi_version": 15,
|
||||
"version": "0.232.0",
|
||||
"categories": [
|
||||
"automation"
|
||||
],
|
||||
"categories": ["automation"],
|
||||
"description": "n8n is an extendable workflow automation tool. With a fair-code distribution model, n8n will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. n8n's node-based approach makes it highly versatile, enabling you to connect anything to everything.",
|
||||
"short_desc": "Workflow Automation Tool. Alternative to Zapier",
|
||||
"author": "n8n.io",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '3.7'
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
n8n:
|
||||
|
@ -23,12 +23,30 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.n8n-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.n8n.loadbalancer.server.port: 5678
|
||||
# Web
|
||||
traefik.http.routers.n8n-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.n8n-insecure.entrypoints: web
|
||||
traefik.http.routers.n8n-insecure.service: n8n
|
||||
traefik.http.routers.n8n-insecure.middlewares: n8n-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.n8n.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.n8n.entrypoints: websecure
|
||||
traefik.http.routers.n8n.service: n8n
|
||||
traefik.http.routers.n8n.tls.certresolver: myresolver
|
||||
traefik.http.services.n8n.loadbalancer.server.port: 5678
|
||||
# Local domain
|
||||
traefik.http.routers.n8n-local-insecure.rule: Host(`n8n.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.n8n-local-insecure.entrypoints: web
|
||||
traefik.http.routers.n8n-local-insecure.service: n8n
|
||||
traefik.http.routers.n8n-local-insecure.middlewares: n8n-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.n8n-local.rule: Host(`n8n.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.n8n-local.entrypoints: websecure
|
||||
traefik.http.routers.n8n-local.service: n8n
|
||||
traefik.http.routers.n8n-local.tls: true
|
||||
|
||||
db-n8n:
|
||||
container_name: db-n8n
|
||||
|
|
|
@ -5,12 +5,9 @@
|
|||
"exposable": true,
|
||||
"id": "navidrome",
|
||||
"description": "Modern Music Server and Streamer compatible with Subsonic/Airsonic",
|
||||
"tipi_version": 4,
|
||||
"tipi_version": 5,
|
||||
"version": "0.49.3",
|
||||
"categories": [
|
||||
"media",
|
||||
"music"
|
||||
],
|
||||
"categories": ["media", "music"],
|
||||
"short_desc": "A selfhosted music server",
|
||||
"author": "https://github.com/Bvoxl",
|
||||
"source": "https://github.com/navidrome/navidrome/",
|
||||
|
|
|
@ -8,18 +8,36 @@ services:
|
|||
restart: unless-stopped
|
||||
environment:
|
||||
ND_SCANSCHEDULE: 1h
|
||||
ND_LOGLEVEL: info
|
||||
ND_LOGLEVEL: info
|
||||
ND_SESSIONTIMEOUT: 24h
|
||||
ND_BASEURL: ""
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/navidrome/data:/data
|
||||
- ${ROOT_FOLDER_HOST}/media/data/music:/music:ro
|
||||
- ${ROOT_FOLDER_HOST}/media/data/music:/music:ro
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.navidrome-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.navidrome.loadbalancer.server.port: 4533
|
||||
# Web
|
||||
traefik.http.routers.navidrome-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.navidrome-insecure.entrypoints: web
|
||||
traefik.http.routers.navidrome-insecure.service: navidrome
|
||||
traefik.http.routers.navidrome-insecure.middlewares: navidrome-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.navidrome.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.navidrome.entrypoints: websecure
|
||||
traefik.http.routers.navidrome.service: navidrome
|
||||
traefik.http.routers.navidrome.tls.certresolver: myresolver
|
||||
traefik.http.services.navidrome.loadbalancer.server.port: 4533
|
||||
# Local domain
|
||||
traefik.http.routers.navidrome-local-insecure.rule: Host(`navidrome.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.navidrome-local-insecure.entrypoints: web
|
||||
traefik.http.routers.navidrome-local-insecure.service: navidrome
|
||||
traefik.http.routers.navidrome-local-insecure.middlewares: navidrome-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.navidrome-local.rule: Host(`navidrome.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.navidrome-local.entrypoints: websecure
|
||||
traefik.http.routers.navidrome-local.service: navidrome
|
||||
traefik.http.routers.navidrome-local.tls: true
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"exposable": true,
|
||||
"port": 8106,
|
||||
"id": "nitter",
|
||||
"tipi_version": 2,
|
||||
"tipi_version": 3,
|
||||
"version": "latest",
|
||||
"categories": ["social"],
|
||||
"description": "A free and open source alternative Twitter front-end focused on privacy and performance.",
|
||||
|
|
|
@ -14,16 +14,42 @@ services:
|
|||
- nitter-redis
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost:8080"]
|
||||
test:
|
||||
[
|
||||
"CMD",
|
||||
"wget",
|
||||
"--no-verbose",
|
||||
"--tries=1",
|
||||
"--spider",
|
||||
"http://localhost:8080",
|
||||
]
|
||||
interval: 1m
|
||||
timeout: 3s
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.nitter-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.nitter.loadbalancer.server.port: 8080
|
||||
# Web
|
||||
traefik.http.routers.nitter-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nitter-insecure.entrypoints: web
|
||||
traefik.http.routers.nitter-insecure.service: nitter
|
||||
traefik.http.routers.nitter-insecure.middlewares: nitter-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.nitter.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nitter.entrypoints: websecure
|
||||
traefik.http.routers.nitter.service: nitter
|
||||
traefik.http.routers.nitter.tls.certresolver: myresolver
|
||||
traefik.http.services.nitter.loadbalancer.server.port: 8080
|
||||
# Local domain
|
||||
traefik.http.routers.nitter-local-insecure.rule: Host(`nitter.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nitter-local-insecure.entrypoints: web
|
||||
traefik.http.routers.nitter-local-insecure.service: nitter
|
||||
traefik.http.routers.nitter-local-insecure.middlewares: nitter-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.nitter-local.rule: Host(`nitter.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nitter-local.entrypoints: websecure
|
||||
traefik.http.routers.nitter-local.service: nitter
|
||||
traefik.http.routers.nitter-local.tls: true
|
||||
|
||||
nitter-redis:
|
||||
image: redis:alpine
|
||||
|
@ -33,4 +59,4 @@ services:
|
|||
command: redis-server --save 60 1 --loglevel warning
|
||||
volumes:
|
||||
- "${APP_DATA_DIR}/data/redis:/data"
|
||||
restart: unless-stopped
|
||||
restart: unless-stopped
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "nocodb",
|
||||
"tipi_version": 10,
|
||||
"tipi_version": 11,
|
||||
"version": "0.108.1",
|
||||
"categories": [
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["utilities"],
|
||||
"description": "The Open Source Airtable Alternative. Turns any MySQL, PostgreSQL, SQL Server, SQLite & MariaDB into a smart-spreadsheet.",
|
||||
"short_desc": "Open Source Airtable Alternative",
|
||||
"author": "https://github.com/nocodb",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '2.1'
|
||||
version: "2.1"
|
||||
|
||||
services:
|
||||
nocodb:
|
||||
|
@ -11,21 +11,39 @@ services:
|
|||
- NC_PUBLIC_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
|
||||
- NC_AUTH_JWT_SECRET=${NOCODB_JWT_SECRET}
|
||||
- NC_REDIS_URL=redis://default:${NOCODB_REDIS_PASSWORD}@nocodb-redis:6379
|
||||
image: 'nocodb/nocodb:0.108.1'
|
||||
image: "nocodb/nocodb:0.108.1"
|
||||
ports:
|
||||
- '${APP_PORT}:8080'
|
||||
- "${APP_PORT}:8080"
|
||||
restart: always
|
||||
volumes:
|
||||
- '${APP_DATA_DIR}/data/nocode-data:/usr/app/data'
|
||||
- "${APP_DATA_DIR}/data/nocode-data:/usr/app/data"
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.nocodb-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.nocodb.loadbalancer.server.port: 8080
|
||||
# Web
|
||||
traefik.http.routers.nocodb-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nocodb-insecure.entrypoints: web
|
||||
traefik.http.routers.nocodb-insecure.service: nocodb
|
||||
traefik.http.routers.nocodb-insecure.middlewares: nocodb-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.nocodb.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nocodb.entrypoints: websecure
|
||||
traefik.http.routers.nocodb.service: nocodb
|
||||
traefik.http.routers.nocodb.tls.certresolver: myresolver
|
||||
traefik.http.services.nocodb.loadbalancer.server.port: 8080
|
||||
# Local domain
|
||||
traefik.http.routers.nocodb-local-insecure.rule: Host(`nocodb.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nocodb-local-insecure.entrypoints: web
|
||||
traefik.http.routers.nocodb-local-insecure.service: nocodb
|
||||
traefik.http.routers.nocodb-local-insecure.middlewares: nocodb-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.nocodb-local.rule: Host(`nocodb.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nocodb-local.entrypoints: websecure
|
||||
traefik.http.routers.nocodb-local.service: nocodb
|
||||
traefik.http.routers.nocodb-local.tls: true
|
||||
|
||||
nocodb-db:
|
||||
container_name: nocodb-db
|
||||
|
@ -49,11 +67,11 @@ services:
|
|||
image: redis:alpine
|
||||
container_name: nocodb-redis
|
||||
restart: unless-stopped
|
||||
command: 'redis-server --requirepass ${NOCODB_REDIS_PASSWORD}'
|
||||
command: "redis-server --requirepass ${NOCODB_REDIS_PASSWORD}"
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/data/redis:/data
|
||||
healthcheck:
|
||||
test: ['CMD', 'redis-cli', 'ping']
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 1s
|
||||
timeout: 3s
|
||||
retries: 30
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "nodered",
|
||||
"tipi_version": 3,
|
||||
"tipi_version": 4,
|
||||
"version": "3.0.2",
|
||||
"categories": ["automation"],
|
||||
"description": "Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.",
|
||||
|
|
|
@ -12,9 +12,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.nodered-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.nodered.loadbalancer.server.port: 1880
|
||||
# Web
|
||||
traefik.http.routers.nodered-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nodered-insecure.entrypoints: web
|
||||
traefik.http.routers.nodered-insecure.service: nodered
|
||||
traefik.http.routers.nodered-insecure.middlewares: nodered-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.nodered.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.nodered.entrypoints: websecure
|
||||
traefik.http.routers.nodered.service: nodered
|
||||
traefik.http.routers.nodered.tls.certresolver: myresolver
|
||||
traefik.http.services.nodered.loadbalancer.server.port: 1880
|
||||
# Local domain
|
||||
traefik.http.routers.nodered-local-insecure.rule: Host(`nodered.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nodered-local-insecure.entrypoints: web
|
||||
traefik.http.routers.nodered-local-insecure.service: nodered
|
||||
traefik.http.routers.nodered-local-insecure.middlewares: nodered-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.nodered-local.rule: Host(`nodered.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.nodered-local.entrypoints: websecure
|
||||
traefik.http.routers.nodered-local.service: nodered
|
||||
traefik.http.routers.nodered-local.tls: true
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "onedev",
|
||||
"tipi_version": 22,
|
||||
"tipi_version": 23,
|
||||
"version": "8.3.8",
|
||||
"categories": [
|
||||
"development"
|
||||
],
|
||||
"categories": ["development"],
|
||||
"description": "Self-hosted Git Server with Kanban and CI/CD",
|
||||
"short_desc": "Self-hosted Git Server with Kanban and CI/CD",
|
||||
"author": "https://code.onedev.io/",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version: '3.7'
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
onedev:
|
||||
|
@ -20,18 +20,36 @@ services:
|
|||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
ports:
|
||||
- ${APP_PORT}:6610
|
||||
- '6611:6611'
|
||||
- "6611:6611"
|
||||
depends_on:
|
||||
- onedev-db
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.onedev-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.onedev.loadbalancer.server.port: 6610
|
||||
# Web
|
||||
traefik.http.routers.onedev-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.onedev-insecure.entrypoints: web
|
||||
traefik.http.routers.onedev-insecure.service: onedev
|
||||
traefik.http.routers.onedev-insecure.middlewares: onedev-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.onedev.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.onedev.entrypoints: websecure
|
||||
traefik.http.routers.onedev.service: onedev
|
||||
traefik.http.routers.onedev.tls.certresolver: myresolver
|
||||
traefik.http.services.onedev.loadbalancer.server.port: 6610
|
||||
# Local domain
|
||||
traefik.http.routers.onedev-local-insecure.rule: Host(`onedev.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.onedev-local-insecure.entrypoints: web
|
||||
traefik.http.routers.onedev-local-insecure.service: onedev
|
||||
traefik.http.routers.onedev-local-insecure.middlewares: onedev-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.onedev-local.rule: Host(`onedev.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.onedev-local.entrypoints: websecure
|
||||
traefik.http.routers.onedev-local.service: onedev
|
||||
traefik.http.routers.onedev-local.tls: true
|
||||
|
||||
onedev-db:
|
||||
container_name: onedev-db
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "openbooks",
|
||||
"tipi_version": 2,
|
||||
"tipi_version": 3,
|
||||
"url_suffix": "/openbooks/",
|
||||
"version": "v4.5.0",
|
||||
"categories": ["media", "books"],
|
||||
|
|
|
@ -1,22 +1,40 @@
|
|||
version: '3'
|
||||
version: "3"
|
||||
|
||||
services:
|
||||
openbooks:
|
||||
container_name: openbooks
|
||||
image: evanbuss/openbooks:4.5.0
|
||||
command: './openbooks server --dir /books --port 80 --persist --name ${OPENBOOKS_IRC_USERNAME}'
|
||||
command: "./openbooks server --dir /books --port 80 --persist --name ${OPENBOOKS_IRC_USERNAME}"
|
||||
ports:
|
||||
- ${APP_PORT}:80
|
||||
volumes:
|
||||
- ${ROOT_FOLDER_HOST}/media/data/books/:/books
|
||||
environment:
|
||||
- BASE_PATH=/openbooks/
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.openbooks-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.openbooks.loadbalancer.server.port: 80
|
||||
# Web
|
||||
traefik.http.routers.openbooks-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.openbooks-insecure.entrypoints: web
|
||||
traefik.http.routers.openbooks-insecure.service: openbooks
|
||||
traefik.http.routers.openbooks-insecure.middlewares: openbooks-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.openbooks.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.openbooks.entrypoints: websecure
|
||||
traefik.http.routers.openbooks.service: openbooks
|
||||
traefik.http.routers.openbooks.tls.certresolver: myresolver
|
||||
traefik.http.services.openbooks.loadbalancer.server.port: 80
|
||||
networks:
|
||||
- tipi_main_network
|
||||
# Local domain
|
||||
traefik.http.routers.openbooks-local-insecure.rule: Host(`openbooks.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.openbooks-local-insecure.entrypoints: web
|
||||
traefik.http.routers.openbooks-local-insecure.service: openbooks
|
||||
traefik.http.routers.openbooks-local-insecure.middlewares: openbooks-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.openbooks-local.rule: Host(`openbooks.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.openbooks-local.entrypoints: websecure
|
||||
traefik.http.routers.openbooks-local.service: openbooks
|
||||
traefik.http.routers.openbooks-local.tls: true
|
||||
|
|
|
@ -5,12 +5,9 @@
|
|||
"exposable": true,
|
||||
"port": 8116,
|
||||
"id": "overseerr",
|
||||
"tipi_version": 4,
|
||||
"tipi_version": 5,
|
||||
"version": "1.32.5",
|
||||
"categories": [
|
||||
"media",
|
||||
"utilities"
|
||||
],
|
||||
"categories": ["media", "utilities"],
|
||||
"description": "Overseerr is a free and open source software application for managing requests for your media library. It integrates with your existing services, such as Sonarr, Radarr, and Plex!",
|
||||
"short_desc": "Request management and media discovery tool for the Plex ecosystem",
|
||||
"author": "sct",
|
||||
|
|
|
@ -15,9 +15,27 @@ services:
|
|||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.overseerr-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.overseerr.loadbalancer.server.port: 5055
|
||||
# Web
|
||||
traefik.http.routers.overseerr-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.overseerr-insecure.entrypoints: web
|
||||
traefik.http.routers.overseerr-insecure.service: overseerr
|
||||
traefik.http.routers.overseerr-insecure.middlewares: overseerr-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.overseerr.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.overseerr.entrypoints: websecure
|
||||
traefik.http.routers.overseerr.service: overseerr
|
||||
traefik.http.routers.overseerr.tls.certresolver: myresolver
|
||||
traefik.http.services.overseerr.loadbalancer.server.port: 5055
|
||||
# Local domain
|
||||
traefik.http.routers.overseerr-local-insecure.rule: Host(`overseerr.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.overseerr-local-insecure.entrypoints: web
|
||||
traefik.http.routers.overseerr-local-insecure.service: overseerr
|
||||
traefik.http.routers.overseerr-local-insecure.middlewares: overseerr-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.overseerr-local.rule: Host(`overseerr.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.overseerr-local.entrypoints: websecure
|
||||
traefik.http.routers.overseerr-local.service: overseerr
|
||||
traefik.http.routers.overseerr-local.tls: true
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "owncloud",
|
||||
"tipi_version": 4,
|
||||
"tipi_version": 5,
|
||||
"version": "10.12.2",
|
||||
"categories": [
|
||||
"data"
|
||||
],
|
||||
"categories": ["data"],
|
||||
"description": "ownCloud gives you freedom and control over your own data. A personal cloud which runs on your own server. ",
|
||||
"short_desc": "A personal cloud which runs on your own server. ",
|
||||
"author": "https://github.com/owncloud",
|
||||
|
|
|
@ -29,16 +29,34 @@ services:
|
|||
timeout: 10s
|
||||
retries: 5
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/data/owncloud:/mnt/data
|
||||
- ${APP_DATA_DIR}/data/owncloud:/mnt/data
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.owncloud-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.owncloud.loadbalancer.server.port: 8080
|
||||
# Web
|
||||
traefik.http.routers.owncloud-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.owncloud-insecure.entrypoints: web
|
||||
traefik.http.routers.owncloud-insecure.service: owncloud
|
||||
traefik.http.routers.owncloud-insecure.middlewares: owncloud-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.owncloud.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.owncloud.entrypoints: websecure
|
||||
traefik.http.routers.owncloud.service: owncloud
|
||||
traefik.http.routers.owncloud.tls.certresolver: myresolver
|
||||
traefik.http.services.owncloud.loadbalancer.server.port: 8080
|
||||
# Local domain
|
||||
traefik.http.routers.owncloud-local-insecure.rule: Host(`owncloud.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.owncloud-local-insecure.entrypoints: web
|
||||
traefik.http.routers.owncloud-local-insecure.service: owncloud
|
||||
traefik.http.routers.owncloud-local-insecure.middlewares: owncloud-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.owncloud-local.rule: Host(`owncloud.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.owncloud-local.entrypoints: websecure
|
||||
traefik.http.routers.owncloud-local.service: owncloud
|
||||
traefik.http.routers.owncloud-local.tls: true
|
||||
|
||||
owncloud-db:
|
||||
image: mariadb:10.6 # minimum required ownCloud version is 10.9
|
||||
|
@ -51,7 +69,15 @@ services:
|
|||
- MYSQL_DATABASE=owncloud
|
||||
command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=${OWNCLOUD_DB_PASSWORD}"]
|
||||
test:
|
||||
[
|
||||
"CMD",
|
||||
"mysqladmin",
|
||||
"ping",
|
||||
"-u",
|
||||
"root",
|
||||
"--password=${OWNCLOUD_DB_PASSWORD}",
|
||||
]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
|
Loading…
Reference in New Issue
Block a user