Compare commits
24 Commits
e21a330b33
...
caddy-dock
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
63edf652b7 | ||
|
|
a2dff6fdd8 | ||
|
|
a671b15a96 | ||
|
|
936242e24d | ||
|
|
817723d0bf | ||
|
|
f016deb3a9 | ||
|
|
ce8e342560 | ||
|
|
ad9b4fef97 | ||
|
|
28c734c1d2 | ||
|
|
342559c8eb | ||
|
|
77803655c0 | ||
|
|
eb0f41261f | ||
|
|
005c60abc3 | ||
|
|
7002b866f9 | ||
|
|
9c767b6e0c | ||
|
|
b66436fa95 | ||
|
|
e36c6a7f1c | ||
|
|
43bacbcb48 | ||
|
|
3d62803e05 | ||
|
|
99193bcaa7 | ||
|
|
579adad744 | ||
|
|
a67bdd8503 | ||
|
|
994b2d4c01 | ||
|
|
5ce753bd71 |
6
.gitignore
vendored
6
.gitignore
vendored
@@ -1,3 +1,9 @@
|
|||||||
data/
|
data/
|
||||||
secrets/
|
secrets/
|
||||||
tmp/
|
tmp/
|
||||||
|
stashapp/**/config.yml.*
|
||||||
|
stashapp/**/icon.png
|
||||||
|
requestrr/**/notifications.json
|
||||||
|
logs/
|
||||||
|
authentik/.env
|
||||||
|
caddy/.env
|
||||||
@@ -1,10 +1,15 @@
|
|||||||
|
name: actual-server
|
||||||
services:
|
services:
|
||||||
actual_server:
|
app:
|
||||||
image: docker.io/actualbudget/actual-server:latest
|
image: docker.io/actualbudget/actual-server:latest
|
||||||
ports:
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
#ports:
|
||||||
# This line makes Actual available at port 5006 of the device you run the server on,
|
# This line makes Actual available at port 5006 of the device you run the server on,
|
||||||
# i.e. http://localhost:5006. You can change the first number to change the port, if you want.
|
# i.e. http://localhost:5006. You can change the first number to change the port, if you want.
|
||||||
- '5006:5006'
|
# - '5006:5006'
|
||||||
|
expose:
|
||||||
|
- "5006"
|
||||||
#environment:
|
#environment:
|
||||||
# - ACTUAL_LOGIN_METHOD=header
|
# - ACTUAL_LOGIN_METHOD=header
|
||||||
# Uncomment any of the lines below to set configuration options.
|
# Uncomment any of the lines below to set configuration options.
|
||||||
@@ -21,3 +26,7 @@ services:
|
|||||||
# '/data' is the path Actual will look for its files in by default, so leave that as-is.
|
# '/data' is the path Actual will look for its files in by default, so leave that as-is.
|
||||||
- ./data:/data
|
- ./data:/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
name: "authelia"
|
name: authelia
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: authelia/authelia:latest
|
image: authelia/authelia:latest
|
||||||
@@ -8,6 +8,9 @@ services:
|
|||||||
- redis
|
- redis
|
||||||
volumes:
|
volumes:
|
||||||
- ./config/authelia:/config
|
- ./config/authelia:/config
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
- default
|
||||||
ports:
|
ports:
|
||||||
- "9091:9091"
|
- "9091:9091"
|
||||||
environment:
|
environment:
|
||||||
@@ -22,9 +25,9 @@ services:
|
|||||||
AUTHELIA_AUTHENTICATION_BACKEND_FILE_PATH: /run/secrets/users_database
|
AUTHELIA_AUTHENTICATION_BACKEND_FILE_PATH: /run/secrets/users_database
|
||||||
AUTHELIA_TOTP_ISSUER: tremendousturtle.tools
|
AUTHELIA_TOTP_ISSUER: tremendousturtle.tools
|
||||||
AUTHELIA_ACCESS_CONTROL_DEFAULT_POLICY: deny
|
AUTHELIA_ACCESS_CONTROL_DEFAULT_POLICY: deny
|
||||||
AUTHELIA_SESSION_REDIS_HOST: redis
|
AUTHELIA_SESSION_REDIS_HOST: authelia-redis-1
|
||||||
AUTHELIA_SESSION_REDIS_PORT: 6379
|
AUTHELIA_SESSION_REDIS_PORT: 6379
|
||||||
AUTHELIA_STORAGE_POSTGRES_ADDRESS: tcp://database:5432
|
AUTHELIA_STORAGE_POSTGRES_ADDRESS: tcp://authelia-database-1:5432
|
||||||
AUTHELIA_STORAGE_POSTGRES_DATABASE: authelia
|
AUTHELIA_STORAGE_POSTGRES_DATABASE: authelia
|
||||||
AUTHELIA_STORAGE_POSTGRES_USERNAME: authelia
|
AUTHELIA_STORAGE_POSTGRES_USERNAME: authelia
|
||||||
AUTHELIA_NOTIFIER_SMTP_ADDRESS: submissions://smtp.mailgun.org:465
|
AUTHELIA_NOTIFIER_SMTP_ADDRESS: submissions://smtp.mailgun.org:465
|
||||||
@@ -38,6 +41,12 @@ services:
|
|||||||
- postgres_pass
|
- postgres_pass
|
||||||
- redis_pass
|
- redis_pass
|
||||||
- users_database
|
- users_database
|
||||||
|
labels:
|
||||||
|
- homepage.group=Utility
|
||||||
|
- homepage.name=Authelia
|
||||||
|
- homepage.icon=authelia
|
||||||
|
- homepage.href=https://auth.tremendousturtle.tools/
|
||||||
|
- homepage.description=Authentication
|
||||||
|
|
||||||
database:
|
database:
|
||||||
image: postgres:15
|
image: postgres:15
|
||||||
@@ -61,6 +70,10 @@ services:
|
|||||||
secrets:
|
secrets:
|
||||||
- redis_pass
|
- redis_pass
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
postgres_pass:
|
postgres_pass:
|
||||||
file: ./secrets/POSTGRES_PASS
|
file: ./secrets/POSTGRES_PASS
|
||||||
|
|||||||
96
authentik/docker-compose.yml
Normal file
96
authentik/docker-compose.yml
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
name: authentik
|
||||||
|
services:
|
||||||
|
db:
|
||||||
|
image: docker.io/library/postgres:16-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
|
||||||
|
start_period: 20s
|
||||||
|
interval: 30s
|
||||||
|
retries: 5
|
||||||
|
timeout: 5s
|
||||||
|
volumes:
|
||||||
|
- database:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
POSTGRES_PASSWORD: ${PG_PASS:?database password required}
|
||||||
|
POSTGRES_USER: ${PG_USER:-authentik}
|
||||||
|
POSTGRES_DB: ${PG_DB:-authentik}
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
redis:
|
||||||
|
image: docker.io/library/redis:alpine
|
||||||
|
command: --save 60 1 --loglevel warning
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
||||||
|
start_period: 20s
|
||||||
|
interval: 30s
|
||||||
|
retries: 5
|
||||||
|
timeout: 3s
|
||||||
|
volumes:
|
||||||
|
- redis:/data
|
||||||
|
app:
|
||||||
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2024.12.2}
|
||||||
|
restart: unless-stopped
|
||||||
|
command: server
|
||||||
|
environment:
|
||||||
|
AUTHENTIK_REDIS__HOST: authentik-redis-1
|
||||||
|
AUTHENTIK_POSTGRESQL__HOST: authentik-db-1
|
||||||
|
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
- default
|
||||||
|
volumes:
|
||||||
|
- ./data/media:/media
|
||||||
|
- ./config/custom-templates:/templates
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
ports:
|
||||||
|
- "${COMPOSE_PORT_HTTP:-9000}:9000"
|
||||||
|
- "${COMPOSE_PORT_HTTPS:-9443}:9443"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
redis:
|
||||||
|
condition: service_healthy
|
||||||
|
worker:
|
||||||
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2024.12.2}
|
||||||
|
restart: unless-stopped
|
||||||
|
command: worker
|
||||||
|
environment:
|
||||||
|
AUTHENTIK_REDIS__HOST: authentik-redis-1
|
||||||
|
AUTHENTIK_POSTGRESQL__HOST: authentik-db-1
|
||||||
|
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||||
|
# `user: root` and the docker socket volume are optional.
|
||||||
|
# See more for the docker socket integration here:
|
||||||
|
# https://goauthentik.io/docs/outposts/integrations/docker
|
||||||
|
# Removing `user: root` also prevents the worker from fixing the permissions
|
||||||
|
# on the mounted folders, so when removing this make sure the folders have the correct UID/GID
|
||||||
|
# (1000:1000 by default)
|
||||||
|
user: root
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- ./data/media:/media
|
||||||
|
- ./data/certs:/certs
|
||||||
|
- ./config/custom-templates:/templates
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
redis:
|
||||||
|
condition: service_healthy
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
database:
|
||||||
|
driver: local
|
||||||
|
redis:
|
||||||
|
driver: local
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
116
caddy/Caddyfile
Normal file
116
caddy/Caddyfile
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
# Global Config
|
||||||
|
{
|
||||||
|
email certs@tremendousturtle.tools
|
||||||
|
default_sni tremendousturtle.tools
|
||||||
|
acme_ca https://acme-v02.api.letsencrypt.org/directory
|
||||||
|
admin :2019
|
||||||
|
# debug
|
||||||
|
# acme_ca https://acme-staging-v02.api.letsencrypt.org/directory
|
||||||
|
|
||||||
|
servers {
|
||||||
|
trusted_proxies cloudflare {
|
||||||
|
interval 12h
|
||||||
|
timeout 15s
|
||||||
|
}
|
||||||
|
client_ip_headers Cf-Connecting-Ip X-Forwarded-For X-Real-IP
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Global Reusable Blocks
|
||||||
|
(tls) {
|
||||||
|
tls {
|
||||||
|
dns cloudflare {
|
||||||
|
zone_token {env.CF_ZONE_TOKEN}
|
||||||
|
api_token {env.CF_API_TOKEN}
|
||||||
|
}
|
||||||
|
resolvers 1.1.1.1 1.0.0.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(secure) {
|
||||||
|
forward_auth {args[0]} authelia-app-1:9091 {
|
||||||
|
uri /api/authz/forward-auth
|
||||||
|
copy_headers Remote-User Remote-Groups Remote-Name Remote-Email
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(secure-external) {
|
||||||
|
forward_auth {args[0]} https://auth.tremendousturtle.tools {
|
||||||
|
uri /api/authz/forward-auth
|
||||||
|
copy_headers Remote-User Remote-Groups Remote-Name Remote-Email
|
||||||
|
header_up Host {upstream_hostport}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(ttt-log) {
|
||||||
|
log {
|
||||||
|
output file /logs/{args[0]}.tremendousturtle.tools.log
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(ttt-proxy) {
|
||||||
|
reverse_proxy {args[0]}:{args[1]} {
|
||||||
|
header_up X-Real-IP {http.request.header.CF-Connecting-IP}
|
||||||
|
header_up X-Forwarded-For {http.request.header.CF-Connecting-IP}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(ttt-app) {
|
||||||
|
{args[0]}.tremendousturtle.tools {
|
||||||
|
import ttt-log {args[0]}
|
||||||
|
import tls
|
||||||
|
import secure *
|
||||||
|
import ttt-proxy {args[0]}-app-1 {args[1]}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(ttt-app-local) {
|
||||||
|
{args[0]}.tremendousturtle.tools {
|
||||||
|
import ttt-log {args[0]}
|
||||||
|
import tls
|
||||||
|
import secure *
|
||||||
|
import ttt-proxy host.docker.internal {args[1]}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(ttt-app-alt) {
|
||||||
|
{args[0]}.tremendousturtle.tools {
|
||||||
|
import ttt-log {args[0]}
|
||||||
|
import tls
|
||||||
|
import secure *
|
||||||
|
import ttt-proxy {args[1]} {args[2]}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Web Config
|
||||||
|
tremendousturtle.tools {
|
||||||
|
import tls
|
||||||
|
respond "I'm Alive!"
|
||||||
|
}
|
||||||
|
|
||||||
|
auth.tremendousturtle.tools {
|
||||||
|
import tls
|
||||||
|
reverse_proxy authelia-app-1:9091
|
||||||
|
}
|
||||||
|
|
||||||
|
authentik.tremendousturtle.tools {
|
||||||
|
import tls
|
||||||
|
reverse_proxy authentik-app-1:9000
|
||||||
|
}
|
||||||
|
|
||||||
|
# Define code.tremendousturtle.tools
|
||||||
|
# Locally hosted non-docker apps (proxies to 192.168.1.234 instead of localhost)
|
||||||
|
import ttt-app-local code 8020
|
||||||
|
import ttt-app-local pihole 1080
|
||||||
|
import ttt-app-local sonarr 8989
|
||||||
|
import ttt-app-local radarr 7878
|
||||||
|
import ttt-app-local prowlarr 9696
|
||||||
|
import ttt-app-local cockpit 9090
|
||||||
|
|
||||||
|
# Docker apps with same subdomain as docker compose project name
|
||||||
|
import ttt-app frigate 8971
|
||||||
|
import ttt-app overseerr 5055
|
||||||
|
import ttt-app openobserve 5080
|
||||||
|
import ttt-app gitea 3000
|
||||||
|
import ttt-app homepage 3000
|
||||||
|
import ttt-app requestrr 4545
|
||||||
|
|
||||||
|
# Alternate configuration (different subdomain and docker compose project name)
|
||||||
|
import ttt-app-alt budget actual-server-app-1 5006
|
||||||
|
import ttt-app-alt trilium triliumnext-notes-app-1 8080
|
||||||
|
import ttt-app-alt notes triliumnext-notes-app-1 8080
|
||||||
|
import ttt-app-alt stash stashapp-app-1 9999
|
||||||
|
import ttt-app-alt pihole1 192.168.1.116 80
|
||||||
9
caddy/Dockerfile
Normal file
9
caddy/Dockerfile
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
FROM caddy:2.9.1-builder AS builder
|
||||||
|
|
||||||
|
RUN xcaddy build \
|
||||||
|
--with github.com/caddy-dns/cloudflare \
|
||||||
|
--with github.com/WeidiDeng/caddy-cloudflare-ip
|
||||||
|
|
||||||
|
FROM caddy:2.9.1
|
||||||
|
|
||||||
|
COPY --from=builder /usr/bin/caddy /usr/bin/caddy
|
||||||
35
caddy/docker-compose.yml
Normal file
35
caddy/docker-compose.yml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
name: caddy
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
build: .
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file: .env
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
extra_hosts:
|
||||||
|
- "host.docker.internal:host-gateway"
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
- "2019:2019"
|
||||||
|
configs:
|
||||||
|
- source: caddyfile
|
||||||
|
target: /etc/caddy/Caddyfile
|
||||||
|
volumes:
|
||||||
|
- ./data/site:/srv
|
||||||
|
- ./data/logs:/logs
|
||||||
|
- caddy_data:/data
|
||||||
|
- caddy_config:/config
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
configs:
|
||||||
|
caddyfile:
|
||||||
|
file: ./Caddyfile
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
caddy_data:
|
||||||
|
caddy_config:
|
||||||
16
cloudflared/docker-compose.yml
Normal file
16
cloudflared/docker-compose.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
name: cloudflared
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: cloudflare/cloudflared:latest
|
||||||
|
volumes:
|
||||||
|
- ./config:/etc/cloudflared
|
||||||
|
command: tunnel --no-autoupdate run --token eyJhIjoiNjhmNjVkYzZkNDgzODZkMTMwNTk2ODk4ZThjNzVhODMiLCJ0IjoiYmNkMjg3OGYtYTRmYi00OWJmLTk0MGMtMzFkYWE2ZDkyNjIwIiwicyI6Ill6STNNbUUwT0RrdE4yWmhaaTAwWWpZM0xXRTFaRFF0TkdWa09HTmpOVFEwTnpRdyJ9
|
||||||
|
restart: unless-stopped
|
||||||
|
extra_hosts:
|
||||||
|
- "host.docker.internal:host-gateway"
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
|
name: frigate
|
||||||
services:
|
services:
|
||||||
frigate:
|
app:
|
||||||
container_name: frigate
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
image: ghcr.io/blakeblackshear/frigate:stable
|
image: ghcr.io/blakeblackshear/frigate:stable
|
||||||
shm_size: "250mb"
|
shm_size: "250mb"
|
||||||
@@ -17,11 +17,27 @@ services:
|
|||||||
target: /tmp/cache
|
target: /tmp/cache
|
||||||
tmpfs:
|
tmpfs:
|
||||||
size: 4000000000
|
size: 4000000000
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
ports:
|
ports:
|
||||||
- "8971:8971"
|
|
||||||
- "8554:8554" # RTSP feeds
|
- "8554:8554" # RTSP feeds
|
||||||
- "8555:8555/tcp" # WebRTC over tcp
|
- "8555:8555/tcp" # WebRTC over tcp
|
||||||
- "8555:8555/udp" # WebRTC over udp
|
- "8555:8555/udp" # WebRTC over udp
|
||||||
- "5000:5000" # VS Code schema validation allowed
|
- "5000:5000" # VS Code schema validation allowed
|
||||||
|
expose:
|
||||||
|
- "8971"
|
||||||
environment:
|
environment:
|
||||||
LIBVA_DRIVER_NAME: "radeonsi" # FRIGATE_RTSP_PASSWORD: "69$nC*6$jADbc!"
|
LIBVA_DRIVER_NAME: "radeonsi" # FRIGATE_RTSP_PASSWORD: "69$nC*6$jADbc!"
|
||||||
|
labels:
|
||||||
|
- homepage.group=Utility
|
||||||
|
- homepage.name=Frigate
|
||||||
|
- homepage.icon=frigate
|
||||||
|
- homepage.href=https://frigate.tremendousturtle.tools/
|
||||||
|
- homepage.description=Camera Surveillance
|
||||||
|
- homepage.widget.type=frigate
|
||||||
|
- homepage.widget.url=http://frigate-app-1:5000
|
||||||
|
- homepage.widget.enableRecentEvents=true
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|||||||
@@ -1,30 +1,35 @@
|
|||||||
networks:
|
networks:
|
||||||
gitea:
|
gitea:
|
||||||
external: false
|
external: false
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
name: gitea
|
||||||
services:
|
services:
|
||||||
server:
|
app:
|
||||||
image: gitea/gitea:latest
|
image: gitea/gitea:latest
|
||||||
environment:
|
environment:
|
||||||
USER_UID: 141
|
USER_UID: 141
|
||||||
USER_GID: 150
|
USER_GID: 150
|
||||||
GITEA__database__DB_TYPE: postgres
|
GITEA__database__DB_TYPE: postgres
|
||||||
GITEA__database__HOST: db:5432
|
GITEA__database__HOST: gitea-db-1:5432
|
||||||
GITEA__database__NAME: ${GITEA_DB_NAME}
|
GITEA__database__NAME: ${GITEA_DB_NAME}
|
||||||
GITEA__database__USER: ${GITEA_DB_USER}
|
GITEA__database__USER: ${GITEA_DB_USER}
|
||||||
GITEA__database__PASSWD__FILE: /run/secrets/postgres_pass
|
GITEA__database__PASSWD__FILE: /run/secrets/postgres_pass
|
||||||
GITEA__server__SSH_AUTHORIZED_KEYS_COMMAND_TEMPLATE: gitea --config={{.CustomConf}} serv key-{{.Key.ID}}
|
GITEA__server__SSH_AUTHORIZED_KEYS_COMMAND_TEMPLATE: gitea --config={{.CustomConf}} serv key-{{.Key.ID}}
|
||||||
restart: always
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- gitea
|
- gitea
|
||||||
|
- proxy-net
|
||||||
volumes:
|
volumes:
|
||||||
- ./data/gitea:/data
|
- ./data/gitea:/data
|
||||||
- /home/git/.ssh/:/data/git/.ssh
|
- /home/git/.ssh/:/data/git/.ssh
|
||||||
- /etc/timezone:/etc/timezone:ro
|
- /etc/timezone:/etc/timezone:ro
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
|
||||||
- "127.0.0.1:2222:22"
|
- "127.0.0.1:2222:22"
|
||||||
|
expose:
|
||||||
|
- "3000"
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
secrets:
|
secrets:
|
||||||
@@ -32,7 +37,7 @@ services:
|
|||||||
|
|
||||||
db:
|
db:
|
||||||
image: postgres:14
|
image: postgres:14
|
||||||
restart: always
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_USER: ${GITEA_DB_USER}
|
POSTGRES_USER: ${GITEA_DB_USER}
|
||||||
POSTGRES_PASSWORD_FILE: /run/secrets/postgres_pass
|
POSTGRES_PASSWORD_FILE: /run/secrets/postgres_pass
|
||||||
|
|||||||
18
homepage/config/bookmarks.yaml
Normal file
18
homepage/config/bookmarks.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/configs/bookmarks
|
||||||
|
|
||||||
|
- Developer:
|
||||||
|
- Github:
|
||||||
|
- abbr: GH
|
||||||
|
href: https://github.com/
|
||||||
|
|
||||||
|
- Social:
|
||||||
|
- Reddit:
|
||||||
|
- abbr: RE
|
||||||
|
href: https://reddit.com/
|
||||||
|
|
||||||
|
- Entertainment:
|
||||||
|
- YouTube:
|
||||||
|
- abbr: YT
|
||||||
|
href: https://youtube.com/
|
||||||
0
homepage/config/custom.css
Normal file
0
homepage/config/custom.css
Normal file
0
homepage/config/custom.js
Normal file
0
homepage/config/custom.js
Normal file
10
homepage/config/docker.yaml
Normal file
10
homepage/config/docker.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/configs/docker/
|
||||||
|
|
||||||
|
my-docker:
|
||||||
|
host: homepage-dockerproxy-1
|
||||||
|
port: 2375
|
||||||
|
|
||||||
|
# my-docker:
|
||||||
|
# socket: /var/run/docker.sock
|
||||||
2
homepage/config/kubernetes.yaml
Normal file
2
homepage/config/kubernetes.yaml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
# sample kubernetes config
|
||||||
18
homepage/config/services.yaml
Normal file
18
homepage/config/services.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/configs/services/
|
||||||
|
|
||||||
|
- My First Group:
|
||||||
|
- My First Service:
|
||||||
|
href: http://localhost/
|
||||||
|
description: Homepage is awesome
|
||||||
|
|
||||||
|
- My Second Group:
|
||||||
|
- My Second Service:
|
||||||
|
href: http://localhost/
|
||||||
|
description: Homepage is the best
|
||||||
|
|
||||||
|
- My Third Group:
|
||||||
|
- My Third Service:
|
||||||
|
href: http://localhost/
|
||||||
|
description: Homepage is 😎
|
||||||
7
homepage/config/settings.yaml
Normal file
7
homepage/config/settings.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/configs/settings/
|
||||||
|
|
||||||
|
providers:
|
||||||
|
openweathermap: openweathermapapikey
|
||||||
|
weatherapi: weatherapiapikey
|
||||||
12
homepage/config/widgets.yaml
Normal file
12
homepage/config/widgets.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/configs/info-widgets/
|
||||||
|
|
||||||
|
- resources:
|
||||||
|
cpu: true
|
||||||
|
memory: true
|
||||||
|
disk: /
|
||||||
|
|
||||||
|
- search:
|
||||||
|
provider: duckduckgo
|
||||||
|
target: _blank
|
||||||
@@ -1,9 +1,33 @@
|
|||||||
|
name: homepage
|
||||||
services:
|
services:
|
||||||
homepage:
|
app:
|
||||||
image: ghcr.io/gethomepage/homepage:latest
|
image: ghcr.io/gethomepage/homepage:latest
|
||||||
container_name: homepage
|
depends_on:
|
||||||
ports:
|
- dockerproxy
|
||||||
- 3000:3000
|
environment:
|
||||||
|
DOCKER_TEMPLATE_CREATED: true
|
||||||
|
expose:
|
||||||
|
- "3000"
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
- default
|
||||||
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /path/to/config:/app/config # Make sure your local config directory exists
|
- ./config:/app/config # Make sure your local config directory exists
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations
|
|
||||||
|
dockerproxy:
|
||||||
|
image: ghcr.io/tecnativa/docker-socket-proxy:latest
|
||||||
|
environment:
|
||||||
|
- CONTAINERS=1 # Allow access to viewing containers
|
||||||
|
- SERVICES=1 # Allow access to viewing services (necessary when using Docker Swarm)
|
||||||
|
- TASKS=1 # Allow access to viewing tasks (necessary when using Docker Swarm)
|
||||||
|
- POST=0 # Disallow any POST operations (effectively read-only)
|
||||||
|
expose:
|
||||||
|
- "2375"
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro # Mounted as read-only
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
@@ -16,9 +16,13 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
- default
|
||||||
ports:
|
ports:
|
||||||
- "5080:5080"
|
|
||||||
- "5514:5514"
|
- "5514:5514"
|
||||||
|
expose:
|
||||||
|
- "5080"
|
||||||
env_file: ./secrets/openobserve.env
|
env_file: ./secrets/openobserve.env
|
||||||
environment:
|
environment:
|
||||||
ZO_DATA_DIR: /data
|
ZO_DATA_DIR: /data
|
||||||
@@ -31,6 +35,10 @@ services:
|
|||||||
- ./data/openobserve:/data
|
- ./data/openobserve:/data
|
||||||
- ./data/stream:/stream
|
- ./data/stream:/stream
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
postgres_pass:
|
postgres_pass:
|
||||||
file: ./secrets/POSTGRES_PASS
|
file: ./secrets/POSTGRES_PASS
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
|
name: orbital-sync
|
||||||
services:
|
services:
|
||||||
orbital-sync:
|
app:
|
||||||
image: mattwebbio/orbital-sync:1
|
image: mattwebbio/orbital-sync:1
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
environment:
|
environment:
|
||||||
PRIMARY_HOST_BASE_URL: 'http://192.168.1.234:1080'
|
PRIMARY_HOST_BASE_URL: 'http://192.168.1.234:1080'
|
||||||
PRIMARY_HOST_PASSWORD: ""
|
PRIMARY_HOST_PASSWORD: ""
|
||||||
@@ -8,3 +12,7 @@ services:
|
|||||||
SECONDARY_HOSTS_1_PASSWORD: 'e8JBq59!pwM6Ppj'
|
SECONDARY_HOSTS_1_PASSWORD: 'e8JBq59!pwM6Ppj'
|
||||||
INTERVAL_MINUTES: 60
|
INTERVAL_MINUTES: 60
|
||||||
VERBOSE: true
|
VERBOSE: true
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
@@ -33,21 +33,21 @@
|
|||||||
"name": "4k Movies",
|
"name": "4k Movies",
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"type": "movie",
|
"type": "movie",
|
||||||
"lastScan": 1734342000015
|
"lastScan": 1736797500041
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "2",
|
"id": "2",
|
||||||
"name": "Movies",
|
"name": "Movies",
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"type": "movie",
|
"type": "movie",
|
||||||
"lastScan": 1734342000024
|
"lastScan": 1736797500057
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "1",
|
"id": "1",
|
||||||
"name": "TV Shows",
|
"name": "TV Shows",
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"type": "show",
|
"type": "show",
|
||||||
"lastScan": 1734342000067
|
"lastScan": 1736797500105
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"machineId": "5e16f8ceb511bde943f92bbe07e3e6e33307eb16"
|
"machineId": "5e16f8ceb511bde943f92bbe07e3e6e33307eb16"
|
||||||
|
|||||||
@@ -1,14 +1,23 @@
|
|||||||
|
name: overseerr
|
||||||
services:
|
services:
|
||||||
overseerr:
|
app:
|
||||||
image: sctx/overseerr:latest
|
image: sctx/overseerr:latest
|
||||||
container_name: overseerr
|
|
||||||
user: '115'
|
user: '115'
|
||||||
environment:
|
environment:
|
||||||
- LOG_LEVEL=debug
|
- LOG_LEVEL=debug
|
||||||
- TZ=America/Los_Angeles
|
- TZ=America/Los_Angeles
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
- default
|
||||||
ports:
|
ports:
|
||||||
- 5055:5055
|
- "5055:5055"
|
||||||
|
expose:
|
||||||
|
- "5055"
|
||||||
volumes:
|
volumes:
|
||||||
- ./data:/app/config
|
- ./data:/app/config
|
||||||
- ./config/settings.json:/app/config/settings.json
|
- ./config/settings.json:/app/config/settings.json
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{"Movies":[{"UserId":"807028794493894707","MovieIds":[167701,558449]},{"UserId":"210278299295809538","MovieIds":[950396,558449]},{"UserId":"223917087477858304","MovieIds":[697620]},{"UserId":"692498823775257048","MovieIds":[32329,986056,575265,1048126,4909,4824]},{"UserId":"207995369093726218","MovieIds":[593961]}],"TvShows":[{"UserId":"210278299295809538","Notifications":[{"TvShowId":128098,"SeasonNumber":3,"IsPermanent":0},{"TvShowId":127532,"SeasonNumber":2,"IsPermanent":0}]},{"UserId":"807028794493894707","Notifications":[{"TvShowId":157741,"SeasonNumber":1,"IsPermanent":0},{"TvShowId":201646,"SeasonNumber":1,"IsPermanent":0},{"TvShowId":59659,"SeasonNumber":3,"IsPermanent":0},{"TvShowId":54650,"SeasonNumber":4,"IsPermanent":0},{"TvShowId":54650,"SeasonNumber":6,"IsPermanent":0}]},{"UserId":"151896142840332288","Notifications":[{"TvShowId":52,"SeasonNumber":8,"IsPermanent":0},{"TvShowId":2902,"SeasonNumber":1,"IsPermanent":0}]},{"UserId":"692498823775257048","Notifications":[{"TvShowId":250308,"SeasonNumber":1,"IsPermanent":0},{"TvShowId":251941,"SeasonNumber":1,"IsPermanent":0},{"TvShowId":219937,"SeasonNumber":1,"IsPermanent":0}]}],"Music":[]}
|
|
||||||
@@ -1,11 +1,18 @@
|
|||||||
|
name: requestrr
|
||||||
services:
|
services:
|
||||||
requestrr:
|
app:
|
||||||
image: thomst08/requestrr
|
image: thomst08/requestrr
|
||||||
hostname: requestrr
|
networks:
|
||||||
container_name: requestrr
|
- proxy-net
|
||||||
ports:
|
ports:
|
||||||
- 4545:4545
|
- "4545:4545"
|
||||||
|
expose:
|
||||||
|
- "4545"
|
||||||
volumes:
|
volumes:
|
||||||
- ./config:/root/config
|
- ./config:/root/config
|
||||||
- ./data/tmp:/root/config/tmp
|
- ./data/tmp:/root/config/tmp
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
961
stashapp/config/config.yml
Normal file
961
stashapp/config/config.yml
Normal file
@@ -0,0 +1,961 @@
|
|||||||
|
api_key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiJjaHJpcyIsInN1YiI6IkFQSUtleSIsImlhdCI6MTcwNzg0MTk4OX0.nqDqNfNNNVHLuvA3wsvcR8aBwYjqUkCGDAn3AiBMU34
|
||||||
|
blobs_path: /blobs/
|
||||||
|
blobs_storage: FILESYSTEM
|
||||||
|
calculate_md5: false
|
||||||
|
continue_playlist_default: true
|
||||||
|
create_image_clip_from_videos: false
|
||||||
|
cssenabled: false
|
||||||
|
dangerous_allow_public_without_auth: "false"
|
||||||
|
database: /db/stash-go.sqlite
|
||||||
|
defaults:
|
||||||
|
auto_tag_task:
|
||||||
|
paths: []
|
||||||
|
performers:
|
||||||
|
- '*'
|
||||||
|
studios:
|
||||||
|
- '*'
|
||||||
|
tags: []
|
||||||
|
generate_task:
|
||||||
|
clippreviews: false
|
||||||
|
covers: false
|
||||||
|
forcetranscodes: false
|
||||||
|
imagepreviews: false
|
||||||
|
imagethumbnails: false
|
||||||
|
interactiveheatmapsspeeds: false
|
||||||
|
markerids: []
|
||||||
|
markerimagepreviews: false
|
||||||
|
markers: true
|
||||||
|
markerscreenshots: false
|
||||||
|
overwrite: false
|
||||||
|
phashes: false
|
||||||
|
previewoptions:
|
||||||
|
previewexcludeend: "0"
|
||||||
|
previewexcludestart: "0"
|
||||||
|
previewpreset: slow
|
||||||
|
previewsegmentduration: 0.75
|
||||||
|
previewsegments: 18
|
||||||
|
previews: false
|
||||||
|
sceneids: []
|
||||||
|
sprites: false
|
||||||
|
transcodes: false
|
||||||
|
identify_task:
|
||||||
|
options:
|
||||||
|
fieldoptions:
|
||||||
|
- createmissing: null
|
||||||
|
field: title
|
||||||
|
strategy: OVERWRITE
|
||||||
|
- createmissing: true
|
||||||
|
field: studio
|
||||||
|
strategy: MERGE
|
||||||
|
- createmissing: true
|
||||||
|
field: performers
|
||||||
|
strategy: MERGE
|
||||||
|
- createmissing: true
|
||||||
|
field: tags
|
||||||
|
strategy: MERGE
|
||||||
|
includemaleperformers: true
|
||||||
|
setcoverimage: true
|
||||||
|
setorganized: false
|
||||||
|
skipmultiplematches: true
|
||||||
|
skipmultiplematchtag: "1159"
|
||||||
|
skipsinglenameperformers: true
|
||||||
|
skipsinglenameperformertag: "524"
|
||||||
|
paths: []
|
||||||
|
sceneids: []
|
||||||
|
sources:
|
||||||
|
- options: null
|
||||||
|
source:
|
||||||
|
scraperid: null
|
||||||
|
stashboxendpoint: https://stashdb.org/graphql
|
||||||
|
stashboxindex: null
|
||||||
|
- options: null
|
||||||
|
source:
|
||||||
|
scraperid: null
|
||||||
|
stashboxendpoint: https://metadataapi.net/graphql
|
||||||
|
stashboxindex: null
|
||||||
|
scan_task:
|
||||||
|
scangenerateclippreviews: false
|
||||||
|
scangeneratecovers: true
|
||||||
|
scangenerateimagepreviews: false
|
||||||
|
scangeneratephashes: true
|
||||||
|
scangeneratepreviews: true
|
||||||
|
scangeneratesprites: true
|
||||||
|
scangeneratethumbnails: true
|
||||||
|
dlna:
|
||||||
|
default_whitelist:
|
||||||
|
- 192.168.1.149
|
||||||
|
video_sort_order: created_at
|
||||||
|
ffmpeg:
|
||||||
|
hardware_acceleration: true
|
||||||
|
gallery_cover_regex: (poster|cover|folder|board)\.[^\.]+$
|
||||||
|
generated: ""
|
||||||
|
host: 0.0.0.0
|
||||||
|
jwt_secret_key: 45dacba9bd122244b17a0365256a8e826f3c8e189cf21d26135b452824a9a037
|
||||||
|
menu_items:
|
||||||
|
- scenes
|
||||||
|
- groups
|
||||||
|
- markers
|
||||||
|
- galleries
|
||||||
|
- performers
|
||||||
|
- studios
|
||||||
|
- tags
|
||||||
|
no_proxy: localhost,127.0.0.1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12
|
||||||
|
nobrowser: true
|
||||||
|
notifications_enabled: false
|
||||||
|
parallel_tasks: 0
|
||||||
|
password: $2a$04$T8nN490lPHZw1rf6v1Q2ze/VAn3hhgiJ6l/SSV96gBMwhmDLk/dXq
|
||||||
|
plugins:
|
||||||
|
disabled:
|
||||||
|
- VideoScrollWheel
|
||||||
|
- TPDBMarkers
|
||||||
|
package_sources:
|
||||||
|
- localpath: community
|
||||||
|
name: Community (stable)
|
||||||
|
url: https://stashapp.github.io/CommunityScripts/stable/index.yml
|
||||||
|
- localpath: stash-plugins
|
||||||
|
name: Stash-Plugins
|
||||||
|
url: https://7djx1qp.github.io/stash-plugins/main/index.yml
|
||||||
|
settings:
|
||||||
|
cjCardTweaks:
|
||||||
|
addBannerDimension: true
|
||||||
|
fileCount: true
|
||||||
|
performerProfileCards: true
|
||||||
|
stashStashIdInput:
|
||||||
|
performers: true
|
||||||
|
studios: true
|
||||||
|
tPdBmarkers:
|
||||||
|
disableSceneMarkerHook: true
|
||||||
|
timestampTrade:
|
||||||
|
createMovieFromScene: false
|
||||||
|
disableGalleryLookupHook: true
|
||||||
|
disableSceneMarkersHook: false
|
||||||
|
extraUrls: false
|
||||||
|
mergeMarkers: true
|
||||||
|
plugins_path: /plugins/
|
||||||
|
port: 9999
|
||||||
|
preview_audio: true
|
||||||
|
preview_exclude_end: 2%
|
||||||
|
preview_exclude_start: 5%
|
||||||
|
preview_preset: slow
|
||||||
|
preview_segment_duration: 1
|
||||||
|
preview_segments: 30
|
||||||
|
python_path: ""
|
||||||
|
scrapers:
|
||||||
|
package_sources:
|
||||||
|
- localpath: community
|
||||||
|
name: Community (stable)
|
||||||
|
url: https://stashapp.github.io/CommunityScrapers/stable/index.yml
|
||||||
|
scrapers_path: /scrapers/
|
||||||
|
security_tripwire_accessed_from_public_internet: ""
|
||||||
|
sequential_scanning: false
|
||||||
|
session_store_key: 72b6a684a4d0f214e5abb049f0110e2df38c43b90fe6cd78ff646607d48a5dae
|
||||||
|
show_one_time_moved_notification: false
|
||||||
|
sound_on_preview: false
|
||||||
|
stash:
|
||||||
|
- excludeimage: true
|
||||||
|
excludevideo: false
|
||||||
|
path: /data/
|
||||||
|
- excludeimage: true
|
||||||
|
excludevideo: false
|
||||||
|
path: /stash
|
||||||
|
- excludeimage: true
|
||||||
|
excludevideo: false
|
||||||
|
path: /junk
|
||||||
|
- excludeimage: true
|
||||||
|
excludevideo: false
|
||||||
|
path: /movies
|
||||||
|
- excludeimage: true
|
||||||
|
excludevideo: false
|
||||||
|
path: /packs
|
||||||
|
stash_boxes:
|
||||||
|
- apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiI5ZDIxZTM2NS01N2QyLTRiZDUtODVkOC1kOGQwMjIxYTc2ZTMiLCJzdWIiOiJBUElLZXkiLCJpYXQiOjE2OTc5NjUyOTh9.Yk5agCaeidWqXyjsO29Lb6wnEglXHjSZdE94cDuLx2g
|
||||||
|
endpoint: https://stashdb.org/graphql
|
||||||
|
name: stashdb.org
|
||||||
|
- apikey: H04DEzLXkMqUBtNdS9CYOI4ek9KZb0EBSfNhTt1A87ee11b2
|
||||||
|
endpoint: https://theporndb.net/graphql
|
||||||
|
name: ThePornDB
|
||||||
|
theme_color: '#202b33'
|
||||||
|
ui:
|
||||||
|
advancedMode: true
|
||||||
|
compactExpandedDetails: false
|
||||||
|
defaultFilters:
|
||||||
|
performers:
|
||||||
|
find_filter:
|
||||||
|
direction: ASC
|
||||||
|
page: "1"
|
||||||
|
per_page: "40"
|
||||||
|
q: ""
|
||||||
|
sort: name
|
||||||
|
mode: PERFORMERS
|
||||||
|
object_filter:
|
||||||
|
gender:
|
||||||
|
modifier: EQUALS
|
||||||
|
value: Female
|
||||||
|
ui_options:
|
||||||
|
display_mode: "0"
|
||||||
|
zoom_index: "1"
|
||||||
|
scenes:
|
||||||
|
find_filter:
|
||||||
|
direction: DESC
|
||||||
|
page: "1"
|
||||||
|
per_page: "20"
|
||||||
|
q: ""
|
||||||
|
sort: random_81535573
|
||||||
|
mode: SCENES
|
||||||
|
object_filter:
|
||||||
|
path:
|
||||||
|
modifier: MATCHES_REGEX
|
||||||
|
value: ^/data/.*$|^/packs/.*$|^/movies/.*$
|
||||||
|
phash_distance:
|
||||||
|
modifier: NOT_NULL
|
||||||
|
value:
|
||||||
|
distance: "0"
|
||||||
|
value: ""
|
||||||
|
play_duration:
|
||||||
|
modifier: LESS_THAN
|
||||||
|
value:
|
||||||
|
value: "4"
|
||||||
|
studios:
|
||||||
|
modifier: NOT_NULL
|
||||||
|
value:
|
||||||
|
depth: "0"
|
||||||
|
excluded: []
|
||||||
|
items: []
|
||||||
|
ui_options:
|
||||||
|
display_mode: "0"
|
||||||
|
zoom_index: "3"
|
||||||
|
enableChromecast: true
|
||||||
|
enableMovieBackgroundImage: true
|
||||||
|
enablePerformerBackgroundImage: true
|
||||||
|
enableStudioBackgroundImage: true
|
||||||
|
frontPageContent:
|
||||||
|
- __typename: CustomFilter
|
||||||
|
direction: DESC
|
||||||
|
message:
|
||||||
|
id: recently_released_objects
|
||||||
|
values:
|
||||||
|
objects: Scenes
|
||||||
|
mode: SCENES
|
||||||
|
sortBy: date
|
||||||
|
- __typename: CustomFilter
|
||||||
|
direction: DESC
|
||||||
|
message:
|
||||||
|
id: recently_added_objects
|
||||||
|
values:
|
||||||
|
objects: Studios
|
||||||
|
mode: STUDIOS
|
||||||
|
sortBy: created_at
|
||||||
|
- __typename: CustomFilter
|
||||||
|
direction: DESC
|
||||||
|
message:
|
||||||
|
id: recently_released_objects
|
||||||
|
values:
|
||||||
|
objects: Movies
|
||||||
|
mode: MOVIES
|
||||||
|
sortBy: date
|
||||||
|
- __typename: CustomFilter
|
||||||
|
direction: DESC
|
||||||
|
message:
|
||||||
|
id: recently_added_objects
|
||||||
|
values:
|
||||||
|
objects: Performers
|
||||||
|
mode: PERFORMERS
|
||||||
|
sortBy: created_at
|
||||||
|
- __typename: CustomFilter
|
||||||
|
direction: DESC
|
||||||
|
message:
|
||||||
|
id: recently_released_objects
|
||||||
|
values:
|
||||||
|
objects: Galleries
|
||||||
|
mode: GALLERIES
|
||||||
|
sortBy: date
|
||||||
|
lastNoteSeen: "20240826"
|
||||||
|
minimumPlayPercent: "10"
|
||||||
|
pinnedFilters:
|
||||||
|
performers:
|
||||||
|
- isMissing
|
||||||
|
scenes:
|
||||||
|
- path
|
||||||
|
- isMissing
|
||||||
|
- tags
|
||||||
|
ratingSystemOptions:
|
||||||
|
starPrecision: half
|
||||||
|
type: stars
|
||||||
|
taggerConfig:
|
||||||
|
blacklist:
|
||||||
|
- \sXXX\s
|
||||||
|
- 1080p
|
||||||
|
- 720p
|
||||||
|
- 2160p
|
||||||
|
- KTR
|
||||||
|
- RARBG
|
||||||
|
- \scom\s
|
||||||
|
- \[
|
||||||
|
- \]
|
||||||
|
createParentStudios: true
|
||||||
|
excludedPerformerFields:
|
||||||
|
- name
|
||||||
|
excludedStudioFields:
|
||||||
|
- name
|
||||||
|
fingerprintQueue:
|
||||||
|
https://stashdb.org/graphql:
|
||||||
|
- "14115"
|
||||||
|
- "13320"
|
||||||
|
- "13623"
|
||||||
|
- "17433"
|
||||||
|
- "14152"
|
||||||
|
- "14206"
|
||||||
|
- "14168"
|
||||||
|
- "17294"
|
||||||
|
- "13905"
|
||||||
|
- "13385"
|
||||||
|
- "13837"
|
||||||
|
- "16837"
|
||||||
|
- "16596"
|
||||||
|
- "16686"
|
||||||
|
- "13382"
|
||||||
|
- "15576"
|
||||||
|
- "16643"
|
||||||
|
- "12278"
|
||||||
|
- "16976"
|
||||||
|
- "16406"
|
||||||
|
- "14106"
|
||||||
|
- "12610"
|
||||||
|
- "17452"
|
||||||
|
- "17174"
|
||||||
|
- "12615"
|
||||||
|
- "13066"
|
||||||
|
- "12532"
|
||||||
|
- "17526"
|
||||||
|
- "17402"
|
||||||
|
- "17170"
|
||||||
|
- "17273"
|
||||||
|
- "16997"
|
||||||
|
- "17525"
|
||||||
|
- "12403"
|
||||||
|
- "15519"
|
||||||
|
- "17428"
|
||||||
|
- "16421"
|
||||||
|
- "14631"
|
||||||
|
- "17523"
|
||||||
|
- "17287"
|
||||||
|
- "17528"
|
||||||
|
- "15901"
|
||||||
|
- "17398"
|
||||||
|
- "16135"
|
||||||
|
- "13178"
|
||||||
|
- "17282"
|
||||||
|
- "17724"
|
||||||
|
- "17727"
|
||||||
|
- "17729"
|
||||||
|
- "17709"
|
||||||
|
- "17728"
|
||||||
|
- "17737"
|
||||||
|
- "17713"
|
||||||
|
- "17726"
|
||||||
|
- "17750"
|
||||||
|
- "17748"
|
||||||
|
- "17742"
|
||||||
|
- "17747"
|
||||||
|
- "17754"
|
||||||
|
- "17719"
|
||||||
|
- "17751"
|
||||||
|
- "17714"
|
||||||
|
- "17721"
|
||||||
|
- "17712"
|
||||||
|
- "17711"
|
||||||
|
- "17739"
|
||||||
|
- "17753"
|
||||||
|
- "17710"
|
||||||
|
- "17752"
|
||||||
|
- "17741"
|
||||||
|
- "17734"
|
||||||
|
- "17720"
|
||||||
|
- "17723"
|
||||||
|
- "17707"
|
||||||
|
- "17725"
|
||||||
|
- "17746"
|
||||||
|
- "17755"
|
||||||
|
- "17757"
|
||||||
|
- "17749"
|
||||||
|
- "17730"
|
||||||
|
- "17717"
|
||||||
|
- "17756"
|
||||||
|
- "17731"
|
||||||
|
- "17716"
|
||||||
|
- "17740"
|
||||||
|
- "17733"
|
||||||
|
- "17735"
|
||||||
|
- "17758"
|
||||||
|
- "17708"
|
||||||
|
- "17718"
|
||||||
|
- "17743"
|
||||||
|
- "17745"
|
||||||
|
- "17786"
|
||||||
|
- "17878"
|
||||||
|
- "17817"
|
||||||
|
- "17814"
|
||||||
|
- "17813"
|
||||||
|
- "17815"
|
||||||
|
- "17865"
|
||||||
|
- "17893"
|
||||||
|
- "17812"
|
||||||
|
- "17792"
|
||||||
|
- "17818"
|
||||||
|
- "17819"
|
||||||
|
- "17826"
|
||||||
|
- "17787"
|
||||||
|
- "17797"
|
||||||
|
- "17804"
|
||||||
|
- "17799"
|
||||||
|
- "17795"
|
||||||
|
- "17798"
|
||||||
|
- "17828"
|
||||||
|
- "17802"
|
||||||
|
- "17805"
|
||||||
|
- "17827"
|
||||||
|
- "17831"
|
||||||
|
- "17832"
|
||||||
|
- "17839"
|
||||||
|
- "17883"
|
||||||
|
- "17845"
|
||||||
|
- "17842"
|
||||||
|
- "17810"
|
||||||
|
- "17807"
|
||||||
|
- "17844"
|
||||||
|
- "17785"
|
||||||
|
- "17822"
|
||||||
|
- "17808"
|
||||||
|
- "17811"
|
||||||
|
- "17823"
|
||||||
|
- "17816"
|
||||||
|
- "17837"
|
||||||
|
- "17836"
|
||||||
|
- "17825"
|
||||||
|
- "17833"
|
||||||
|
- "17838"
|
||||||
|
- "17830"
|
||||||
|
- "17889"
|
||||||
|
- "17891"
|
||||||
|
- "17806"
|
||||||
|
- "17770"
|
||||||
|
- "17801"
|
||||||
|
- "17843"
|
||||||
|
- "17835"
|
||||||
|
- "17809"
|
||||||
|
- "17790"
|
||||||
|
- "17796"
|
||||||
|
- "17789"
|
||||||
|
- "17820"
|
||||||
|
- "17896"
|
||||||
|
- "17867"
|
||||||
|
- "17908"
|
||||||
|
- "17909"
|
||||||
|
- "17912"
|
||||||
|
- "17886"
|
||||||
|
- "17885"
|
||||||
|
- "17794"
|
||||||
|
- "17803"
|
||||||
|
- "17821"
|
||||||
|
- "17793"
|
||||||
|
- "17784"
|
||||||
|
- "17890"
|
||||||
|
- "17834"
|
||||||
|
- "17850"
|
||||||
|
- "17800"
|
||||||
|
- "17848"
|
||||||
|
- "17841"
|
||||||
|
- "17849"
|
||||||
|
- "17846"
|
||||||
|
- "17852"
|
||||||
|
- "17824"
|
||||||
|
- "17851"
|
||||||
|
- "17961"
|
||||||
|
- "17875"
|
||||||
|
- "17880"
|
||||||
|
- "17870"
|
||||||
|
- "17856"
|
||||||
|
- "17895"
|
||||||
|
- "17897"
|
||||||
|
- "17858"
|
||||||
|
- "17854"
|
||||||
|
- "17855"
|
||||||
|
- "17860"
|
||||||
|
- "17861"
|
||||||
|
- "17859"
|
||||||
|
- "17864"
|
||||||
|
- "17857"
|
||||||
|
- "17862"
|
||||||
|
- "17863"
|
||||||
|
- "17906"
|
||||||
|
- "17927"
|
||||||
|
- "17894"
|
||||||
|
- "17911"
|
||||||
|
- "17905"
|
||||||
|
- "17873"
|
||||||
|
- "17918"
|
||||||
|
- "17892"
|
||||||
|
- "17888"
|
||||||
|
- "17916"
|
||||||
|
- "17881"
|
||||||
|
- "17920"
|
||||||
|
- "17884"
|
||||||
|
- "17930"
|
||||||
|
- "17921"
|
||||||
|
- "17915"
|
||||||
|
- "17922"
|
||||||
|
- "17928"
|
||||||
|
- "17924"
|
||||||
|
- "17874"
|
||||||
|
- "17877"
|
||||||
|
- "17879"
|
||||||
|
- "17871"
|
||||||
|
- "17869"
|
||||||
|
- "17926"
|
||||||
|
- "17876"
|
||||||
|
- "17882"
|
||||||
|
- "17917"
|
||||||
|
- "17872"
|
||||||
|
- "17868"
|
||||||
|
- "17913"
|
||||||
|
- "17903"
|
||||||
|
- "17919"
|
||||||
|
- "17914"
|
||||||
|
- "17904"
|
||||||
|
- "17933"
|
||||||
|
- "17934"
|
||||||
|
- "17932"
|
||||||
|
- "17887"
|
||||||
|
- "17866"
|
||||||
|
- "17929"
|
||||||
|
- "17923"
|
||||||
|
- "17910"
|
||||||
|
- "17925"
|
||||||
|
- "17902"
|
||||||
|
- "17931"
|
||||||
|
- "17898"
|
||||||
|
- "17901"
|
||||||
|
- "17900"
|
||||||
|
- "17899"
|
||||||
|
- "17907"
|
||||||
|
- "17935"
|
||||||
|
- "17939"
|
||||||
|
- "17937"
|
||||||
|
- "17936"
|
||||||
|
- "17938"
|
||||||
|
- "17943"
|
||||||
|
- "17947"
|
||||||
|
- "17940"
|
||||||
|
- "17955"
|
||||||
|
- "17952"
|
||||||
|
- "17948"
|
||||||
|
- "17946"
|
||||||
|
- "17941"
|
||||||
|
- "17951"
|
||||||
|
- "17942"
|
||||||
|
- "17944"
|
||||||
|
- "17953"
|
||||||
|
- "17949"
|
||||||
|
- "17945"
|
||||||
|
- "17954"
|
||||||
|
- "17983"
|
||||||
|
- "17987"
|
||||||
|
- "17968"
|
||||||
|
- "17960"
|
||||||
|
- "17959"
|
||||||
|
- "17988"
|
||||||
|
- "17972"
|
||||||
|
- "17965"
|
||||||
|
- "17984"
|
||||||
|
- "17986"
|
||||||
|
- "17967"
|
||||||
|
- "17976"
|
||||||
|
- "17962"
|
||||||
|
- "17978"
|
||||||
|
- "17977"
|
||||||
|
- "17970"
|
||||||
|
- "17969"
|
||||||
|
- "17985"
|
||||||
|
- "17991"
|
||||||
|
- "17980"
|
||||||
|
- "17975"
|
||||||
|
- "17974"
|
||||||
|
- "17964"
|
||||||
|
- "17981"
|
||||||
|
- "17957"
|
||||||
|
- "17993"
|
||||||
|
- "17989"
|
||||||
|
- "17973"
|
||||||
|
- "17958"
|
||||||
|
- "17963"
|
||||||
|
- "17966"
|
||||||
|
- "17971"
|
||||||
|
- "17990"
|
||||||
|
- "17979"
|
||||||
|
- "18003"
|
||||||
|
- "18001"
|
||||||
|
- "17995"
|
||||||
|
- "18002"
|
||||||
|
- "17994"
|
||||||
|
- "18000"
|
||||||
|
- "17997"
|
||||||
|
- "17996"
|
||||||
|
- "17999"
|
||||||
|
- "17998"
|
||||||
|
- "18004"
|
||||||
|
- "18005"
|
||||||
|
- "18009"
|
||||||
|
- "18008"
|
||||||
|
- "18012"
|
||||||
|
- "18010"
|
||||||
|
- "18007"
|
||||||
|
- "18013"
|
||||||
|
- "18006"
|
||||||
|
- "18011"
|
||||||
|
- "18207"
|
||||||
|
- "18215"
|
||||||
|
- "18217"
|
||||||
|
- "18187"
|
||||||
|
- "18190"
|
||||||
|
- "18196"
|
||||||
|
- "18191"
|
||||||
|
- "18194"
|
||||||
|
- "18227"
|
||||||
|
- "18188"
|
||||||
|
- "18281"
|
||||||
|
- "18192"
|
||||||
|
- "18189"
|
||||||
|
- "18204"
|
||||||
|
- "18246"
|
||||||
|
- "18245"
|
||||||
|
- "18208"
|
||||||
|
- "18209"
|
||||||
|
- "18199"
|
||||||
|
- "18232"
|
||||||
|
- "18213"
|
||||||
|
- "18019"
|
||||||
|
- "18014"
|
||||||
|
- "18015"
|
||||||
|
- "18016"
|
||||||
|
- "18017"
|
||||||
|
- "18018"
|
||||||
|
- "18020"
|
||||||
|
- "18249"
|
||||||
|
- "18219"
|
||||||
|
- "18229"
|
||||||
|
- "18221"
|
||||||
|
- "18233"
|
||||||
|
- "18220"
|
||||||
|
- "18198"
|
||||||
|
- "18195"
|
||||||
|
- "18212"
|
||||||
|
- "18211"
|
||||||
|
- "18239"
|
||||||
|
- "18223"
|
||||||
|
- "18203"
|
||||||
|
- "18222"
|
||||||
|
- "18226"
|
||||||
|
- "18210"
|
||||||
|
- "18225"
|
||||||
|
- "18218"
|
||||||
|
- "18224"
|
||||||
|
- "18214"
|
||||||
|
- "18231"
|
||||||
|
- "18238"
|
||||||
|
- "18243"
|
||||||
|
- "18216"
|
||||||
|
- "18202"
|
||||||
|
- "18240"
|
||||||
|
- "18205"
|
||||||
|
- "18197"
|
||||||
|
- "18242"
|
||||||
|
- "18201"
|
||||||
|
- "18241"
|
||||||
|
- "18228"
|
||||||
|
- "18200"
|
||||||
|
- "18230"
|
||||||
|
- "18193"
|
||||||
|
- "18234"
|
||||||
|
- "18237"
|
||||||
|
- "18278"
|
||||||
|
- "18279"
|
||||||
|
- "18359"
|
||||||
|
- "18303"
|
||||||
|
- "18305"
|
||||||
|
- "18297"
|
||||||
|
- "18283"
|
||||||
|
- "18275"
|
||||||
|
- "18285"
|
||||||
|
- "18298"
|
||||||
|
- "18252"
|
||||||
|
- "18250"
|
||||||
|
- "18247"
|
||||||
|
- "18206"
|
||||||
|
- "18253"
|
||||||
|
- "18254"
|
||||||
|
- "18244"
|
||||||
|
- "18236"
|
||||||
|
- "18251"
|
||||||
|
- "18248"
|
||||||
|
- "18259"
|
||||||
|
- "18256"
|
||||||
|
- "18257"
|
||||||
|
- "18258"
|
||||||
|
- "18261"
|
||||||
|
- "18260"
|
||||||
|
- "18255"
|
||||||
|
- "18267"
|
||||||
|
- "18265"
|
||||||
|
- "18264"
|
||||||
|
- "18263"
|
||||||
|
- "18266"
|
||||||
|
- "18268"
|
||||||
|
- "18262"
|
||||||
|
- "18315"
|
||||||
|
- "18294"
|
||||||
|
- "18309"
|
||||||
|
- "18314"
|
||||||
|
- "18274"
|
||||||
|
- "18288"
|
||||||
|
- "18277"
|
||||||
|
- "18273"
|
||||||
|
- "18282"
|
||||||
|
- "18329"
|
||||||
|
- "18312"
|
||||||
|
- "18308"
|
||||||
|
- "18311"
|
||||||
|
- "18287"
|
||||||
|
- "18327"
|
||||||
|
- "18307"
|
||||||
|
- "18291"
|
||||||
|
- "18271"
|
||||||
|
- "18269"
|
||||||
|
- "18295"
|
||||||
|
- "18270"
|
||||||
|
- "18272"
|
||||||
|
- "18276"
|
||||||
|
- "18290"
|
||||||
|
- "18299"
|
||||||
|
- "18331"
|
||||||
|
- "18332"
|
||||||
|
- "18328"
|
||||||
|
- "18306"
|
||||||
|
- "18280"
|
||||||
|
- "18317"
|
||||||
|
- "18304"
|
||||||
|
- "18333"
|
||||||
|
- "18300"
|
||||||
|
- "18336"
|
||||||
|
- "18296"
|
||||||
|
- "18339"
|
||||||
|
- "18326"
|
||||||
|
- "18310"
|
||||||
|
- "18292"
|
||||||
|
- "18322"
|
||||||
|
- "18323"
|
||||||
|
- "18343"
|
||||||
|
- "18313"
|
||||||
|
- "18293"
|
||||||
|
- "18286"
|
||||||
|
- "18284"
|
||||||
|
- "18337"
|
||||||
|
- "18338"
|
||||||
|
- "18334"
|
||||||
|
- "18330"
|
||||||
|
- "18335"
|
||||||
|
- "18352"
|
||||||
|
- "18372"
|
||||||
|
- "18402"
|
||||||
|
- "18347"
|
||||||
|
- "18348"
|
||||||
|
- "18396"
|
||||||
|
- "18382"
|
||||||
|
- "18384"
|
||||||
|
- "18357"
|
||||||
|
- "18405"
|
||||||
|
- "18409"
|
||||||
|
- "18371"
|
||||||
|
- "18389"
|
||||||
|
- "18374"
|
||||||
|
- "18392"
|
||||||
|
- "18388"
|
||||||
|
- "18367"
|
||||||
|
- "18404"
|
||||||
|
- "18380"
|
||||||
|
- "18361"
|
||||||
|
- "18383"
|
||||||
|
- "18391"
|
||||||
|
- "18398"
|
||||||
|
- "18350"
|
||||||
|
- "18373"
|
||||||
|
- "18408"
|
||||||
|
- "18400"
|
||||||
|
- "18377"
|
||||||
|
- "18379"
|
||||||
|
- "18403"
|
||||||
|
- "18354"
|
||||||
|
- "18362"
|
||||||
|
- "18394"
|
||||||
|
- "18410"
|
||||||
|
- "18458"
|
||||||
|
- "18459"
|
||||||
|
- "18460"
|
||||||
|
- "18455"
|
||||||
|
- "18457"
|
||||||
|
- "18456"
|
||||||
|
- "18454"
|
||||||
|
- "18453"
|
||||||
|
- "18452"
|
||||||
|
- "18451"
|
||||||
|
- "18450"
|
||||||
|
- "18448"
|
||||||
|
- "18449"
|
||||||
|
- "18447"
|
||||||
|
- "18446"
|
||||||
|
- "18445"
|
||||||
|
- "18442"
|
||||||
|
- "18444"
|
||||||
|
- "18443"
|
||||||
|
- "18441"
|
||||||
|
- "18438"
|
||||||
|
- "18439"
|
||||||
|
- "18437"
|
||||||
|
- "18436"
|
||||||
|
- "18435"
|
||||||
|
- "18434"
|
||||||
|
- "18433"
|
||||||
|
- "18432"
|
||||||
|
- "18430"
|
||||||
|
- "18431"
|
||||||
|
- "18428"
|
||||||
|
- "18429"
|
||||||
|
- "18427"
|
||||||
|
- "18426"
|
||||||
|
- "18425"
|
||||||
|
- "18423"
|
||||||
|
- "18424"
|
||||||
|
- "18422"
|
||||||
|
- "18421"
|
||||||
|
- "18420"
|
||||||
|
- "18419"
|
||||||
|
- "18418"
|
||||||
|
- "18417"
|
||||||
|
- "18416"
|
||||||
|
- "18415"
|
||||||
|
- "18413"
|
||||||
|
- "18411"
|
||||||
|
- "18412"
|
||||||
|
- "18414"
|
||||||
|
- "18461"
|
||||||
|
- "18462"
|
||||||
|
- "18463"
|
||||||
|
- "18465"
|
||||||
|
- "18466"
|
||||||
|
- "18469"
|
||||||
|
- "18468"
|
||||||
|
- "18472"
|
||||||
|
- "18471"
|
||||||
|
- "18473"
|
||||||
|
- "18474"
|
||||||
|
- "18477"
|
||||||
|
- "18476"
|
||||||
|
- "18478"
|
||||||
|
- "18479"
|
||||||
|
- "18480"
|
||||||
|
- "18481"
|
||||||
|
- "18482"
|
||||||
|
- "18483"
|
||||||
|
- "18484"
|
||||||
|
- "18485"
|
||||||
|
- "18487"
|
||||||
|
- "18488"
|
||||||
|
- "18489"
|
||||||
|
- "18490"
|
||||||
|
- "18491"
|
||||||
|
- "18493"
|
||||||
|
- "18492"
|
||||||
|
- "18495"
|
||||||
|
- "18494"
|
||||||
|
- "18497"
|
||||||
|
- "18496"
|
||||||
|
- "18498"
|
||||||
|
- "18499"
|
||||||
|
- "18501"
|
||||||
|
- "18503"
|
||||||
|
- "18502"
|
||||||
|
- "18504"
|
||||||
|
- "18505"
|
||||||
|
- "18507"
|
||||||
|
- "18506"
|
||||||
|
- "18512"
|
||||||
|
- "18486"
|
||||||
|
- "18517"
|
||||||
|
- "18534"
|
||||||
|
- "18532"
|
||||||
|
- "18535"
|
||||||
|
- "18533"
|
||||||
|
- "18537"
|
||||||
|
- "18536"
|
||||||
|
- "18539"
|
||||||
|
- "18540"
|
||||||
|
- "18541"
|
||||||
|
- "18543"
|
||||||
|
- "18544"
|
||||||
|
- "18545"
|
||||||
|
- "18546"
|
||||||
|
- "18547"
|
||||||
|
- "18550"
|
||||||
|
- "18552"
|
||||||
|
- "18554"
|
||||||
|
- "18556"
|
||||||
|
- "18555"
|
||||||
|
- "18557"
|
||||||
|
- "18559"
|
||||||
|
- "18560"
|
||||||
|
- "18551"
|
||||||
|
- "18558"
|
||||||
|
https://theporndb.net/graphql:
|
||||||
|
- "18500"
|
||||||
|
- "18538"
|
||||||
|
- "18542"
|
||||||
|
- "18549"
|
||||||
|
- "18553"
|
||||||
|
markSceneAsOrganizedOnSave: false
|
||||||
|
mode: auto
|
||||||
|
selectedEndpoint: https://stashdb.org/graphql
|
||||||
|
setCoverImage: true
|
||||||
|
setTags: true
|
||||||
|
showMales: true
|
||||||
|
tagOperation: merge
|
||||||
|
taskDefaults:
|
||||||
|
cleanGenerated:
|
||||||
|
blobFiles: true
|
||||||
|
dryRun: false
|
||||||
|
imageThumbnails: false
|
||||||
|
markers: true
|
||||||
|
screenshots: true
|
||||||
|
sprites: true
|
||||||
|
transcodes: true
|
||||||
|
generate:
|
||||||
|
clipPreviews: false
|
||||||
|
covers: true
|
||||||
|
imagePreviews: false
|
||||||
|
imageThumbnails: false
|
||||||
|
interactiveHeatmapsSpeeds: false
|
||||||
|
markerImagePreviews: false
|
||||||
|
markerScreenshots: false
|
||||||
|
markers: false
|
||||||
|
phashes: true
|
||||||
|
previewOptions:
|
||||||
|
previewExcludeEnd: "0"
|
||||||
|
previewExcludeStart: "0"
|
||||||
|
previewPreset: slow
|
||||||
|
previewSegmentDuration: "0.75"
|
||||||
|
previewSegments: "18"
|
||||||
|
previews: true
|
||||||
|
sprites: true
|
||||||
|
transcodes: false
|
||||||
|
trackActivity: true
|
||||||
|
username: chris
|
||||||
|
video_file_naming_algorithm: OSHASH
|
||||||
|
write_image_thumbnails: true
|
||||||
0
stashapp/config/custom.css
Executable file
0
stashapp/config/custom.css
Executable file
59
stashapp/docker-compose.yml
Normal file
59
stashapp/docker-compose.yml
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# APPNICENAME=Stash
|
||||||
|
# APPDESCRIPTION=An organizer for your porn, written in Go
|
||||||
|
name: stashapp
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: stashapp/stash:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
## the container's port must be the same with the STASH_PORT in the environment section
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
ports:
|
||||||
|
- "9999:9999"
|
||||||
|
expose:
|
||||||
|
- "9999"
|
||||||
|
## If you intend to use stash's DLNA functionality uncomment the below network mode and comment out the above ports section
|
||||||
|
# network_mode: host
|
||||||
|
logging:
|
||||||
|
driver: "json-file"
|
||||||
|
options:
|
||||||
|
max-file: "10"
|
||||||
|
max-size: "2m"
|
||||||
|
environment:
|
||||||
|
- STASH_STASH=/data/
|
||||||
|
- STASH_GENERATED=/generated/
|
||||||
|
- STASH_METADATA=/metadata/
|
||||||
|
- STASH_CACHE=/cache/
|
||||||
|
## Adjust below to change default port (9999)
|
||||||
|
- STASH_PORT=9999
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
## Adjust below paths (the left part) to your liking.
|
||||||
|
## E.g. you can change ./config:/root/.stash to ./stash:/root/.stash
|
||||||
|
|
||||||
|
## Keep configs, scrapers, and plugins here.
|
||||||
|
- ./config:/root/.stash
|
||||||
|
## Point this at your collection.
|
||||||
|
- /media/raid/junk_transfer:/data
|
||||||
|
- /media/raid/stash:/stash
|
||||||
|
- /media/junk/junk:/junk
|
||||||
|
- /media/raid/junk_movies_transfer:/movies
|
||||||
|
- /media/raid/junk_pack_transfer:/packs
|
||||||
|
## This is where your stash's metadata lives
|
||||||
|
- ./data/metadata:/metadata
|
||||||
|
## Any other cache content.
|
||||||
|
- ./data/cache:/cache
|
||||||
|
## Where to store binary blob data (scene covers, images)
|
||||||
|
- ./data/blobs:/blobs
|
||||||
|
## Where to store plugins
|
||||||
|
- ./data/plugins:/plugins
|
||||||
|
## Where to store scrapers
|
||||||
|
- ./data/scrapers:/scrapers
|
||||||
|
## Where to store database file
|
||||||
|
- ./data/db:/db
|
||||||
|
## Where to store generated content (screenshots,previews,transcodes,sprites)
|
||||||
|
- /media/stashapp/generated:/generated
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
29
triliumnext-notes/config/config.ini
Normal file
29
triliumnext-notes/config/config.ini
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
[General]
|
||||||
|
# Instance name can be used to distinguish between different instances using backend api.getInstanceName()
|
||||||
|
instanceName=
|
||||||
|
|
||||||
|
# set to true to allow using Trilium without authentication (makes sense for server build only, desktop build doesn't need password)
|
||||||
|
noAuthentication=false
|
||||||
|
|
||||||
|
# set to true to disable backups (e.g. because of limited space on server)
|
||||||
|
noBackup=false
|
||||||
|
|
||||||
|
# Disable automatically generating desktop icon
|
||||||
|
# noDesktopIcon=true
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
# host setting is relevant only for web deployments - set the host on which the server will listen
|
||||||
|
# host=0.0.0.0
|
||||||
|
# port setting is relevant only for web deployments, desktop builds run on a fixed port (changeable with TRILIUM_PORT environment variable)
|
||||||
|
port=8080
|
||||||
|
# true for TLS/SSL/HTTPS (secure), false for HTTP (insecure).
|
||||||
|
https=false
|
||||||
|
# path to certificate (run "bash bin/generate-cert.sh" to generate self-signed certificate). Relevant only if https=true
|
||||||
|
certPath=
|
||||||
|
keyPath=
|
||||||
|
# setting to give trust to reverse proxies, a comma-separated list of trusted rev. proxy IPs can be specified (CIDR notation is permitted),
|
||||||
|
# alternatively 'true' will make use of the leftmost IP in X-Forwarded-For, ultimately an integer can be used to tell about the number of hops between
|
||||||
|
# Trilium (which is hop 0) and the first trusted rev. proxy.
|
||||||
|
# once set, expressjs will use the X-Forwarded-For header set by the rev. proxy to determinate the real IPs of clients.
|
||||||
|
# expressjs shortcuts are supported: loopback(127.0.0.1/8, ::1/128), linklocal(169.254.0.0/16, fe80::/10), uniquelocal(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7)
|
||||||
|
trustedReverseProxy=false
|
||||||
20
triliumnext-notes/docker-compose.yml
Normal file
20
triliumnext-notes/docker-compose.yml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
name: "triliumnext-notes"
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: triliumnext/notes:v0.90.12
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- ./data:/home/node/trilium-data
|
||||||
|
- ./config:/home/node/trilium-config
|
||||||
|
expose:
|
||||||
|
- "8080"
|
||||||
|
networks:
|
||||||
|
- proxy-net
|
||||||
|
environment:
|
||||||
|
USER_UID: 1000
|
||||||
|
USER_GID: 1000
|
||||||
|
TRILIUM_CONFIG_INI_PATH: /home/node/trilium-config/config.ini
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy-net:
|
||||||
|
external: true
|
||||||
Reference in New Issue
Block a user