env changes, new services
This commit is contained in:
parent
0045db906a
commit
4550a7e3c2
11
.env
Normal file
11
.env
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# Base directory for docker-compose
|
||||||
|
DOCKER_DIR=/docker
|
||||||
|
|
||||||
|
# Directory for env files
|
||||||
|
ENV_DIR=/docker/env
|
||||||
|
|
||||||
|
# The IP of this server in the tailscale network
|
||||||
|
DNS_IP=100.111.0.126
|
||||||
|
|
||||||
|
# Time zone
|
||||||
|
TZ=America/Chicago
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
|||||||
*
|
*
|
||||||
!docker-compose.yml
|
!docker-compose.yml
|
||||||
|
!.env
|
||||||
!readme.md
|
!readme.md
|
||||||
|
@ -16,8 +16,8 @@ services:
|
|||||||
- /media/audiobooks:/audiobooks
|
- /media/audiobooks:/audiobooks
|
||||||
- /media/audiobooks-pt:/audiobooks-pt
|
- /media/audiobooks-pt:/audiobooks-pt
|
||||||
- /media/podcasts:/podcasts
|
- /media/podcasts:/podcasts
|
||||||
- /docker/audiobookshelf/config:/config
|
- ${DOCKER_DIR}/audiobookshelf/config:/config
|
||||||
- /docker/audiobookshelf/metadata:/metadata
|
- ${DOCKER_DIR}/audiobookshelf/metadata:/metadata
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -36,14 +36,14 @@ services:
|
|||||||
image: crocodilestick/calibre-web-automated:latest
|
image: crocodilestick/calibre-web-automated:latest
|
||||||
container_name: calibre-web
|
container_name: calibre-web
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=100
|
- PGID=100
|
||||||
- TZ=America/Chicago
|
|
||||||
- DOCKER_MODS=lscr.io/linuxserver/mods:universal-calibre-v7.16.0
|
- DOCKER_MODS=lscr.io/linuxserver/mods:universal-calibre-v7.16.0
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/calibre/config:/config
|
- ${DOCKER_DIR}/calibre/config:/config
|
||||||
- /docker/calibre/ingest:/cwa-book-ingest
|
- ${DOCKER_DIR}/calibre/ingest:/cwa-book-ingest
|
||||||
- /docker/calibre/books:/calibre-library
|
- ${DOCKER_DIR}/calibre/books:/calibre-library
|
||||||
ports:
|
ports:
|
||||||
- 8083:8083
|
- 8083:8083
|
||||||
dns:
|
dns:
|
||||||
@ -56,9 +56,9 @@ services:
|
|||||||
image: ghcr.io/immich-app/immich-server:v1.129.0
|
image: ghcr.io/immich-app/immich-server:v1.129.0
|
||||||
volumes:
|
volumes:
|
||||||
- /media/immich:/usr/src/app/upload
|
- /media/immich:/usr/src/app/upload
|
||||||
- /docker/immich_db_dump:/db_dump
|
- ${DOCKER_DIR}/immich_db_dump:/db_dump
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/immich.env
|
- ${ENV_DIR}/immich.env
|
||||||
environment:
|
environment:
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
@ -78,7 +78,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- model-cache:/cache
|
- model-cache:/cache
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/immich.env
|
- ${ENV_DIR}/immich.env
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
redis:
|
redis:
|
||||||
container_name: immich_redis
|
container_name: immich_redis
|
||||||
@ -88,23 +88,62 @@ services:
|
|||||||
container_name: immich_postgres
|
container_name: immich_postgres
|
||||||
image: tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
|
image: tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/immich.env
|
- ${ENV_DIR}/immich.env
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/immich:/var/lib/postgresql/data
|
- ${DOCKER_DIR}/immich:/var/lib/postgresql/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
# ## Invidious (youtube client)
|
||||||
|
# invidious:
|
||||||
|
# image: quay.io/invidious/invidious:latest
|
||||||
|
# container_name: invidious
|
||||||
|
# ports:
|
||||||
|
# - 9080:3000
|
||||||
|
# env_file:
|
||||||
|
# - ${ENV_DIR}/invidious.env
|
||||||
|
# depends_on:
|
||||||
|
# - invidious-db
|
||||||
|
# - sighelper
|
||||||
|
# restart: unless-stopped
|
||||||
|
# sighelper:
|
||||||
|
# image: quay.io/invidious/inv-sig-helper:latest
|
||||||
|
# container_name: invidious-sighelper
|
||||||
|
# init: true
|
||||||
|
# command: ["--tcp", "0.0.0.0:12999"]
|
||||||
|
# ports:
|
||||||
|
# - 12999:12999
|
||||||
|
# environment:
|
||||||
|
# - ${TZ}
|
||||||
|
# - RUST_LOG=info
|
||||||
|
# cap_drop:
|
||||||
|
# - ALL
|
||||||
|
# read_only: true
|
||||||
|
# security_opt:
|
||||||
|
# - no-new-privileges:true
|
||||||
|
# restart: unless-stopped
|
||||||
|
# invidious-db:
|
||||||
|
# image: docker.io/library/postgres:14
|
||||||
|
# container_name: invidious-db
|
||||||
|
# volumes:
|
||||||
|
# - ${DOCKER_DIR}/invidious/data:/var/lib/postgresql/data
|
||||||
|
# - ${DOCKER_DIR}/invidious/config/sql:/config/sql
|
||||||
|
# - ${DOCKER_DIR}/invidious/docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
|
||||||
|
# env_file:
|
||||||
|
# - ${ENV_DIR}/invidious.env
|
||||||
|
# restart: unless-stopped
|
||||||
|
|
||||||
## Jellyfin (media server)
|
## Jellyfin (media server)
|
||||||
jellyfin:
|
jellyfin:
|
||||||
image: lscr.io/linuxserver/jellyfin:latest
|
image: lscr.io/linuxserver/jellyfin:latest
|
||||||
container_name: jellyfin
|
container_name: jellyfin
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
- JELLYFIN_PublishedServerUrl=https://watch.azpsen.com
|
- JELLYFIN_PublishedServerUrl=https://watch.azpsen.com
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/jellyfin:/config
|
- ${DOCKER_DIR}/jellyfin:/config
|
||||||
- /docker/jellyfin/theme:/usr/share/jellyfin/web/theme
|
- ${DOCKER_DIR}/jellyfin/theme:/usr/share/jellyfin/web/theme
|
||||||
- /media/jellyfin/Movies:/data/movies
|
- /media/jellyfin/Movies:/data/movies
|
||||||
- /media/jellyfin/TV Shows:/data/tvshows
|
- /media/jellyfin/TV Shows:/data/tvshows
|
||||||
- /media/jellyfin/Music:/data/music
|
- /media/jellyfin/Music:/data/music
|
||||||
@ -128,7 +167,7 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 5006:5006
|
- 5006:5006
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/actual:/data
|
- ${DOCKER_DIR}/actual:/data
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -139,8 +178,8 @@ services:
|
|||||||
container_name: gitea
|
container_name: gitea
|
||||||
user: "1001"
|
user: "1001"
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/gitea/data:/var/lib/gitea
|
- ${DOCKER_DIR}/gitea/data:/var/lib/gitea
|
||||||
- /docker/gitea/config:/etc/gitea
|
- ${DOCKER_DIR}/gitea/config:/etc/gitea
|
||||||
- /etc/timezone:/etc/timezone:ro
|
- /etc/timezone:/etc/timezone:ro
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
ports:
|
ports:
|
||||||
@ -155,11 +194,11 @@ services:
|
|||||||
container_name: grocy
|
container_name: grocy
|
||||||
image: lscr.io/linuxserver/grocy:latest
|
image: lscr.io/linuxserver/grocy:latest
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/grocy:/config
|
- ${DOCKER_DIR}/grocy:/config
|
||||||
ports:
|
ports:
|
||||||
- 9283:80
|
- 9283:80
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -173,30 +212,13 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 3000:80
|
- 3000:80
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/tinyhome:/config:rw
|
- ${DOCKER_DIR}/tinyhome:/config:rw
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Homepage (server dashboard)
|
|
||||||
homepage:
|
|
||||||
image: ghcr.io/gethomepage/homepage:latest
|
|
||||||
container_name: homepage
|
|
||||||
environment:
|
|
||||||
- PUID=1000
|
|
||||||
- PGID=1000
|
|
||||||
ports:
|
|
||||||
- 3001:3000
|
|
||||||
volumes:
|
|
||||||
- /docker/homepage:/app/config
|
|
||||||
- /docker/homepage/images:/app/public/images
|
|
||||||
- /docker/homepage/fonts:/app/public/fonts
|
|
||||||
- /media:/media:ro
|
|
||||||
dns:
|
|
||||||
- ${DNS_IP}
|
|
||||||
restart: unless-stopped
|
|
||||||
docker-proxy:
|
docker-proxy:
|
||||||
image: ghcr.io/tecnativa/docker-socket-proxy:latest
|
image: ghcr.io/tecnativa${DOCKER_DIR}-socket-proxy:latest
|
||||||
container_name: docker-proxy
|
container_name: docker-proxy
|
||||||
environment:
|
environment:
|
||||||
- CONTAINERS=1 # Allow access to viewing containers
|
- CONTAINERS=1 # Allow access to viewing containers
|
||||||
@ -204,58 +226,19 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 2375:2375
|
- 2375:2375
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- /var/run${DOCKER_DIR}.sock:/var/run${DOCKER_DIR}.sock:ro
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Joplin (notes)
|
## Dumbpad (simple notes)
|
||||||
joplin:
|
dumbpad:
|
||||||
image: joplin/server:latest
|
image: dumbwareio/dumbpad:latest
|
||||||
container_name: joplin
|
container_name: dumbpad
|
||||||
ports:
|
ports:
|
||||||
- 22300:22300
|
- 3007:3000
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/dumbpad:/app/data
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/joplin.env
|
- ${ENV_DIR}/dumbpad.env
|
||||||
depends_on:
|
|
||||||
- joplin-db
|
|
||||||
dns:
|
|
||||||
- ${DNS_IP}
|
|
||||||
restart: unless-stopped
|
|
||||||
joplin-db:
|
|
||||||
image: postgres:15
|
|
||||||
container_name: joplin-db
|
|
||||||
volumes:
|
|
||||||
- /docker/joplin:/var/lib/postgresql/data
|
|
||||||
ports:
|
|
||||||
- 5432:5432
|
|
||||||
environment:
|
|
||||||
- POSTGRES_PASSWORD=d8t3nmcj3
|
|
||||||
- POSTGRES_USER=april
|
|
||||||
- POSTGRES_DB=joplin
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
## Kiwix (offline wiki)
|
|
||||||
kiwix-serve:
|
|
||||||
image: ghcr.io/kiwix/kiwix-serve
|
|
||||||
container_name: kiwix-serve
|
|
||||||
volumes:
|
|
||||||
- /media/kiwix:/data
|
|
||||||
ports:
|
|
||||||
- 8765:8080
|
|
||||||
command: '*.zim'
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
## Link Stack
|
|
||||||
linkstack:
|
|
||||||
image: linkstackorg/linkstack
|
|
||||||
container_name: linkstack
|
|
||||||
env_file:
|
|
||||||
- /docker/env/linkstack.env
|
|
||||||
ports:
|
|
||||||
- 4000:80
|
|
||||||
dns:
|
|
||||||
- ${DNS_IP}
|
|
||||||
volumes:
|
|
||||||
- linkstack:/htdocs
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Hoarder (link aggregator)
|
## Hoarder (link aggregator)
|
||||||
@ -263,7 +246,7 @@ services:
|
|||||||
image: ghcr.io/hoarder-app/hoarder:release
|
image: ghcr.io/hoarder-app/hoarder:release
|
||||||
container_name: hoarder
|
container_name: hoarder
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/hoarder.env
|
- ${ENV_DIR}/hoarder.env
|
||||||
volumes:
|
volumes:
|
||||||
- hoarder:/data
|
- hoarder:/data
|
||||||
ports:
|
ports:
|
||||||
@ -292,7 +275,7 @@ services:
|
|||||||
image: getmeili/meilisearch:v1.11.1
|
image: getmeili/meilisearch:v1.11.1
|
||||||
container_name: meilisearch
|
container_name: meilisearch
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/hoarder.env
|
- ${ENV_DIR}/hoarder.env
|
||||||
ports:
|
ports:
|
||||||
- 7700:7700
|
- 7700:7700
|
||||||
environment:
|
environment:
|
||||||
@ -300,17 +283,98 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- meilisearch:/meili_data
|
- meilisearch:/meili_data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
## LLM for link tagging
|
|
||||||
ollama:
|
## Joplin (notes)
|
||||||
image: ollama/ollama
|
joplin:
|
||||||
container_name: ollama
|
image: joplin/server:latest
|
||||||
|
container_name: joplin
|
||||||
ports:
|
ports:
|
||||||
- 11434:11434
|
- 22300:22300
|
||||||
volumes:
|
env_file:
|
||||||
- /docker/ollama:/root/.ollama
|
- ${ENV_DIR}/joplin.env
|
||||||
|
depends_on:
|
||||||
|
- joplin-db
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
joplin-db:
|
||||||
|
image: postgres:15
|
||||||
|
container_name: joplin-db
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/joplin:/var/lib/postgresql/data
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
environment:
|
||||||
|
- POSTGRES_PASSWORD=d8t3nmcj3
|
||||||
|
- POSTGRES_USER=april
|
||||||
|
- POSTGRES_DB=joplin
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
## Kiwix (offline wiki)
|
||||||
|
kiwix-serve:
|
||||||
|
image: ghcr.io/kiwix/kiwix-serve
|
||||||
|
container_name: kiwix-serve
|
||||||
|
volumes:
|
||||||
|
- /media/kiwix:/data
|
||||||
|
ports:
|
||||||
|
- 8765:8080
|
||||||
|
command: '*.zim'
|
||||||
|
dns:
|
||||||
|
- ${DNS_IP}
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
## Link Stack
|
||||||
|
linkstack:
|
||||||
|
image: linkstackorg/linkstack
|
||||||
|
container_name: linkstack
|
||||||
|
env_file:
|
||||||
|
- ${ENV_DIR}/linkstack.env
|
||||||
|
ports:
|
||||||
|
- 4000:80
|
||||||
|
dns:
|
||||||
|
- ${DNS_IP}
|
||||||
|
volumes:
|
||||||
|
- linkstack:/htdocs
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
## LubeLogger (car mileage tracker)
|
||||||
|
lubelogger:
|
||||||
|
image: ghcr.io/hargata/lubelogger:latest
|
||||||
|
container_name: lubelogger
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/lubelogger/data:/App/data
|
||||||
|
- ${DOCKER_DIR}/lubelogger/keys:/root/.aspnet/DataProtection-Keys
|
||||||
|
ports:
|
||||||
|
- 8103:8080
|
||||||
|
env_file:
|
||||||
|
- ${ENV_DIR}/lubelogger.env
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
## Maloja (music listen tracking)
|
||||||
|
maloja:
|
||||||
|
image: krateng/maloja
|
||||||
|
container_name: maloja
|
||||||
|
ports:
|
||||||
|
- 42010:42010
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/maloja:/mljdata
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- MALOJA_DATA_DIRECTORY=/mljdata
|
||||||
|
dns:
|
||||||
|
- ${DNS_IP}
|
||||||
|
restart: unless-stopped
|
||||||
|
multi-scrobbler:
|
||||||
|
image: foxxmd/multi-scrobbler
|
||||||
|
container_name: multi-scrobbler
|
||||||
|
env_file:
|
||||||
|
- ${ENV_DIR}/multi-scrobbler.env
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/multi-scrobbler:/config
|
||||||
|
ports:
|
||||||
|
- 9078:9078
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
## Miniflux (rss feed reader)
|
## Miniflux (rss feed reader)
|
||||||
miniflux:
|
miniflux:
|
||||||
@ -322,7 +386,7 @@ services:
|
|||||||
rss_db:
|
rss_db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/miniflux.env
|
- ${ENV_DIR}/miniflux.env
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]
|
test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]
|
||||||
dns:
|
dns:
|
||||||
@ -332,7 +396,7 @@ services:
|
|||||||
image: postgres:15
|
image: postgres:15
|
||||||
container_name: rss_db
|
container_name: rss_db
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/miniflux.env
|
- ${ENV_DIR}/miniflux.env
|
||||||
volumes:
|
volumes:
|
||||||
- miniflux-db:/var/lib/postgresql/data
|
- miniflux-db:/var/lib/postgresql/data
|
||||||
healthcheck:
|
healthcheck:
|
||||||
@ -353,10 +417,10 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- paperless-data:/usr/src/paperless/data
|
- paperless-data:/usr/src/paperless/data
|
||||||
- paperless-media:/usr/src/paperless/media
|
- paperless-media:/usr/src/paperless/media
|
||||||
- /docker/paperless/export:/usr/src/paperless/export
|
- ${DOCKER_DIR}/paperless/export:/usr/src/paperless/export
|
||||||
- /docker/paperless/consume:/usr/src/paperless/consume
|
- ${DOCKER_DIR}/paperless/consume:/usr/src/paperless/consume
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/paperless.env
|
- ${ENV_DIR}/paperless.env
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
paperless_broker:
|
paperless_broker:
|
||||||
image: docker.io/library/redis:7
|
image: docker.io/library/redis:7
|
||||||
@ -365,17 +429,40 @@ services:
|
|||||||
- redis-data:/data
|
- redis-data:/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
## Stirling PDF (pdf utilities)
|
||||||
|
stirling-pdf:
|
||||||
|
container_name: stirling-pdf
|
||||||
|
image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest
|
||||||
|
ports:
|
||||||
|
- 8710:8080
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_DIR}/stirlingpdf/trainingData:/usr/share/tessdata
|
||||||
|
- ${DOCKER_DIR}/stirlingpdf/extraConfigs:/configs
|
||||||
|
- ${DOCKER_DIR}/stirlingpdf/customFiles:/customFiles/
|
||||||
|
- ${DOCKER_DIR}/stirlingpdf/logs:/logs/
|
||||||
|
- ${DOCKER_DIR}/stirlingpdf/pipeline:/pipeline/
|
||||||
|
environment:
|
||||||
|
- ${TZ}
|
||||||
|
- DOCKER_ENABLE_SECURITY=false
|
||||||
|
- LANGS=en_US
|
||||||
|
- DOCKER_ENABLE_SECURITY=true
|
||||||
|
- SECURITY_ENABLELOGIN=true
|
||||||
|
- SECURITY_CSRFDISABLED=false
|
||||||
|
- SECURITY_INITIALLOGIN_USERNAME=april
|
||||||
|
- SECURITY_INITIALLOGIN_PASSWORD="qYoK!FVom%bpg24Xd$@g"
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
## Tandoor (recipe management)
|
## Tandoor (recipe management)
|
||||||
tandoor:
|
tandoor:
|
||||||
container_name: tandoor
|
container_name: tandoor
|
||||||
image: vabene1111/recipes
|
image: vabene1111/recipes
|
||||||
user: 1000:1000
|
user: 1000:1000
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/tandoor.env
|
- ${ENV_DIR}/tandoor.env
|
||||||
volumes:
|
volumes:
|
||||||
- tandoor-server-config:/opt/recipes/nginx/conf.d
|
- tandoor-server-config:/opt/recipes/nginx/conf.d
|
||||||
- /docker/tandoor/static:/opt/recipes/staticfiles
|
- ${DOCKER_DIR}/tandoor/static:/opt/recipes/staticfiles
|
||||||
- /docker/tandoor/media:/opt/recipes/mediafiles
|
- ${DOCKER_DIR}/tandoor/media:/opt/recipes/mediafiles
|
||||||
depends_on:
|
depends_on:
|
||||||
- tandoor-db
|
- tandoor-db
|
||||||
dns:
|
dns:
|
||||||
@ -387,11 +474,11 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 8554:80
|
- 8554:80
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/tandoor.env
|
- ${ENV_DIR}/tandoor.env
|
||||||
volumes:
|
volumes:
|
||||||
- tandoor-server-config:/etc/nginx/conf.d:ro
|
- tandoor-server-config:/etc/nginx/conf.d:ro
|
||||||
- /docker/tandoor/static:/static:ro
|
- ${DOCKER_DIR}/tandoor/static:/static:ro
|
||||||
- /docker/tandoor/media:/media:ro
|
- ${DOCKER_DIR}/tandoor/media:/media:ro
|
||||||
depends_on:
|
depends_on:
|
||||||
- tandoor
|
- tandoor
|
||||||
dns:
|
dns:
|
||||||
@ -402,9 +489,9 @@ services:
|
|||||||
image: postgres:16-alpine
|
image: postgres:16-alpine
|
||||||
user: 1000:1000
|
user: 1000:1000
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/tandoor.env
|
- ${ENV_DIR}/tandoor.env
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/tandoor/postgresql:/var/lib/postgresql/data
|
- ${DOCKER_DIR}/tandoor/postgresql:/var/lib/postgresql/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Vaultwarden (password manager)
|
## Vaultwarden (password manager)
|
||||||
@ -412,9 +499,9 @@ services:
|
|||||||
image: vaultwarden/server:latest
|
image: vaultwarden/server:latest
|
||||||
container_name: vaultwarden
|
container_name: vaultwarden
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/vaultwarden.env
|
- ${ENV_DIR}/vaultwarden.env
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/vaultwarden:/data
|
- ${DOCKER_DIR}/vaultwarden:/data
|
||||||
ports:
|
ports:
|
||||||
- 8912:80
|
- 8912:80
|
||||||
dns:
|
dns:
|
||||||
@ -428,7 +515,7 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 5690:5690
|
- 5690:5690
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/wizarr/database:/data/database
|
- ${DOCKER_DIR}/wizarr/database:/data/database
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -441,7 +528,7 @@ services:
|
|||||||
container_name: dozzle
|
container_name: dozzle
|
||||||
image: amir20/dozzle:latest
|
image: amir20/dozzle:latest
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- /var/run${DOCKER_DIR}.sock:/var/run${DOCKER_DIR}.sock:ro
|
||||||
ports:
|
ports:
|
||||||
- 9999:8080
|
- 9999:8080
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -452,7 +539,7 @@ services:
|
|||||||
container_name: glances
|
container_name: glances
|
||||||
pid: host
|
pid: host
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run${DOCKER_DIR}.sock:/var/run${DOCKER_DIR}.sock
|
||||||
- /:/glances/root:ro
|
- /:/glances/root:ro
|
||||||
environment:
|
environment:
|
||||||
- "GLANCES_OPT=-w"
|
- "GLANCES_OPT=-w"
|
||||||
@ -470,7 +557,7 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 9090:9090
|
- 9090:9090
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- /var/run${DOCKER_DIR}.sock:/var/run${DOCKER_DIR}.sock:ro
|
||||||
- /:/hostroot:ro
|
- /:/hostroot:ro
|
||||||
environment:
|
environment:
|
||||||
- SI=false
|
- SI=false
|
||||||
@ -487,8 +574,8 @@ services:
|
|||||||
- 8086:8086
|
- 8086:8086
|
||||||
volumes:
|
volumes:
|
||||||
- /run/udev:/run/udev:ro
|
- /run/udev:/run/udev:ro
|
||||||
- /docker/scrutiny/config:/opt/scrutiny/config
|
- ${DOCKER_DIR}/scrutiny/config:/opt/scrutiny/config
|
||||||
- /docker/scrutiny/influxdb:/opt/scrutiny/influxdb
|
- ${DOCKER_DIR}/scrutiny/influxdb:/opt/scrutiny/influxdb
|
||||||
devices:
|
devices:
|
||||||
- /dev/sda:/dev/sda
|
- /dev/sda:/dev/sda
|
||||||
- /dev/sdb:/dev/sdb
|
- /dev/sdb:/dev/sdb
|
||||||
@ -504,9 +591,9 @@ services:
|
|||||||
- 8465:80
|
- 8465:80
|
||||||
- 8466:443
|
- 8466:443
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/speedtest.env
|
- ${ENV_DIR}/speedtest.env
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/speedtest-tracker:/config
|
- ${DOCKER_DIR}/speedtest-tracker:/config
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -520,8 +607,8 @@ services:
|
|||||||
container_name: adguard
|
container_name: adguard
|
||||||
network_mode: host
|
network_mode: host
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/adguard/working:/opt/adguardhome/work
|
- ${DOCKER_DIR}/adguard/working:/opt/adguardhome/work
|
||||||
- /docker/adguard/conf:/opt/adguardhome/conf
|
- ${DOCKER_DIR}/adguard/conf:/opt/adguardhome/conf
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Cloudflared (tunnel service for outside web access)
|
## Cloudflared (tunnel service for outside web access)
|
||||||
@ -530,10 +617,10 @@ services:
|
|||||||
image: cloudflare/cloudflared:latest
|
image: cloudflare/cloudflared:latest
|
||||||
network_mode: host
|
network_mode: host
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/cloudflared:/etc/cloudflared
|
- ${DOCKER_DIR}/cloudflared:/etc/cloudflared
|
||||||
command: tunnel --no-autoupdate run
|
command: tunnel --no-autoupdate run
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/cloudflared.env
|
- ${ENV_DIR}/cloudflared.env
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Gluetun (vpn connector)
|
## Gluetun (vpn connector)
|
||||||
@ -558,12 +645,12 @@ services:
|
|||||||
- 8989:8989 # Radarr
|
- 8989:8989 # Radarr
|
||||||
- 7878:7878 # Sonarr
|
- 7878:7878 # Sonarr
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/gluetun:/gluetun
|
- ${DOCKER_DIR}/gluetun:/gluetun
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
devices:
|
devices:
|
||||||
- /dev/net/tun:/dev/net/tun
|
- /dev/net/tun:/dev/net/tun
|
||||||
env_file:
|
env_file:
|
||||||
- /docker/env/gluetun.env
|
- ${ENV_DIR}/gluetun.env
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
|
||||||
@ -578,7 +665,7 @@ services:
|
|||||||
- pgid=1000
|
- pgid=1000
|
||||||
- tz=america/chicago
|
- tz=america/chicago
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/bazarr:/config
|
- ${DOCKER_DIR}/bazarr:/config
|
||||||
- /media/jellyfin/movies:/movies
|
- /media/jellyfin/movies:/movies
|
||||||
- /media/jellyfin/tv shows:/tv
|
- /media/jellyfin/tv shows:/tv
|
||||||
ports:
|
ports:
|
||||||
@ -598,7 +685,7 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 8085:8084
|
- 8085:8084
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/calibre/ingest:/cwa-book-ingest
|
- ${DOCKER_DIR}/calibre/ingest:/cwa-book-ingest
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -619,7 +706,7 @@ services:
|
|||||||
- 8087:80
|
- 8087:80
|
||||||
volumes:
|
volumes:
|
||||||
# This works because calibre-web-automated fails to import .tmp files
|
# This works because calibre-web-automated fails to import .tmp files
|
||||||
- /docker/calibre/ingest/:/books
|
- ${DOCKER_DIR}/calibre/ingest/:/books
|
||||||
dns:
|
dns:
|
||||||
- ${DNS_IP}
|
- ${DNS_IP}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -630,11 +717,11 @@ services:
|
|||||||
container_name: prowlarr
|
container_name: prowlarr
|
||||||
network_mode: "service:gluetun"
|
network_mode: "service:gluetun"
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/prowlarr:/config
|
- ${DOCKER_DIR}/prowlarr:/config
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## QBittorrent (torrent client)
|
## QBittorrent (torrent client)
|
||||||
@ -643,13 +730,13 @@ services:
|
|||||||
container_name: qbittorrent
|
container_name: qbittorrent
|
||||||
network_mode: "service:gluetun"
|
network_mode: "service:gluetun"
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
- WEBUI_PORT=8080
|
- WEBUI_PORT=8080
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/qbittorrent/config:/config
|
- ${DOCKER_DIR}/qbittorrent/config:/config
|
||||||
- /docker/qbittorrent/downloads:/downloads
|
- ${DOCKER_DIR}/qbittorrent/downloads:/downloads
|
||||||
- /media/downloads:/ext_dl
|
- /media/downloads:/ext_dl
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
@ -659,13 +746,13 @@ services:
|
|||||||
container_name: radarr
|
container_name: radarr
|
||||||
network_mode: "service:gluetun"
|
network_mode: "service:gluetun"
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/radarr:/config
|
- ${DOCKER_DIR}/radarr:/config
|
||||||
- /media/jellyfin/Movies:/Movies #optional
|
- /media/jellyfin/Movies:/Movies #optional
|
||||||
- /docker/qbittorrent/downloads:/downloads #optional
|
- ${DOCKER_DIR}/qbittorrent/downloads:/downloads #optional
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
## Sonarr (tv show downloading)
|
## Sonarr (tv show downloading)
|
||||||
@ -674,16 +761,16 @@ services:
|
|||||||
container_name: sonarr
|
container_name: sonarr
|
||||||
network_mode: "service:gluetun"
|
network_mode: "service:gluetun"
|
||||||
environment:
|
environment:
|
||||||
|
- ${TZ}
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Chicago
|
|
||||||
- DOCKER_MODS=ghcr.io/gilbn/theme.park:sonarr
|
- DOCKER_MODS=ghcr.io/gilbn/theme.park:sonarr
|
||||||
- TP_ADDON=sonarr-darker
|
- TP_ADDON=sonarr-darker
|
||||||
- TP_THEME=dark
|
- TP_THEME=dark
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/sonarr:/config
|
- ${DOCKER_DIR}/sonarr:/config
|
||||||
- /media/jellyfin/TV Shows:/TV Shows
|
- /media/jellyfin/TV Shows:/TV Shows
|
||||||
- /docker/qbittorrent/downloads:/downloads
|
- ${DOCKER_DIR}/qbittorrent/downloads:/downloads
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
|
||||||
@ -691,7 +778,7 @@ services:
|
|||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
glances_password:
|
glances_password:
|
||||||
file: /docker/secrets/glances_password
|
file: ${DOCKER_DIR}/secrets/glances_password
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
hoarder:
|
hoarder:
|
||||||
|
@ -31,21 +31,24 @@ These are all the services hosted, what they are for, and any clients I use with
|
|||||||
|
|
||||||
- [Actual Budget](https://actualbudget.org/) - Excellent budgeting app. It can be automatically synced with your bank ([SimpleFIN Bridge](https://beta-bridge.simplefin.org/) for US banks, $15/year), but I have found that to be unstable
|
- [Actual Budget](https://actualbudget.org/) - Excellent budgeting app. It can be automatically synced with your bank ([SimpleFIN Bridge](https://beta-bridge.simplefin.org/) for US banks, $15/year), but I have found that to be unstable
|
||||||
- There used to be an official app but it has been discontinued - I added the website to my phone's home screen and it works quite well
|
- There used to be an official app but it has been discontinued - I added the website to my phone's home screen and it works quite well
|
||||||
|
- [DumbPad](https://github.com/DumbWareio/DumbPad) - Stupid simple notes app (for grocery lists, quick notes, etc.)
|
||||||
- [Gitea](https://about.gitea.com/) - Git server - in the process of replacing my GitHub account
|
- [Gitea](https://about.gitea.com/) - Git server - in the process of replacing my GitHub account
|
||||||
- [Grocy](https://github.com/grocy/grocy) - Household management (Am I out of milk? Do I have AAA batteries? What can I make for dinner?)
|
- [Grocy](https://github.com/grocy/grocy) - Household management (Am I out of milk? Do I have AAA batteries? What can I make for dinner?)
|
||||||
- [iOS Client](https://apps.apple.com/us/app/grocy-mobile/id1567803209)
|
- [iOS Client](https://apps.apple.com/us/app/grocy-mobile/id1567803209)
|
||||||
- [Hoarder](https://hoarder.app/) - Bookmark tool for links, pictures, notes, etc. with AI tagging
|
- [Hoarder](https://hoarder.app/) - Bookmark tool for links, pictures, notes, etc. with AI tagging
|
||||||
- The official app seems to work well
|
- The official app seems to work well
|
||||||
- [Tinyhome](https://github.com/bderenzo/tinyhome) - Static new tab page set up with links to all my server stuff
|
|
||||||
- [Joplin](https://joplinapp.org/) - Notes (Obsidian alternative)
|
- [Joplin](https://joplinapp.org/) - Notes (Obsidian alternative)
|
||||||
- [Kiwix](https://kiwix.org/en/) - Offline wiki hosting - I have Wikipedia, the Arch Linux wiki, and several others downloaded
|
- [Kiwix](https://kiwix.org/en/) - Offline wiki hosting - I have Wikipedia, the Arch Linux wiki, and several others downloaded
|
||||||
- [LinkStack](https://linkstack.org/) - Self-hosted LinkTree alternative ([azpsen.com](https://azpsen.com)) - more for content creators, definitely overkill for what I need. I'll probably replace it with a simple static site at some point
|
- [LinkStack](https://linkstack.org/) - Self-hosted LinkTree alternative ([azpsen.com](https://azpsen.com)) - more for content creators, definitely overkill for what I need. I'll probably replace it with a simple static site at some point
|
||||||
|
- [Maloja](https://github.com/krateng/maloja) - Self-hosted music listen tracker (last.fm replacement) - with [multi-scrobbler](https://github.com/FoxxMD/multi-scrobbler) for Jellyfin support
|
||||||
- [Miniflux](https://miniflux.app/) - Minimalist RSS feed reader
|
- [Miniflux](https://miniflux.app/) - Minimalist RSS feed reader
|
||||||
- [NetNewsWire](https://netnewswire.com/) - Wonderful all-purpose iOS RSS client
|
- [NetNewsWire](https://netnewswire.com/) - Wonderful all-purpose iOS RSS client
|
||||||
- [Paperless-ngx](https://docs.paperless-ngx.com/) - Document management system for legal documents, IDs, bank statements, etc.
|
- [Paperless-ngx](https://docs.paperless-ngx.com/) - Document management system for legal documents, IDs, bank statements, etc.
|
||||||
- [Swift Paperless](https://github.com/paulgessinger/swift-paperless) - iOS client
|
- [Swift Paperless](https://github.com/paulgessinger/swift-paperless) - iOS client
|
||||||
|
- [Stirling PDF](https://www.stirlingpdf.com/) - PDF tools for viewing, editing, converting, and everything else
|
||||||
- [Tandoor](https://tandoor.dev/) - Recipe management, so I always know which zucchine muffin recipe is the good one
|
- [Tandoor](https://tandoor.dev/) - Recipe management, so I always know which zucchine muffin recipe is the good one
|
||||||
- [Untare](https://github.com/phantomate/Untare) - Mobile client (discontinued but it still works for now)
|
- [Untare](https://github.com/phantomate/Untare) - Mobile client (discontinued but it still works for now)
|
||||||
|
- [Tinyhome](https://github.com/bderenzo/tinyhome) - Static new tab page set up with links to all my server stuff
|
||||||
- [vaultwarden](https://github.com/dani-garcia/vaultwarden) - Password manager
|
- [vaultwarden](https://github.com/dani-garcia/vaultwarden) - Password manager
|
||||||
- [Bitwarden clients](https://bitwarden.com/download/)
|
- [Bitwarden clients](https://bitwarden.com/download/)
|
||||||
- [Wizarr](https://github.com/Wizarrrr/wizarr?tab=readme-ov-file) - Jellyfin user invite manager
|
- [Wizarr](https://github.com/Wizarrrr/wizarr?tab=readme-ov-file) - Jellyfin user invite manager
|
||||||
|
Loading…
x
Reference in New Issue
Block a user