Compare commits
23 Commits
3e27cafc07
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| a9234426f3 | |||
| 7605047dbd | |||
| eca85225be | |||
| 36274d84f3 | |||
| c890837a79 | |||
| d92fb7629d | |||
| d397d5506d | |||
| e24e04cd36 | |||
| c5239726d5 | |||
| ab3fcb0725 | |||
| 6e38098427 | |||
| 77e42c352f | |||
| 686fff045b | |||
| 7732ed22a7 | |||
| 92e399ddac | |||
| 325e7c6246 | |||
| 3856a76a75 | |||
| bfc06e2206 | |||
| 0b61143bc9 | |||
| daa0adfd4f | |||
| dcea8e6afe | |||
| 5e87919766 | |||
| abaf169941 |
@@ -6,10 +6,8 @@ services:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
- APPRISE_ATTACH_SIZE=0 #optional
|
||||
volumes:
|
||||
- /home/fejy/docker/apprise-api/config:/config
|
||||
- /home/fejy/docker/apprise-api/attachments:/attachments #optional
|
||||
ports:
|
||||
- 8006:8000
|
||||
restart: unless-stopped
|
||||
@@ -19,8 +17,8 @@ services:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.apprise.rule=Host(`apprise.nearfuture`)"
|
||||
- "traefik.http.routers.apprise.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
|
||||
105
arr/compose.yml
Normal file
105
arr/compose.yml
Normal file
@@ -0,0 +1,105 @@
|
||||
services:
|
||||
prowlarr:
|
||||
image: lscr.io/linuxserver/prowlarr:latest
|
||||
container_name: prowlarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/prowlarr/data:/config
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.prowlarr.rule=Host(`prowlarr.nearfuture`)"
|
||||
- "traefik.http.routers.prowlarr.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
radarr:
|
||||
image: lscr.io/linuxserver/radarr:latest
|
||||
container_name: radarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
ports:
|
||||
- "7878:7878"
|
||||
volumes:
|
||||
- /home/fejy/docker/radarr:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
- /mnt/AVARITIA/Share:/Avaritia/Share
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.radarr.rule=Host(`radarr.nearfuture`)"
|
||||
- "traefik.http.routers.radarr.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
sonarr:
|
||||
image: lscr.io/linuxserver/sonarr:latest
|
||||
container_name: sonarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
ports:
|
||||
- "8989:8989"
|
||||
volumes:
|
||||
- /home/fejy/docker/sonarr:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
- /mnt/AVARITIA/Share:/Avaritia/Share
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.sonarr.rule=Host(`sonarr.nearfuture`)"
|
||||
- "traefik.http.routers.sonarr.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
lidarr:
|
||||
image: lscr.io/linuxserver/lidarr:latest
|
||||
container_name: lidarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/lidarr:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
- /mnt/AVARITIA/Share:/Avaritia/Share
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.lidarr.rule=Host(`lidarr.nearfuture`)"
|
||||
- "traefik.http.routers.lidarr.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
seerr:
|
||||
image: ghcr.io/seerr-team/seerr:latest
|
||||
container_name: seerr
|
||||
environment:
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/overseerr:/app/config
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.overseerr.rule=Host(`overseerr.nearfuture`)"
|
||||
- "traefik.http.routers.overseerr.entrypoints=web"
|
||||
- "traefik.http.routers.overseerr-ssl.rule=Host(`overseerr.nearfuture`)"
|
||||
- "traefik.http.routers.overseerr-ssl.entrypoints=websecure"
|
||||
- "traefik.http.routers.overseerr-ssl.tls=true"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
89
authentik/compose.yml
Normal file
89
authentik/compose.yml
Normal file
@@ -0,0 +1,89 @@
|
||||
services:
|
||||
postgresql:
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
POSTGRES_DB: ${PG_DB:-authentik}
|
||||
POSTGRES_PASSWORD: ${PG_PASS:?database password required}
|
||||
POSTGRES_USER: ${PG_USER:-authentik}
|
||||
healthcheck:
|
||||
interval: 30s
|
||||
retries: 5
|
||||
start_period: 20s
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
|
||||
timeout: 5s
|
||||
image: docker.io/library/postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /home/fejy/docker/authentik/database:/var/lib/postgresql/data
|
||||
networks:
|
||||
- authentik
|
||||
|
||||
authentik-server:
|
||||
command: server
|
||||
depends_on:
|
||||
postgresql:
|
||||
condition: service_healthy
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
AUTHENTIK_POSTGRESQL__HOST: postgresql
|
||||
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
|
||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2-rc2}
|
||||
container_name: authentik-server
|
||||
restart: unless-stopped
|
||||
shm_size: 512mb
|
||||
volumes:
|
||||
- /home/fejy/docker/authentik/data:/data
|
||||
- /home/fejy/docker/authentik/custom-templates:/templates
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=proxy"
|
||||
- "traefik.http.routers.https-auth.entryPoints=websecure"
|
||||
- "traefik.http.routers.https-auth.rule=Host(`auth.nearfuture.industries`) || HostRegexp(`{subdomain:[a-z0-9-]+}.nearfuture.industries`) && PathPrefix(`/outpost.goauthentik.io/`)"
|
||||
- "traefik.http.routers.https-auth.tls=true"
|
||||
- "traefik.http.routers.https-auth.tls.certresolver=myresolver"
|
||||
- "traefik.http.routers.https-auth.priority=50"
|
||||
- "traefik.http.routers.https-auth.service=https-auth"
|
||||
- "traefik.http.services.https-auth.loadbalancer.server.port=9000"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
networks:
|
||||
- proxy
|
||||
- authentik
|
||||
|
||||
worker:
|
||||
command: worker
|
||||
depends_on:
|
||||
postgresql:
|
||||
condition: service_healthy
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
AUTHENTIK_POSTGRESQL__HOST: postgresql
|
||||
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
|
||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2-rc2}
|
||||
restart: unless-stopped
|
||||
shm_size: 512mb
|
||||
user: root
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/fejy/docker/authentik/data:/data
|
||||
- /home/fejy/docker/authentik/certs:/certs
|
||||
- /home/fejy/docker/authentik/custom-templates:/templates
|
||||
labels:
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
networks:
|
||||
- authentik
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
authentik:
|
||||
@@ -3,8 +3,6 @@ services:
|
||||
image: ghcr.io/cross-seed/cross-seed:6
|
||||
container_name: cross-seed
|
||||
user: 1029:1000 # this must match your torrent client (cross-seed does not support using PGID and PUID)
|
||||
ports:
|
||||
- "2468:2468"
|
||||
volumes:
|
||||
- /home/fejy/docker/cross-seed:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
@@ -16,12 +14,12 @@ services:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.cross-seed.rule=Host(`cross-seed.nearfuture`)"
|
||||
- "traefik.http.routers.cross-seed.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
cross-seed2:
|
||||
image: ghcr.io/cross-seed/cross-seed:6
|
||||
container_name: cross-seed2
|
||||
user: 1029:1000 # this must match your torrent client (cross-seed does not support using PGID and PUID)
|
||||
ports:
|
||||
- "2469:2468"
|
||||
volumes:
|
||||
- /home/fejy/docker/cross-seed2:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
@@ -33,9 +31,42 @@ services:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.cross-seed2.rule=Host(`cross-seed2.nearfuture`)"
|
||||
- "traefik.http.routers.cross-seed2.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
cross-seed3:
|
||||
image: ghcr.io/cross-seed/cross-seed:6
|
||||
container_name: cross-seed3
|
||||
user: 1029:1000 # this must match your torrent client (cross-seed does not support using PGID and PUID)
|
||||
volumes:
|
||||
- /home/fejy/docker/cross-seed3:/config
|
||||
- /mnt/AVARITIA/Share:/Avaritia/Share/
|
||||
command: daemon
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.cross-seed3.rule=Host(`cross-seed3.nearfuture`)"
|
||||
- "traefik.http.routers.cross-seed3.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
cross-seed-priv:
|
||||
image: ghcr.io/cross-seed/cross-seed:6
|
||||
container_name: cross-seed-priv
|
||||
user: 1029:1000 # this must match your torrent client (cross-seed does not support using PGID and PUID)
|
||||
volumes:
|
||||
- /home/fejy/docker/cross-seed-priv:/config
|
||||
- /mnt/LUXURIA/Private:/mnt/LUXURIA/Private
|
||||
command: daemon
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.cross-seed-priv.rule=Host(`cross-seed-priv.nearfuture`)"
|
||||
- "traefik.http.routers.cross-seed-priv.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
|
||||
24
dozzle/compose.yml
Normal file
24
dozzle/compose.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
services:
|
||||
dozzle:
|
||||
image: amir20/dozzle:latest
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/fejy/docker/dozzle_data:/data
|
||||
environment:
|
||||
- DOZZLE_ENABLE_ACTIONS=true
|
||||
- DOZZLE_AUTH_PROVIDER=forward-proxy
|
||||
- DOZZLE_AUTH_HEADER_USER=X-Authentik-Email
|
||||
- DOZZLE_AUTH_HEADER_EMAIL=X-Authentik-Name
|
||||
- DOZZLE_AUTH_HEADER_NAME=X-Authentik-Username
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.dozzle.rule=Host(`dozzle.nearfuture`)"
|
||||
- "traefik.http.routers.dozzle.entrypoints=web"
|
||||
- "traefik.http.routers.dozzle.middlewares=authentik@file"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
28
ersatztv/compose.yml
Normal file
28
ersatztv/compose.yml
Normal file
@@ -0,0 +1,28 @@
|
||||
services:
|
||||
ersatztv:
|
||||
image: ghcr.io/ersatztv/ersatztv
|
||||
container_name: ersatztv
|
||||
ports:
|
||||
- "8409:8409"
|
||||
environment:
|
||||
- TZ=America/New_York
|
||||
volumes:
|
||||
- /home/fejy/docker/ersatztv/config:/config
|
||||
# Required: media directories - Where your media files are stored. Use :ro at the end of the path to limit container to Read-Only
|
||||
- /mnt/LUXURIA/Share/Videos:/mnt/LUXURIA/Share/Videos:ro
|
||||
- /mnt/AVARITIA/Share/Videos:/mnt/AVARITIA/Share/Videos:ro
|
||||
# tmpfs is optional but recommended: Limits writing to SSD/disk by using RAM for transcode files. Comment out to disable
|
||||
tmpfs:
|
||||
- /transcode
|
||||
restart: unless-stopped
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.tv.entrypoints=web"
|
||||
- "traefik.http.routers.tv.rule=Host(`tv.nearfuture`)"
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
@@ -5,16 +5,22 @@ services:
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
ports:
|
||||
- "3030:80"
|
||||
restart: on-failure
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.excalidraw.rule=Host(`excalidraw.nearfuture`)"
|
||||
- "traefik.http.routers.excalidraw.entrypoints=web"
|
||||
|
||||
- "traefik.http.routers.ex.rule=Host(`excalidraw.nearfuture`)"
|
||||
- "traefik.http.routers.ex.entrypoints=web"
|
||||
- "traefik.http.routers.ex-ssl.rule=Host(`excalidraw.nearfuture`)"
|
||||
- "traefik.http.routers.ex-ssl.entrypoints=websecure"
|
||||
- "traefik.http.routers.ex-ssl.tls=true"
|
||||
- "traefik.http.routers.ex-ssl-ext.rule=Host(`excalidraw.nearfuture.industries`)"
|
||||
- "traefik.http.routers.ex-ssl-ext.entrypoints=websecure"
|
||||
- "traefik.http.routers.ex-ssl-ext.tls=true"
|
||||
- "traefik.http.routers.ex-ssl-ext.tls.certresolver=myresolver"
|
||||
- "traefik.http.routers.ex-ssl-ext.middlewares=authentik@file"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
services:
|
||||
browser:
|
||||
image: lscr.io/linuxserver/firefox:latest
|
||||
container_name: firefox
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=America/New_York
|
||||
- HTTP_PROXY=http://localhost:8888 # Set the HTTP proxy to Gluetun
|
||||
- HTTPS_PROXY=http://localhost:8888 # Set the HTTPS proxy to Gluetun
|
||||
network_mode: "container:gluetun"
|
||||
shm_size: "1gb"
|
||||
volumes:
|
||||
- /home/fejy/docker/firefox/config:/config:rw
|
||||
- /home/fejy/docker/firefox/downloads:/downloads:rw
|
||||
restart: unless-stopped
|
||||
@@ -4,14 +4,13 @@ services:
|
||||
container_name: homepage
|
||||
env_file: ".env"
|
||||
environment:
|
||||
PUID: 1029 # optional, your user id
|
||||
PGID: 994 # optional, your group id
|
||||
ports:
|
||||
- 3069:3000
|
||||
PUID: 1029
|
||||
PGID: 988
|
||||
HOMEPAGE_ALLOWED_HOSTS: home.nearfuture
|
||||
volumes:
|
||||
- /home/fejy/docker/homepage/config:/app/config
|
||||
- /home/fejy/docker/homepage/icons:/app/public/icons
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro # optional, for docker integrations
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
@@ -19,6 +18,7 @@ services:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.homepage.rule=Host(`home.nearfuture`)"
|
||||
- "traefik.http.routers.homepage.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
|
||||
34
matrix-bots/compose.yml
Normal file
34
matrix-bots/compose.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
services:
|
||||
matrix-registration-bot:
|
||||
image: moanos/matrix-registration-bot:latest
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
LOGGING_LEVEL: DEBUG
|
||||
BOT_SERVER: "https://nearfuture.industries"
|
||||
BOT_USERNAME: "registration-bot"
|
||||
BOT_PASSWORD: ${BOT_PW}
|
||||
API_BASE_URL: 'https://synapse.nearfuture.industries'
|
||||
API_TOKEN: ${API_TOK}
|
||||
volumes:
|
||||
- /home/fejy/docker/matrix-bots/matrix-registration-bot/:/data/
|
||||
|
||||
maubot:
|
||||
image: dock.mau.dev/maubot/maubot
|
||||
container_name: maubot
|
||||
volumes:
|
||||
- /home/fejy/docker/matrix-bots/maubot/:/data:z
|
||||
environment:
|
||||
R34_API_KEY: ${R34_API_KEY}
|
||||
R34_UID: ${R34_UID}
|
||||
networks:
|
||||
- proxy
|
||||
restart: unless-stopped
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.maubot.rule=Host(`maubot.nearfuture`)"
|
||||
- "traefik.http.routers.maubot.entrypoints=web"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
46
netbootxyz/compose.yml
Normal file
46
netbootxyz/compose.yml
Normal file
@@ -0,0 +1,46 @@
|
||||
services:
|
||||
netbootxyz:
|
||||
image: ghcr.io/netbootxyz/netbootxyz
|
||||
container_name: netbootxyz
|
||||
hostname: netbootxyz
|
||||
environment:
|
||||
- NGINX_PORT=80
|
||||
- WEB_APP_PORT=3000
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /home/fejy/docker/netbootxyz/config:/config
|
||||
- /home/fejy/docker/netbootxyz/assets:/assets
|
||||
ports:
|
||||
- 69:69/udp
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:3000"]
|
||||
interval: 2s
|
||||
timeout: 2s
|
||||
retries: 10
|
||||
start_period: 3s
|
||||
networks:
|
||||
- proxy
|
||||
- netbootxyz
|
||||
labels:
|
||||
# web configuration interface
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.netbootxyz.entrypoints=web"
|
||||
- "traefik.http.routers.netbootxyz.rule=Host(`netbootxyz.nearfuture`)"
|
||||
- "traefik.http.routers.netbootxyz.service=netbootxyz"
|
||||
- "traefik.http.services.netbootxyz.loadbalancer.server.port=3000"
|
||||
- "traefik.http.services.netbootxyz.loadbalancer.passhostheader=true"
|
||||
- "traefik.docker.network=proxy"
|
||||
# NGINX server for hosting assets
|
||||
- "traefik.http.routers.netboot-assets.entrypoints=web"
|
||||
- "traefik.http.routers.netboot-assets.rule=Host(`netboot-assets.nearfuture`)"
|
||||
- "traefik.http.routers.netboot-assets.service=netboot-assets"
|
||||
- "traefik.http.services.netboot-assets.loadbalancer.server.port=80"
|
||||
- "traefik.http.services.netboot-assets.loadbalancer.passhostheader=true"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
name: proxy
|
||||
external: true
|
||||
netbootxyz:
|
||||
name: netbootxyz
|
||||
@@ -1,27 +0,0 @@
|
||||
services:
|
||||
overseerr:
|
||||
image: lscr.io/linuxserver/overseerr:latest
|
||||
container_name: overseerr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/overseerr:/config
|
||||
ports:
|
||||
- 5055:5055
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.overseerr.rule=Host(`overseerr.nearfuture`)"
|
||||
- "traefik.http.routers.overseerr.entrypoints=web"
|
||||
- "traefik.http.routers.overseerr-ssl.rule=Host(`overseerr.nearfuture`)"
|
||||
- "traefik.http.routers.overseerr-ssl.entrypoints=websecure"
|
||||
- "traefik.http.routers.overseerr-ssl.tls=true"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
20
pinchflat/compose.yml
Normal file
20
pinchflat/compose.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
services:
|
||||
pinchflat:
|
||||
image: ghcr.io/kieraneglin/pinchflat:latest
|
||||
container_name: pinchflat
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=America/New_York
|
||||
volumes:
|
||||
- /home/fejy/docker/pinchflat/config:/config
|
||||
- /mnt/AVARITIA/Share/Videos/:/downloads
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.pinchflat.entrypoints=web"
|
||||
- "traefik.http.routers.pinchflat.rule=Host(`pinchflat.nearfuture`)"
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
@@ -2,34 +2,33 @@ services:
|
||||
gluetun:
|
||||
image: qmcgaw/gluetun
|
||||
container_name: gluetun
|
||||
# line above must be uncommented to allow external containers to connect.
|
||||
# See https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md#external-container-to-gluetun
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
devices:
|
||||
- /dev/net/tun:/dev/net/tun
|
||||
ports:
|
||||
- 8000:8000/tcp # Gluetun's built-in HTTP control server
|
||||
- 8888:8888/tcp # Gluetun's built-in HTTP proxy
|
||||
- 8388:8388/tcp # Gluetun's built-in Shadowsocks server
|
||||
- 8388:8388/udp # Gluetun's built-in Shadowsocks server
|
||||
- 8089:8089/tcp # Qbittorrent web-ui
|
||||
- 8090:8090/tcp # Qbittorrent2 web-gui
|
||||
- 8091:8091/tcp # Qbittorrent3 web-gui
|
||||
- 8069:8069/tcp # Qbittorrent_priv web-gui
|
||||
- 3000:3000 # Firefox desktop gui
|
||||
- 3001:3001 # Firefox desktop gui HTTPS
|
||||
- 5010:5010/tcp # Mousehole
|
||||
volumes:
|
||||
- /home/fejy/docker/gluetun:/gluetun
|
||||
environment:
|
||||
# See https://github.com/qdm12/gluetun-wiki/tree/main/setup#setup
|
||||
- VPN_SERVICE_PROVIDER=mullvad
|
||||
- VPN_SERVICE_PROVIDER=airvpn
|
||||
- VPN_TYPE=wireguard
|
||||
- FIREWALL_VPN_INPUT_PORTS=${qbit_portfw}
|
||||
# Wireguard:
|
||||
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIV_KEY}
|
||||
- WIREGUARD_PRESHARED_KEY=${WIREGUARD_PSHARE_KEY}
|
||||
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDR}
|
||||
- SERVER_CITIES=Amsterdam
|
||||
- SERVER_CITIES=Alblasserdam
|
||||
- HTTP_CONTROL_SERVER_ADDRESS=:8000
|
||||
- HTTP_CONTROL_SERVER_LOG=ON
|
||||
- DOT=off
|
||||
- BLOCK_MALICIOUS=off
|
||||
- BLOCK_SURVEILLANCE=off
|
||||
- BLOCK_ADS=off
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
@@ -37,6 +36,11 @@ services:
|
||||
# Traefik
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=proxy"
|
||||
# Gluetun
|
||||
- "traefik.http.routers.gluetun.rule=Host(`gluetun.nearfuture`)"
|
||||
- "traefik.http.routers.gluetun.entrypoints=web"
|
||||
- "traefik.http.routers.gluetun.service=gluetun"
|
||||
- "traefik.http.services.gluetun.loadbalancer.server.port=8000"
|
||||
# Qbittorrent
|
||||
- "traefik.http.routers.qbit.rule=Host(`qbit.nearfuture`)"
|
||||
- "traefik.http.routers.qbit.entrypoints=web"
|
||||
@@ -47,14 +51,26 @@ services:
|
||||
- "traefik.http.routers.qbit2.entrypoints=web"
|
||||
- "traefik.http.routers.qbit2.service=qbit2"
|
||||
- "traefik.http.services.qbit2.loadbalancer.server.port=8090"
|
||||
# Qbittorrent3
|
||||
- "traefik.http.routers.qbit3.rule=Host(`qbit3.nearfuture`)"
|
||||
- "traefik.http.routers.qbit3.entrypoints=web"
|
||||
- "traefik.http.routers.qbit3.service=qbit3"
|
||||
- "traefik.http.services.qbit3.loadbalancer.server.port=8091"
|
||||
# Qbittorrent-priv
|
||||
- "traefik.http.routers.qbit-priv.rule=Host(`qbit-priv.nearfuture`)"
|
||||
- "traefik.http.routers.qbit-priv.entrypoints=web"
|
||||
- "traefik.http.routers.qbit-priv.service=qbit-priv"
|
||||
- "traefik.http.services.qbit-priv.loadbalancer.server.port=8069"
|
||||
# Mousehole
|
||||
- "traefik.http.routers.mousehole.rule=Host(`mousehole.nearfuture`)"
|
||||
- "traefik.http.routers.mousehole.entrypoints=web"
|
||||
- "traefik.http.routers.mousehole.service=mousehole"
|
||||
- "traefik.http.services.mousehole.loadbalancer.server.port=5010"
|
||||
# Watchtower
|
||||
#- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
qbittorrent:
|
||||
image: lscr.io/linuxserver/qbittorrent:latest
|
||||
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
|
||||
container_name: qbittorrent
|
||||
environment:
|
||||
- PUID=1029
|
||||
@@ -64,16 +80,15 @@ services:
|
||||
volumes:
|
||||
- /home/fejy/docker/qbittorrent:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
- /mnt/LUXURIA/Private:/Private
|
||||
- /mnt/downloads:/downloads/
|
||||
network_mode: "service:gluetun"
|
||||
depends_on:
|
||||
gluetun:
|
||||
condition: service_healthy
|
||||
restart: unless-stopped
|
||||
restart: on-failure:2
|
||||
|
||||
qbittorrent2:
|
||||
image: lscr.io/linuxserver/qbittorrent:latest
|
||||
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
|
||||
container_name: qbittorrent2
|
||||
environment:
|
||||
- PUID=1029
|
||||
@@ -83,16 +98,32 @@ services:
|
||||
volumes:
|
||||
- /home/fejy/docker/qbittorrent2:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
- /mnt/LUXURIA/Private:/Private
|
||||
- /mnt/downloads:/downloads/
|
||||
network_mode: "service:gluetun"
|
||||
depends_on:
|
||||
gluetun:
|
||||
condition: service_healthy
|
||||
restart: unless-stopped
|
||||
restart: on-failure:2
|
||||
|
||||
qbittorrent3:
|
||||
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
|
||||
container_name: qbittorrent3
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
- WEBUI_PORT=8091
|
||||
volumes:
|
||||
- /home/fejy/docker/qbittorrent3:/config
|
||||
- /mnt/AVARITIA/Share:/Avaritia/Share
|
||||
network_mode: "service:gluetun"
|
||||
depends_on:
|
||||
gluetun:
|
||||
condition: service_healthy
|
||||
restart: on-failure:2
|
||||
|
||||
qbittorrent_priv:
|
||||
image: lscr.io/linuxserver/qbittorrent:latest
|
||||
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
|
||||
container_name: qbittorrent_priv
|
||||
environment:
|
||||
- PUID=1029
|
||||
@@ -102,25 +133,22 @@ services:
|
||||
volumes:
|
||||
- /home/fejy/docker/qbittorrent_priv:/config
|
||||
- /mnt/LUXURIA/Share:/mnt/LUXURIA/Share
|
||||
- /mnt/LUXURIA/Private:/mnt/LUXURIA/Private
|
||||
- /mnt/AVARITIA/Private:/mnt/LUXURIA/Private
|
||||
- /mnt/downloads:/downloads/
|
||||
network_mode: "service:gluetun"
|
||||
depends_on:
|
||||
gluetun:
|
||||
condition: service_healthy
|
||||
restart: unless-stopped
|
||||
restart: on-failure:2
|
||||
|
||||
mam-api:
|
||||
image: myanonamouse/seedboxapi
|
||||
container_name: mam-api
|
||||
user: 1029:1000
|
||||
environment:
|
||||
- DEBUG=1
|
||||
#- mam_id=<Grab from security settings>
|
||||
- interval=1
|
||||
volumes:
|
||||
- /home/fejy/docker/mam-api:/config
|
||||
mousehole:
|
||||
image: tmmrtn/mousehole:latest
|
||||
container_name: mousehole
|
||||
network_mode: "service:gluetun"
|
||||
environment:
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/mousehole:/srv/mousehole
|
||||
depends_on:
|
||||
gluetun:
|
||||
condition: service_healthy
|
||||
|
||||
@@ -2,9 +2,6 @@ services:
|
||||
privatebin:
|
||||
container_name: privatebin
|
||||
image: privatebin/nginx-fpm-alpine:1.7.4
|
||||
ports:
|
||||
- 1992:8080/tcp
|
||||
# read_only: true
|
||||
volumes:
|
||||
- /home/fejy/docker/privatebin/conf/conf.php:/srv/cfg/conf.php:ro
|
||||
- /home/fejy/docker/privatebin/data:/srv/data
|
||||
@@ -24,8 +21,7 @@ services:
|
||||
- "traefik.http.routers.privatebin-ssl.tls=true"
|
||||
- "traefik.http.routers.privatebin-ssl-ext.rule=Host(`privatebin.nearfuture.industries`)"
|
||||
- "traefik.http.routers.privatebin-ssl-ext.entrypoints=websecure"
|
||||
- "traefik.http.routers.privatebin-ssl-ext.tls=true"
|
||||
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
services:
|
||||
prowlarr:
|
||||
image: lscr.io/linuxserver/prowlarr:latest
|
||||
container_name: prowlarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/prowlarr/data:/config
|
||||
ports:
|
||||
- 9696:9696
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.prowlarr.rule=Host(`prowlarr.nearfuture`)"
|
||||
- "traefik.http.routers.prowlarr.entrypoints=web"
|
||||
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
services:
|
||||
radarr:
|
||||
image: lscr.io/linuxserver/radarr:latest
|
||||
container_name: radarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/radarr:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
ports:
|
||||
- 7878:7878
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.radarr.rule=Host(`radarr.nearfuture`)"
|
||||
- "traefik.http.routers.radarr.entrypoints=web"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
47
scrutiny/compose.yml
Normal file
47
scrutiny/compose.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
services:
|
||||
influxdb:
|
||||
restart: unless-stopped
|
||||
image: influxdb:2.8
|
||||
ports:
|
||||
- '8086:8086'
|
||||
user: 1029:1000
|
||||
volumes:
|
||||
- /home/fejy/docker/scrutiny/influxdb:/var/lib/influxdb2
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8086/health"]
|
||||
interval: 5s
|
||||
timeout: 10s
|
||||
retries: 20
|
||||
networks:
|
||||
- scrutiny
|
||||
|
||||
web:
|
||||
restart: unless-stopped
|
||||
image: 'ghcr.io/analogj/scrutiny:v0-web'
|
||||
user: 1029:1000
|
||||
volumes:
|
||||
- /home/fejy/docker/scrutiny/config:/opt/scrutiny/config
|
||||
environment:
|
||||
SCRUTINY_WEB_INFLUXDB_HOST: 'influxdb'
|
||||
depends_on:
|
||||
influxdb:
|
||||
condition: service_healthy
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/api/health"]
|
||||
interval: 5s
|
||||
timeout: 10s
|
||||
retries: 20
|
||||
start_period: 10s
|
||||
networks:
|
||||
- proxy
|
||||
- scrutiny
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=proxy"
|
||||
- "traefik.http.routers.scrutiny.entryPoints=web"
|
||||
- "traefik.http.routers.scrutiny.rule=Host(`scrutiny.nearfuture`)"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
scrutiny:
|
||||
@@ -1,25 +0,0 @@
|
||||
services:
|
||||
sonarr:
|
||||
image: lscr.io/linuxserver/sonarr:latest
|
||||
container_name: sonarr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/sonarr:/config
|
||||
- /mnt/LUXURIA/Share:/Share
|
||||
ports:
|
||||
- 8989:8989
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.sonarr.rule=Host(`sonarr.nearfuture`)"
|
||||
- "traefik.http.routers.sonarr.entrypoints=web"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
60
synapse/compose.yml
Normal file
60
synapse/compose.yml
Normal file
@@ -0,0 +1,60 @@
|
||||
# This compose file is compatible with Compose itself, it might need some
|
||||
# adjustments to run properly with stack.
|
||||
|
||||
services:
|
||||
|
||||
synapse:
|
||||
image: docker.io/matrixdotorg/synapse:latest
|
||||
container_name: synapse
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- SYNAPSE_CONFIG_PATH=/data/homeserver.yaml
|
||||
volumes:
|
||||
- /home/fejy/docker/synapse:/data
|
||||
depends_on:
|
||||
- synapse_db
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.http-synapse.entryPoints=web"
|
||||
- "traefik.http.routers.http-synapse.rule=Host(`synapse.nearfuture.industries`)"
|
||||
- "traefik.http.routers.http-synapse.middlewares=https_redirect"
|
||||
- "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https"
|
||||
- "traefik.http.middlewares.https_redirect.redirectscheme.permanent=true"
|
||||
- "traefik.http.routers.https-synapse.entryPoints=websecure"
|
||||
- "traefik.http.routers.https-synapse.rule=Host(`synapse.nearfuture.industries`)"
|
||||
- "traefik.http.routers.https-synapse.service=synapse"
|
||||
- "traefik.http.services.synapse.loadbalancer.server.port=8008"
|
||||
|
||||
synapse_db:
|
||||
image: docker.io/postgres:14-alpine
|
||||
container_name: synapse_db
|
||||
environment:
|
||||
- POSTGRES_USER=postgres
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASS}
|
||||
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C
|
||||
networks:
|
||||
- proxy
|
||||
volumes:
|
||||
- /home/fejy/docker/synapse-db/:/var/lib/postgresql/data
|
||||
|
||||
nginx:
|
||||
image: nginx:1.12-alpine
|
||||
container_name: synapse_nginx
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.services.matrix.loadbalancer.server.port=80"
|
||||
- "traefik.http.routers.matrix.rule=Host(`nearfuture.industries`)"
|
||||
- "traefik.http.routers.matrix.entrypoints=websecure"
|
||||
volumes:
|
||||
- ./nginx/matrix.conf:/etc/nginx/conf.d/matrix.conf
|
||||
- ./nginx/www:/var/www/
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
17
synapse/nginx/matrix.conf
Normal file
17
synapse/nginx/matrix.conf
Normal file
@@ -0,0 +1,17 @@
|
||||
server {
|
||||
listen 80 default_server;
|
||||
server_name nearfuture.industries;
|
||||
|
||||
# Traefik -> nginx -> synapse
|
||||
location /_matrix {
|
||||
proxy_pass http://synapse:8008;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
client_max_body_size 128m;
|
||||
}
|
||||
|
||||
location /.well-known/matrix/ {
|
||||
root /var/www/;
|
||||
default_type application/json;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
}
|
||||
}
|
||||
6
synapse/nginx/www/.well-known/matrix/client
Normal file
6
synapse/nginx/www/.well-known/matrix/client
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"m.homeserver": {
|
||||
"base_url": "https://nearfuture.industries"
|
||||
}
|
||||
}
|
||||
|
||||
4
synapse/nginx/www/.well-known/matrix/server
Normal file
4
synapse/nginx/www/.well-known/matrix/server
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"m.server": "synapse.nearfuture.industries:443"
|
||||
}
|
||||
|
||||
@@ -8,8 +8,6 @@ services:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
ports:
|
||||
- 8181:8181
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
@@ -17,6 +15,7 @@ services:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.tautulli.rule=Host(`tautulli.nearfuture`)"
|
||||
- "traefik.http.routers.tautulli.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
|
||||
23
thelounge/compose.yml
Normal file
23
thelounge/compose.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
services:
|
||||
thelounge:
|
||||
image: lscr.io/linuxserver/thelounge:latest
|
||||
container_name: thelounge
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/thelounge/config:/config
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.thelounge.rule=Host(`thelounge.nearfuture`)"
|
||||
- "traefik.http.routers.thelounge.entrypoints=web"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
@@ -2,20 +2,19 @@ services:
|
||||
traefik:
|
||||
image: traefik
|
||||
container_name: traefik
|
||||
# command:
|
||||
#- "--api.insecure=true"
|
||||
#- "--providers.docker=true"
|
||||
#- "--providers.docker.exposedbydefault=false"
|
||||
#- "--entrypoints.web.address=:80"
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- NAMECHEAP_API_USER=${NAMECHEAP_USER}
|
||||
- NAMECHEAP_API_KEY=${NAMECHEAP_KEY}
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "8080:8080"
|
||||
- "2128:2128/tcp"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/fejy/docker/traefik:/etc/traefik
|
||||
- /home/fejy/docker/traefik-ssl:/ssl
|
||||
- /home/fejy/docker/traefik-acme/acme.json:/acme.json
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
@@ -23,7 +22,8 @@ services:
|
||||
- "traefik.http.routers.api.service=api@internal"
|
||||
- "traefik.http.routers.api.rule=Host(`traefik.nearfuture`)"
|
||||
- "traefik.http.routers.api.entrypoints=web"
|
||||
- "traefik.http.services.api.loadbalancer.server.port=8080 # The port value doesn't matter"
|
||||
- "traefik.http.services.api.loadbalancer.server.port=8080"
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
services:
|
||||
wastebin:
|
||||
image: 'quxfoo/wastebin:latest'
|
||||
container_name: wastebin
|
||||
environment:
|
||||
- WASTEBIN_DATABASE_PATH=/data/state.db
|
||||
user: "1029:1000"
|
||||
ports:
|
||||
- "9020:8088"
|
||||
volumes:
|
||||
- '/home/fejy/docker/wastebin:/data'
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.bin.rule=Host(`bin.nearfuture`)"
|
||||
- "traefik.http.routers.bin.entrypoints=web"
|
||||
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
14
watchtower/compose.yml
Normal file
14
watchtower/compose.yml
Normal file
@@ -0,0 +1,14 @@
|
||||
version: '3'
|
||||
services:
|
||||
watchtower:
|
||||
image: nickfedor/watchtower
|
||||
container_name: watchtower
|
||||
command: --cleanup=true --scope watch
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- DOCKER_API_VERSION="1.49"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
labels:
|
||||
- "com.centurylinklabs.watchtower.scope=watch"
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
services:
|
||||
whisparr:
|
||||
image: ghcr.io/thespad/whisparr:latest
|
||||
container_name: whisparr
|
||||
environment:
|
||||
- PUID=1029
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /home/fejy/docker/whisparr:/config
|
||||
- /mnt/LUXURIA/Private:/Private
|
||||
ports:
|
||||
- 6969:6969
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.whisparr.rule=Host(`whisparr.nearfuture`)"
|
||||
- "traefik.http.routers.whisparr.entrypoints=web"
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
Reference in New Issue
Block a user