220 lines
8.9 KiB
YAML
220 lines
8.9 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
# NOTE:used as utilities
|
|
whoami: # Who Am I #Who?
|
|
image: traefik/whoami
|
|
networks:
|
|
- net
|
|
ports:
|
|
- "30050:80"
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
homepage: # Homepage for intranet #Homepage
|
|
image: ghcr.io/benphelps/homepage:latest
|
|
ports:
|
|
- 30101:3000
|
|
volumes:
|
|
# - /home/user/docker-main/test_homepage/Data:/app/config # Make sure your local config directory exists
|
|
- /home/user/docker-main/101_homepage/Data:/app/config
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
searxng: # Meta-search engine #Search engine
|
|
image: searxng/searxng:latest
|
|
ports:
|
|
- "30515:8080"
|
|
volumes:
|
|
- /home/user/docker-main/515_Searx/Data:/etc/searxng:rw
|
|
# environment:
|
|
# - SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-localhost}/
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
librespeed: # Internal speed testing #Speed testing
|
|
image: linuxserver/librespeed:latest
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=Etc/UTC
|
|
- PASSWORD=${HOME_librespeed_pass}
|
|
ports:
|
|
- 30500:80
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
nginx: # Internal site #Site
|
|
image: linuxserver/nginx:latest
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=Etc/UTC
|
|
volumes:
|
|
- /home/user/docker-main/562_DtN/Data:/config
|
|
ports:
|
|
- 30562:80
|
|
# - 443:443
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
traggo: # Keeping track of time #Time Tracking
|
|
image: traggo/server:latest
|
|
ports:
|
|
- 30563:3030
|
|
environment:
|
|
TRAGGO_DEFAULT_USER_NAME: ${HOME_Traggo_def_user}
|
|
TRAGGO_DEFAULT_USER_PASS: ${HOME_Traggo_def_pass}
|
|
volumes:
|
|
- /home/user/docker-main/563_Traggo/Data:/opt/traggo/data
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
|
|
|
|
photoprism: # Photo gallery #Photo gallery
|
|
## Use photoprism/photoprism:preview for testing preview builds:
|
|
image: photoprism/photoprism:latest
|
|
ports:
|
|
- "30693:2342" # HTTP port (host:container)
|
|
environment:
|
|
PHOTOPRISM_ADMIN_USER: "admin" # admin login username
|
|
PHOTOPRISM_ADMIN_PASSWORD: "insecure" # initial admin password (8-72 characters)
|
|
PHOTOPRISM_AUTH_MODE: "public" # authentication mode (public, password)
|
|
PHOTOPRISM_SITE_URL: "http://localhost:2342/" # server URL in the format "http(s)://domain.name(:port)/(path)"
|
|
PHOTOPRISM_DISABLE_TLS: "true" # disables HTTPS/TLS even if the site URL starts with https:// and a certificate is available
|
|
PHOTOPRISM_DEFAULT_TLS: "false" # defaults to a self-signed HTTPS/TLS certificate if no other certificate is available
|
|
PHOTOPRISM_ORIGINALS_LIMIT: 10000 # file size limit for originals in MB (increase for high-res video)
|
|
PHOTOPRISM_HTTP_COMPRESSION: "gzip" # improves transfer speed and bandwidth utilization (none or gzip)
|
|
PHOTOPRISM_LOG_LEVEL: "info" # log level: trace, debug, info, warning, error, fatal, or panic
|
|
PHOTOPRISM_READONLY: "false" # do not modify originals directory (reduced functionality)
|
|
PHOTOPRISM_EXPERIMENTAL: "false" # enables experimental features
|
|
PHOTOPRISM_DISABLE_CHOWN: "false" # disables updating storage permissions via chmod and chown on startup
|
|
PHOTOPRISM_DISABLE_WEBDAV: "false" # disables built-in WebDAV server
|
|
PHOTOPRISM_DISABLE_SETTINGS: "false" # disables settings UI and API
|
|
PHOTOPRISM_DISABLE_TENSORFLOW: "true" # disables all features depending on TensorFlow
|
|
PHOTOPRISM_DISABLE_FACES: "true" # disables face detection and recognition (requires TensorFlow)
|
|
PHOTOPRISM_DISABLE_CLASSIFICATION: "true" # disables image classification (requires TensorFlow)
|
|
PHOTOPRISM_DISABLE_VECTORS: "false" # disables vector graphics support
|
|
PHOTOPRISM_DISABLE_RAW: "false" # disables indexing and conversion of RAW images
|
|
PHOTOPRISM_RAW_PRESETS: "false" # enables applying user presets when converting RAW images (reduces performance)
|
|
PHOTOPRISM_JPEG_QUALITY: 85 # a higher value increases the quality and file size of JPEG images and thumbnails (25-100)
|
|
PHOTOPRISM_DETECT_NSFW: "false" # automatically flags photos as private that MAY be offensive (requires TensorFlow)
|
|
PHOTOPRISM_UPLOAD_NSFW: "true" # allows uploads that MAY be offensive (no effect without TensorFlow)
|
|
PHOTOPRISM_DATABASE_DRIVER: "sqlite" # SQLite is an embedded database that doesn't require a server
|
|
# PHOTOPRISM_DATABASE_DRIVER: "mysql" # use MariaDB 10.5+ or MySQL 8+ instead of SQLite for improved performance
|
|
# PHOTOPRISM_DATABASE_SERVER: "mariadb:3306" # MariaDB or MySQL database server (hostname:port)
|
|
# PHOTOPRISM_DATABASE_NAME: "photoprism" # MariaDB or MySQL database schema name
|
|
# PHOTOPRISM_DATABASE_USER: "photoprism" # MariaDB or MySQL database user name
|
|
# PHOTOPRISM_DATABASE_PASSWORD: "insecure" # MariaDB or MySQL database user password
|
|
PHOTOPRISM_SITE_CAPTION: "Photos App"
|
|
PHOTOPRISM_SITE_DESCRIPTION: "" # meta site description
|
|
PHOTOPRISM_SITE_AUTHOR: "" # meta site author
|
|
## Run/install on first startup (options: update https gpu tensorflow davfs clitools clean):
|
|
# PHOTOPRISM_INIT: "https gpu tensorflow"
|
|
## Hardware Video Transcoding:
|
|
# PHOTOPRISM_FFMPEG_ENCODER: "software" # FFmpeg encoder ("software", "intel", "nvidia", "apple", "raspberry")
|
|
# PHOTOPRISM_FFMPEG_BITRATE: "32" # FFmpeg encoding bitrate limit in Mbit/s (default: 50)
|
|
# PHOTOPRISM_FFMPEG_RESOLUTION: "1920" # FFmpeg encoding resolution limit in pixel height (default: 4096)
|
|
## Run as a non-root user after initialization (supported: 0, 33, 50-99, 500-600, and 900-1200):
|
|
# PHOTOPRISM_UID: 1000
|
|
# PHOTOPRISM_GID: 1000
|
|
# PHOTOPRISM_UMASK: 0000
|
|
## Start as non-root user before initialization (supported: 0, 33, 50-99, 500-600, and 900-1200):
|
|
# user: "1000:1000"
|
|
## Share hardware devices with FFmpeg and TensorFlow (optional):
|
|
# devices:
|
|
# - "/dev/dri:/dev/dri" # Intel QSV
|
|
# - "/dev/nvidia0:/dev/nvidia0" # Nvidia CUDA
|
|
# - "/dev/nvidiactl:/dev/nvidiactl"
|
|
# - "/dev/nvidia-modeset:/dev/nvidia-modeset"
|
|
# - "/dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl"
|
|
# - "/dev/nvidia-uvm:/dev/nvidia-uvm"
|
|
# - "/dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools"
|
|
# - "/dev/video11:/dev/video11" # Video4Linux Video Encode Device (h264_v4l2m2m)
|
|
# working_dir: "/photoprism" # do not change or remove
|
|
## Storage Folders: "~" is a shortcut for your home directory, "." for the current directory
|
|
volumes:
|
|
- "/home/user/docker-main/999_Drives/DSLR:/photoprism/originals" # Original media files (DO NOT REMOVE)
|
|
# - "/example/family:/photoprism/originals/family" # *Additional* media folders can be mounted like this
|
|
# - "~/Import:/photoprism/import" # *Optional* base folder from which files can be imported to originals
|
|
- "/home/user/docker-main/693_PhotoPrism/Data:/photoprism/storage" # *Writable* storage folder for cache, database, and sidecar files (DO NOT REMOVE)
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
|
|
|
|
kroki-core: # Graphing API # Graphing Api
|
|
image: yuzutech/kroki
|
|
# environment:
|
|
# - KROKI_BLOCKDIAG_HOST=blockdiag
|
|
# - KROKI_MERMAID_HOST=mermaid
|
|
# - KROKI_BPMN_HOST=bpmn
|
|
# - KROKI_EXCALIDRAW_HOST=excalidraw
|
|
# - KROKI_WIREVIZ_HOST=wireviz
|
|
ports:
|
|
- "30700:8000"
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
|
|
grocy:
|
|
image: linuxserver/grocy:latest
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=Etc/UTC
|
|
volumes:
|
|
- /home/user/docker-main/520_Grocy/Data:/config
|
|
ports:
|
|
- 30520:80
|
|
deploy:
|
|
replicas: 1
|
|
placement:
|
|
constraints: [ node.role == worker ]
|
|
|
|
|
|
# changedetection:
|
|
# image: linuxserver/changedetection.io:latest
|
|
# environment:
|
|
# - PUID=1000
|
|
# - PGID=1000
|
|
# - TZ=Europe/London
|
|
## - BASE_URL= #optional
|
|
# volumes:
|
|
# - /home/user/docker-main/560_changeDetection/Data:/config
|
|
# ports:
|
|
# - 30560:5000
|
|
# deploy:
|
|
# replicas: 1
|
|
# placement:
|
|
# constraints: [ node.role == worker ]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
networks:
|
|
# host:
|
|
# external: true
|
|
net:
|