diff options
| author | Christian Cleberg <[email protected]> | 2026-02-16 12:28:48 -0600 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-02-16 12:28:48 -0600 |
| commit | c32803f6dea806229878a2e44a29ce23c8299eca (patch) | |
| tree | de6a3a37cc75e8e5eec507baa09b6d578f2e21e7 /linux/docker | |
| parent | 0f11584bff5fb485a929f60065c17a6b1639d0fd (diff) | |
| download | dotfiles-c32803f6dea806229878a2e44a29ce23c8299eca.tar.gz dotfiles-c32803f6dea806229878a2e44a29ce23c8299eca.tar.bz2 dotfiles-c32803f6dea806229878a2e44a29ce23c8299eca.zip | |
add docker configs
Diffstat (limited to 'linux/docker')
30 files changed, 688 insertions, 0 deletions
diff --git a/linux/docker/docker/anonymousoverflow/compose.yml b/linux/docker/docker/anonymousoverflow/compose.yml new file mode 100644 index 0000000..165e05f --- /dev/null +++ b/linux/docker/docker/anonymousoverflow/compose.yml @@ -0,0 +1,23 @@ +services: + anonymousoverflow: + container_name: 'app' + image: 'ghcr.io/httpjamesm/anonymousoverflow:release' + environment: + - APP_URL=https://ao.cleberg.net + - JWT_SIGNING_SECRET= + - FLARESOLVER=http://flaresolverr:8191 + - TIMEOUT=120 + ports: + - '9380:8080' + restart: 'always' + + flaresolverr: + container_name: anonymous_overflow_flaresolverr + image: ghcr.io/flaresolverr/flaresolverr:pr-1282 + environment: + LOG_LEVEL: "info" + TZ: "America/Chicago" + LANG: "en_US" + security_opt: + - no-new-privileges:true + restart: unless-stopped diff --git a/linux/docker/docker/biblioreads/compose.yml b/linux/docker/docker/biblioreads/compose.yml new file mode 100644 index 0000000..d60085d --- /dev/null +++ b/linux/docker/docker/biblioreads/compose.yml @@ -0,0 +1,10 @@ +services: + biblioreads: + container_name: biblioreads + image: docker.io/nesaku/biblioreads:latest + restart: unless-stopped + ports: + - "3030:3000" + environment: + - NEXT_PUBLIC_HOST_URL=http://br.cleberg.net + - NEXT_TELEMETRY_DISABLED=1 diff --git a/linux/docker/docker/binternet/compose.yml b/linux/docker/docker/binternet/compose.yml new file mode 100644 index 0000000..c1a5fbb --- /dev/null +++ b/linux/docker/docker/binternet/compose.yml @@ -0,0 +1,11 @@ +services: + binternet: + container_name: binternet + image: ghcr.io/ahwxorg/binternet:latest + cap_drop: + - ALL + security_opt: + - no-new-privileges:true + ports: + - '8086:8080' + restart: 'always' diff --git a/linux/docker/docker/breezewiki/compose.yml b/linux/docker/docker/breezewiki/compose.yml new file mode 100644 index 0000000..d363dfc --- /dev/null +++ b/linux/docker/docker/breezewiki/compose.yml @@ -0,0 +1,9 @@ +services: + breezewiki: + container_name: breezewiki + image: quay.io/pussthecatorg/breezewiki:latest + restart: unless-stopped + ports: + - "127.0.0.1:10416:10416" + volumes: + - "./config.ini:/app/config.ini" diff --git a/linux/docker/docker/breezewiki/config.ini b/linux/docker/docker/breezewiki/config.ini new file mode 100644 index 0000000..ce46cd4 --- /dev/null +++ b/linux/docker/docker/breezewiki/config.ini @@ -0,0 +1,3 @@ +canonical_origin = bw.cleberg.net +debug = false +port = 10416 diff --git a/linux/docker/docker/cyberchef/compose.yml b/linux/docker/docker/cyberchef/compose.yml new file mode 100755 index 0000000..f8b2caf --- /dev/null +++ b/linux/docker/docker/cyberchef/compose.yml @@ -0,0 +1,7 @@ +services: + cyberchef: + image: mpepping/cyberchef + container_name: cyberchef + restart: unless-stopped + ports: + - "0.0.0.0:8111:8000" diff --git a/linux/docker/docker/ddns-updater/compose.yml b/linux/docker/docker/ddns-updater/compose.yml new file mode 100644 index 0000000..9cfb9f1 --- /dev/null +++ b/linux/docker/docker/ddns-updater/compose.yml @@ -0,0 +1,34 @@ +services: + ddns-updater: + image: qmcgaw/ddns-updater + container_name: ddns-updater + network_mode: bridge + ports: + - 8097:8000/tcp + volumes: + - ./data:/updater/data + environment: + - CONFIG= + - PERIOD=5m + - UPDATE_COOLDOWN_PERIOD=5m + - PUBLICIP_FETCHERS=all + - PUBLICIP_HTTP_PROVIDERS=all + - PUBLICIPV4_HTTP_PROVIDERS=all + - PUBLICIPV6_HTTP_PROVIDERS=all + - PUBLICIP_DNS_PROVIDERS=all + - PUBLICIP_DNS_TIMEOUT=3s + - HTTP_TIMEOUT=10s + + # Web UI + - LISTENING_ADDRESS=:8000 + - ROOT_URL=/ + + # Backup + - BACKUP_PERIOD=0 # 0 to disable + - BACKUP_DIRECTORY=/updater/data + + # Other + - LOG_LEVEL=info + - LOG_CALLER=hidden + - SHOUTRRR_ADDRESSES= + restart: always diff --git a/linux/docker/docker/ddns-updater/data/updates.json b/linux/docker/docker/ddns-updater/data/updates.json new file mode 100644 index 0000000..9cd13e6 --- /dev/null +++ b/linux/docker/docker/ddns-updater/data/updates.json @@ -0,0 +1,6 @@ +{ + "settings": [ + { + } + ] +} diff --git a/linux/docker/docker/dockhand/compose.yml b/linux/docker/docker/dockhand/compose.yml new file mode 100644 index 0000000..b69b139 --- /dev/null +++ b/linux/docker/docker/dockhand/compose.yml @@ -0,0 +1,13 @@ +services: + dockhand: + image: fnsys/dockhand:latest + container_name: dockhand + restart: unless-stopped + ports: + - 3777:3000 + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - dockhand_data:/app/data + +volumes: + dockhand_data: diff --git a/linux/docker/docker/flashpaper/docker-compose.yml b/linux/docker/docker/flashpaper/docker-compose.yml new file mode 100644 index 0000000..4a2afcd --- /dev/null +++ b/linux/docker/docker/flashpaper/docker-compose.yml @@ -0,0 +1,29 @@ +services: + flashpaper: + image: ghcr.io/andrewpaglusch/flashpaper:v2 + container_name: flashpaper + restart: always + volumes: + - './data:/var/www/html/data' + ports: + - '8084:80' + environment: + SITE_TITLE: "FlashPaper :: Self-Destructing Message" + RETURN_FULL_URL: "true" + BASE_URL: "https://paste.cleberg.net" + MAX_SECRET_LENGTH: "3000" + ANNOUNCEMENT: "" + MESSAGES_ERROR_SECRET_TOO_LONG: "Input length too long" + MESSAGES_SUBMIT_SECRET_HEADER: "Create A Self-Destructing Message" + MESSAGES_SUBMIT_SECRET_SUBHEADER: "" + MESSAGES_SUBMIT_SECRET_BUTTON: "Encrypt Message" + MESSAGES_VIEW_CODE_HEADER: "Self-Destructing URL" + MESSAGES_VIEW_CODE_SUBHEADER: "Share this URL via email, chat, or another messaging service. It will self-destruct after being viewed once." + MESSAGES_CONFIRM_VIEW_SECRET_HEADER: "View this secret?" + MESSAGES_CONFIRM_VIEW_SECRET_BUTTON: "View Secret" + MESSAGES_VIEW_SECRET_HEADER: "Self-Destructing Message" + MESSAGES_VIEW_SECRET_SUBHEADER: "This message has been destroyed" + PRUNE_ENABLED: "true" + PRUNE_MIN_DAYS: 365 + PRUNE_MAX_DAYS: 730 + diff --git a/linux/docker/docker/gothub/compose.yml b/linux/docker/docker/gothub/compose.yml new file mode 100644 index 0000000..ee99e9e --- /dev/null +++ b/linux/docker/docker/gothub/compose.yml @@ -0,0 +1,24 @@ +services: + gothub: + image: codeberg.org/gothub/gothub:latest # Master branch + # image: codeberg.org/gothub/gothub:dev # Dev branch + restart: unless-stopped + ports: + - "3039:3000" + environment: + - DOCKER=true + - GOTHUB_SETUP_COMPLETE=false + - GOTHUB_PROXYING_ENABLED=true + - GOTHUB_IP_LOGGED=false + - GOTHUB_REQUEST_URL_LOGGED=false + - GOTHUB_USER_AGENT_LOGGED=false + - GOTHUB_DIAGNOSTIC_INFO_LOGGED=false + - GOTHUB_INSTANCE_PRIVACY_POLICY= + - GOTHUB_INSTANCE_COUNTRY=USA + - GOTHUB_INSTANCE_PROVIDER= + - GOTHUB_INSTANCE_CLOUDFLARE=false + healthcheck: + test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/version || exit 1 + interval: 30s + timeout: 5s + retries: 2 diff --git a/linux/docker/docker/hat.sh/compose.yml b/linux/docker/docker/hat.sh/compose.yml new file mode 100644 index 0000000..ac2d04e --- /dev/null +++ b/linux/docker/docker/hat.sh/compose.yml @@ -0,0 +1,5 @@ +services: + web: + image: shdv/hat.sh:latest + ports: + - 3991:80 diff --git a/linux/docker/docker/immich/.env b/linux/docker/docker/immich/.env new file mode 100644 index 0000000..bffe740 --- /dev/null +++ b/linux/docker/docker/immich/.env @@ -0,0 +1,22 @@ +# You can find documentation for all the supported env variables at https://docs.immich.app/install/environment-variables + +# The location where your uploaded files are stored +UPLOAD_LOCATION=/tank/media/photos + +# The location where your database files are stored. Network shares are not supported for the database +DB_DATA_LOCATION=./postgres + +# To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List +TZ=America/Chicago + +# The Immich version to use. You can pin this to a specific version like "v2.1.0" +IMMICH_VERSION=v2 + +# Connection secret for postgres. You should change it to a random password +# Please use only the characters `A-Za-z0-9`, without special characters or spaces +DB_PASSWORD= + +# The values below this line do not need to be changed +################################################################################### +DB_USERNAME=postgres +DB_DATABASE_NAME=immich diff --git a/linux/docker/docker/immich/compose.yml b/linux/docker/docker/immich/compose.yml new file mode 100644 index 0000000..f5dfb12 --- /dev/null +++ b/linux/docker/docker/immich/compose.yml @@ -0,0 +1,74 @@ +# +# WARNING: To install Immich, follow our guide: https://docs.immich.app/install/docker-compose +# +# Make sure to use the docker-compose.yml of the current release: +# +# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml +# +# The compose file on main may not be compatible with the latest release. + +name: immich + +services: + immich-server: + container_name: immich_server + image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} + # extends: + # file: hwaccel.transcoding.yml + # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding + volumes: + # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file + - ${UPLOAD_LOCATION}:/data + - /etc/localtime:/etc/localtime:ro + env_file: + - .env + ports: + - '2283:2283' + depends_on: + - redis + - database + restart: always + healthcheck: + disable: false + + immich-machine-learning: + container_name: immich_machine_learning + # For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag. + # Example tag: ${IMMICH_VERSION:-release}-cuda + image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} + # extends: # uncomment this section for hardware acceleration - see https://docs.immich.app/features/ml-hardware-acceleration + # file: hwaccel.ml.yml + # service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable + volumes: + - model-cache:/cache + env_file: + - .env + restart: always + healthcheck: + disable: false + + redis: + container_name: immich_redis + image: docker.io/valkey/valkey:9@sha256:fb8d272e529ea567b9bf1302245796f21a2672b8368ca3fcb938ac334e613c8f + healthcheck: + test: redis-cli ping || exit 1 + restart: always + + database: + container_name: immich_postgres + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23 + environment: + POSTGRES_PASSWORD: ${DB_PASSWORD} + POSTGRES_USER: ${DB_USERNAME} + POSTGRES_DB: ${DB_DATABASE_NAME} + POSTGRES_INITDB_ARGS: '--data-checksums' + # Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs + # DB_STORAGE_TYPE: 'HDD' + volumes: + # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file + - ${DB_DATA_LOCATION}:/var/lib/postgresql/data + shm_size: 128mb + restart: always + +volumes: + model-cache: diff --git a/linux/docker/docker/libremdb/compose.yml b/linux/docker/docker/libremdb/compose.yml new file mode 100644 index 0000000..bfecda4 --- /dev/null +++ b/linux/docker/docker/libremdb/compose.yml @@ -0,0 +1,38 @@ +services: + libremdb: + container_name: libremdb + image: ghcr.io/zyachel/libremdb:latest + ports: + - "3004:3000" + env_file: .env + depends_on: + - libremdb-redis + restart: always + user: 65534:65534 # equivalent to the nobody user + read_only: true + tmpfs: + - /opt/app/.next/cache/:size=10M,mode=0770,uid=65534,gid=65534,noexec,nosuid,nodev + security_opt: + - no-new-privileges:true + cap_drop: + - ALL + networks: + - libremdb + + libremdb-redis: + container_name: libremdb_redis + image: redis + restart: always + user: nobody + read_only: true + security_opt: + - no-new-privileges:true + tmpfs: + - /data:size=10M,mode=0770,uid=65534,gid=65534,noexec,nosuid,nodev + cap_drop: + - ALL + networks: + - libremdb + +networks: + libremdb: diff --git a/linux/docker/docker/libretranslate/compose.yml b/linux/docker/docker/libretranslate/compose.yml new file mode 100644 index 0000000..6832ad2 --- /dev/null +++ b/linux/docker/docker/libretranslate/compose.yml @@ -0,0 +1,30 @@ +services: + libretranslate: + container_name: libretranslate + build: + context: . + dockerfile: ./docker/Dockerfile + restart: unless-stopped + ports: + - "5000:5000" + ## Uncomment this for logging in docker compose logs + tty: true + #healthcheck: + #test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py'] + ## Uncomment above command and define your args if necessary + # command: --ssl --ga-id MY-GA-ID --req-limit 100 --char-limit 500 + ## Uncomment this section and the libretranslate_api_keys volume if you want to backup your API keys + # environment: + # - LT_API_KEYS=true + # - LT_API_KEYS_DB_PATH=/app/db/api_keys.db # Same result as `db/api_keys.db` or `./db/api_keys.db` + ## Uncomment these vars and libretranslate_models volume to optimize loading time. + # - LT_UPDATE_MODELS=true + # - LT_LOAD_ONLY=en,fr + volumes: + # - libretranslate_api_keys:/app/db + # Keep the models in a docker volume, to avoid re-downloading on startup + - libretranslate_models:/home/libretranslate/.local:rw + +volumes: +# libretranslate_api_keys: + libretranslate_models: diff --git a/linux/docker/docker/mazanoke/compose.yml b/linux/docker/docker/mazanoke/compose.yml new file mode 100644 index 0000000..e00344d --- /dev/null +++ b/linux/docker/docker/mazanoke/compose.yml @@ -0,0 +1,7 @@ +services: + mazanoke: + container_name: mazanoke + image: ghcr.io/civilblur/mazanoke:latest + ports: + - "3474:80" + restart: 'always' diff --git a/linux/docker/docker/piped/docker-compose.yml b/linux/docker/docker/piped/docker-compose.yml new file mode 100644 index 0000000..ac6554f --- /dev/null +++ b/linux/docker/docker/piped/docker-compose.yml @@ -0,0 +1,46 @@ +services: + frontend: + image: 1337kavin/piped-frontend:latest + restart: unless-stopped + depends_on: + - piped + environment: + BACKEND_HOSTNAME: pipedapi.cleberg.net + HTTP_MODE: https + ports: + - "8077:80" + container_name: piped-frontend + + piped: + image: 1337kavin/piped:latest + restart: unless-stopped + volumes: + - ./config/config.properties:/app/config.properties:ro + depends_on: + - postgres + ports: + - "8078:8080" + container_name: piped-backend + + proxy: + image: 1337kavin/piped-proxy:latest + restart: unless-stopped + ports: + - "8079:8080" + container_name: piped-proxy + + bg-helper: + image: 1337kavin/bg-helper-server:latest + restart: unless-stopped + container_name: piped-bg-helper + + postgres: + image: pgautoupgrade/pgautoupgrade:16-alpine + restart: unless-stopped + volumes: + - ./data/db:/var/lib/postgresql/data + environment: + - POSTGRES_DB=piped + - POSTGRES_USER=piped + - POSTGRES_PASSWORD=changeme + container_name: piped-postgres diff --git a/linux/docker/docker/rimgo/compose.yml b/linux/docker/docker/rimgo/compose.yml new file mode 100644 index 0000000..e895b95 --- /dev/null +++ b/linux/docker/docker/rimgo/compose.yml @@ -0,0 +1,17 @@ +version: '3' + +services: + rimgo: + image: codeberg.org/rimgo/rimgo # Official image + #image: quay.io/pussthecatorg/rimgo # Unofficial image + #build: . # Uncomment to build from source + ports: + - 3869:3000 + restart: unless-stopped + user: 65534:65534 # equivalent to `nobody` + read_only: true + security_opt: + - no-new-privileges + cap_drop: + - ALL + env_file: .env diff --git a/linux/docker/docker/rural-dict/docker-compose.yml b/linux/docker/docker/rural-dict/docker-compose.yml new file mode 100644 index 0000000..b8f1951 --- /dev/null +++ b/linux/docker/docker/rural-dict/docker-compose.yml @@ -0,0 +1,12 @@ +version: "3" +services: + rural-dict: + build: + context: . + dockerfile: Dockerfile + restart: unless-stopped + ports: + - 2944:2944 + environment: + - RD_PORT=2944 + - RD_BIND=0.0.0.0 diff --git a/linux/docker/docker/searxng/compose.yml b/linux/docker/docker/searxng/compose.yml new file mode 100644 index 0000000..b5404d7 --- /dev/null +++ b/linux/docker/docker/searxng/compose.yml @@ -0,0 +1,48 @@ +services: + + redis: + container_name: searxng_redis + image: "redis:alpine" + restart: unless-stopped + command: redis-server --save "" --appendonly "no" + networks: + - searxng + tmpfs: + - /var/lib/redis + cap_drop: + - ALL + cap_add: + - SETGID + - SETUID + - DAC_OVERRIDE + + searxng: + container_name: searxng + image: searxng/searxng:latest + restart: unless-stopped + networks: + - searxng + ports: + - "9191:8080" + volumes: + - ./searxng:/etc/searxng:rw +# - ./themes:/usr/local/searxng/searx/static/themes/ + environment: + - SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-localhost}/ + cap_drop: + - ALL + cap_add: + - CHOWN + - SETGID + - SETUID + - DAC_OVERRIDE + logging: + driver: "json-file" + options: + max-size: "1m" + max-file: "1" + +networks: + searxng: + ipam: + driver: default diff --git a/linux/docker/docker/send/compose.yml b/linux/docker/docker/send/compose.yml new file mode 100644 index 0000000..281b5e6 --- /dev/null +++ b/linux/docker/docker/send/compose.yml @@ -0,0 +1,28 @@ +services: + send: + image: '${DOCKER_SEND_IMAGE}' + restart: always + ports: + - '1443:1234' + volumes: + - ./uploads:/uploads + environment: + - VIRTUAL_HOST=${HOST} + - VIRTUAL_PORT=1234 + - DHPARAM_GENERATION=false + - LETSENCRYPT_HOST + - LETSENCRYPT_EMAIL + - NODE_ENV=production + - BASE_URL=${SEND_BASE_URL} + - PORT=1234 + - REDIS_HOST=redis + - FILE_DIR=/uploads + + redis: + image: 'redis:alpine' + restart: always + volumes: + - send-redis:/data + +volumes: + send-redis: diff --git a/linux/docker/docker/skunkyart/compose.yml b/linux/docker/docker/skunkyart/compose.yml new file mode 100644 index 0000000..5eead70 --- /dev/null +++ b/linux/docker/docker/skunkyart/compose.yml @@ -0,0 +1,12 @@ +services: + skunkyart: + container_name: skunkyart + restart: unless-stopped + build: . + ports: + - "127.0.0.1:3003:3003" + security_opt: + - no-new-privileges:true + volumes: + - ./config.json:/config.json:ro + - ./cache:/cache # Ensure cache folder has a 10000:10000 ownership. diff --git a/linux/docker/docker/skunkyart/config.json b/linux/docker/docker/skunkyart/config.json new file mode 100644 index 0000000..b3e7671 --- /dev/null +++ b/linux/docker/docker/skunkyart/config.json @@ -0,0 +1,17 @@ +{ + "listen": "0.0.0.0:3003", + "uri": "/", + "cache": { + "enabled": false, + "path": "cache", + "lifetime": null, + "max-size": 200, + "memcache": false, + "update-interval": 5 + }, + "static-path": "static", + "download-proxy": "http://127.0.0.1:8080", + "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36", + "proxy": false, + "nsfw": true +} diff --git a/linux/docker/docker/slash/compose.yml b/linux/docker/docker/slash/compose.yml new file mode 100644 index 0000000..2332b57 --- /dev/null +++ b/linux/docker/docker/slash/compose.yml @@ -0,0 +1,9 @@ +services: + slash: + image: yourselfhosted/slash:latest + container_name: slash + ports: + - 5231:5231 + volumes: + - ./slash:/var/opt/slash + restart: unless-stopped diff --git a/linux/docker/docker/small/.env b/linux/docker/docker/small/.env new file mode 100644 index 0000000..0cfbf09 --- /dev/null +++ b/linux/docker/docker/small/.env @@ -0,0 +1,3 @@ +PORT=8002 +UWSGI_PROCESSES=4 +UWSGI_THREADS=4 diff --git a/linux/docker/docker/small/compose.yml b/linux/docker/docker/small/compose.yml new file mode 100644 index 0000000..16d53bc --- /dev/null +++ b/linux/docker/docker/small/compose.yml @@ -0,0 +1,15 @@ +services: + small: + container_name: small + restart: unless-stopped + build: . + ports: [127.0.0.1:8002:8002] + env_file: .env + security_opt: [no-new-privileges:true] + cap_drop: [ALL] + read_only: true + deploy: + resources: + limits: + cpus: '0.5' + memory: 300M diff --git a/linux/docker/docker/termix/compose.yml b/linux/docker/docker/termix/compose.yml new file mode 100644 index 0000000..54bd562 --- /dev/null +++ b/linux/docker/docker/termix/compose.yml @@ -0,0 +1,15 @@ +services: + termix: + image: ghcr.io/lukegus/termix:latest + container_name: termix + restart: unless-stopped + ports: + - "8169:8080" + volumes: + - termix-data:/app/data + environment: + PORT: "8080" + +volumes: + termix-data: + driver: local diff --git a/linux/docker/docker/transmission/compose.yml b/linux/docker/docker/transmission/compose.yml new file mode 100644 index 0000000..b033c54 --- /dev/null +++ b/linux/docker/docker/transmission/compose.yml @@ -0,0 +1,39 @@ +services: + wireguard: + image: lscr.io/linuxserver/wireguard:latest + restart: always + cap_add: + - NET_ADMIN + - SYS_MODULE + sysctls: + - net.ipv4.conf.all.src_valid_mark=1 + environment: + - PUID=1000 + - PGID=1000 + - SERVERPORT=51820 + # Change this to your local CIDR + - HOME_CIDR=192.168.0.0/24 + volumes: + - ./wg.conf:/config/wg_confs/wg0.conf + - /lib/modules:/lib/modules + ports: + # We open the transmission web UI port here as we're going to use this + # containers network for that container. + - 51820:51820/udp + - 51824:51824/udp + - 9091:9091 + transmission: + image: linuxserver/transmission:latest + restart: always + network_mode: "service:wireguard" + depends_on: + - wireguard + environment: + PUID: 1000 + PGID: 1000 + # Change this to host(s) you want to access from + # WHITELIST: "*.*.*.*" + volumes: + - ./config:/config + - /tank/media/_downloads:/downloads + - /tank/media/_watch:/watch diff --git a/linux/docker/docker/transmission/config/settings.json b/linux/docker/docker/transmission/config/settings.json new file mode 100644 index 0000000..ecd02b8 --- /dev/null +++ b/linux/docker/docker/transmission/config/settings.json @@ -0,0 +1,82 @@ +{ + "alt-speed-down": 10000, + "alt-speed-enabled": false, + "alt-speed-time-begin": 540, + "alt-speed-time-day": 127, + "alt-speed-time-enabled": false, + "alt-speed-time-end": 1260, + "alt-speed-up": 10000, + "announce-ip": "", + "announce-ip-enabled": false, + "anti-brute-force-enabled": false, + "anti-brute-force-threshold": 100, + "bind-address-ipv4": "0.0.0.0", + "bind-address-ipv6": "::", + "blocklist-enabled": false, + "blocklist-url": "http://www.example.com/blocklist", + "cache-size-mb": 4, + "default-trackers": "udp://tracker.opentrackr.org:1337/announce\n\nhttp://tracker.opentrackr.org:1337/announce\n\nudp://open.demonii.com:1337/announce\n\nudp://open.stealth.si:80/announce\n\nudp://tracker.torrent.eu.org:451/announce\n\nudp://exodus.desync.com:6969/announce\n\nudp://tracker.ololosh.space:6969/announce\n\nhttp://www.genesis-sp.org:2710/announce\n\nhttp://servandroidkino.ru:80/announce\n\nudp://wepzone.net:6969/announce\n\nudp://ttk2.nbaonlineservice.com:6969/announce\n\nudp://tracker2.dler.org:80/announce\n\nudp://tracker1.myporn.club:9337/announce\n\nudp://tracker.tryhackx.org:6969/announce\n\nudp://tracker.tiny-vps.com:6969/announce\n\nudp://tracker.theoks.net:6969/announce\n\nudp://tracker.srv00.com:6969/announce\n\nudp://tracker.qu.ax:6969/announce\n\nudp://tracker.gmi.gd:6969/announce\n\nudp://tracker.gigantino.net:6969/announce\n\nudp://tracker.fnix.net:6969/announce\n\nudp://tracker.filemail.com:6969/announce\n\nudp://tracker.dler.org:6969/announce\n\nudp://tracker.darkness.services:6969/announce\n\nudp://tracker.0x7c0.com:6969/announce\n\nudp://tracker-udp.gbitt.info:80/announce\n\nudp://tr4ck3r.duckdns.org:6969/announce\n\nudp://t.overflow.biz:6969/announce\n\nudp://retracker01-msk-virt.corbina.net:80/announce\n\nudp://retracker.lanta.me:2710/announce\n\nudp://p4p.arenabg.com:1337/announce\n\nudp://p2p.publictracker.xyz:6969/announce\n\nudp://opentracker.io:6969/announce\n\nudp://open.free-tracker.ga:6969/announce\n\nudp://martin-gebhardt.eu:25/announce\n\nudp://leet-tracker.moe:1337/announce\n\nudp://ismaarino.com:1234/announce\n\nudp://isk.richardsw.club:6969/announce\n\nudp://evan.im:6969/announce\n\nudp://d40969.acod.regrucolo.ru:6969/announce\n\nudp://bt.ktrackers.com:6666/announce\n\nudp://bittorrent-tracker.e-n-c-r-y-p-t.net:1337/announce\n\nudp://bandito.byterunner.io:6969/announce\n\nhttps://tracker.yemekyedim.com:443/announce\n\nhttps://tracker.bt4g.com:443/announce\n\nhttp://www.torrentsnipe.info:2701/announce\n\nhttp://wepzone.net:6969/announce\n\nhttp://tracker810.xyz:11450/announce\n\nhttp://tracker2.dler.org:80/announce\n\nhttp://tracker.xiaoduola.xyz:6969/announce\n\nhttp://tracker.waaa.moe:6969/announce\n\nhttp://tracker.vanitycore.co:6969/announce\n\nhttp://tracker.sbsub.com:2710/announce\n\nhttp://tracker.renfei.net:8080/announce\n\nhttp://tracker.qu.ax:6969/announce\n\nhttp://tracker.mywaifu.best:6969/announce\n\nhttp://tracker.moxing.party:6969/announce\n\nhttp://tracker.lintk.me:2710/announce\n\nhttp://tracker.ipv6tracker.org:80/announce\n\nhttp://tracker.edkj.club:6969/announce\n\nhttp://tracker.dmcomic.org:2710/announce\n\nhttp://tracker.dler.org:6969/announce\n\nhttp://tracker.dler.com:6969/announce\n\nhttp://tracker.darkness.services:6969/announce\n\nhttp://tracker.corpscorp.online:80/announce\n\nhttp://tracker.bz:80/announce\n\nhttp://tracker.bt4g.com:2095/announce\n\nhttp://tracker.bt-hash.com:80/announce\n\nhttp://tracker.bittor.pw:1337/announce\n\nhttp://taciturn-shadow.spb.ru:6969/announce\n\nhttp://t.overflow.biz:6969/announce\n\nhttp://t.jaekr.sh:6969/announce\n\nhttp://shubt.net:2710/announce\n\nhttp://share.hkg-fansub.info:80/announce.php\n\nhttp://seeders-paradise.org:80/announce\n\nhttp://retracker.spark-rostov.ru:80/announce\n\nhttp://public.tracker.vraphim.com:6969/announce\n\nhttp://p4p.arenabg.com:1337/announce\n\nhttp://open.trackerlist.xyz:80/announce\n\nhttp://open.acgtracker.com:1096/announce\n\nhttp://home.yxgz.club:6969/announce\n\nhttp://highteahop.top:6960/announce\n\nhttp://finbytes.org:80/announce.php\n\nhttp://ch3oh.ru:6969/announce\n\nhttp://buny.uk:6969/announce\n\nhttp://bt1.xxxxbt.cc:6969/announce\n\nhttp://bt.poletracker.org:2710/announce\n\nhttp://bittorrent-tracker.e-n-c-r-y-p-t.net:1337/announce\n\nhttp://1337.abcvg.info:80/announce\n\nhttp://0d.kebhana.mx:443/announce\n\nhttp://0123456789nonexistent.com:80/announce\n\nudp://utracker.ghostchu-services.top:6969/announce\n\nudp://tracker.ddunlimited.net:6969/announce\n\nudp://ipv4announce.sktorrent.eu:6969/announce\n\nudp://concen.org:6969/announce\n\nhttps://tracker.zhuqiy.top:443/announce\n\nhttps://tracker.linvk.com:443/announce\n\nhttps://tracker.lilithraws.org:443/announce\n\nhttps://tracker.leechshield.link:443/announce\n\nhttps://tracker.ghostchu-services.top:443/announce\n\nhttps://tracker.gcrenwp.top:443/announce\n\nhttps://tr.zukizuki.org:443/announce\n\nhttps://tr.nyacat.pw:443/announce\n\nhttps://sparkle.ghostchu-services.top:443/announce\n\nhttp://tracker1.itzmx.com:8080/announce\n\nhttp://tracker.zhuqiy.top:80/announce\n\nhttp://tracker.ghostchu-services.top:80/announce\n\nhttp://tracker.23794.top:6969/announce\n\nhttp://tr.nyacat.pw:80/announce", + "dht-enabled": true, + "download-dir": "/downloads/complete", + "download-queue-enabled": true, + "download-queue-size": 10, + "encryption": 1, + "idle-seeding-limit": 30, + "idle-seeding-limit-enabled": false, + "incomplete-dir": "/downloads/incomplete", + "incomplete-dir-enabled": true, + "lpd-enabled": false, + "message-level": 2, + "peer-congestion-algorithm": "", + "peer-id-ttl-hours": 6, + "peer-limit-global": 200, + "peer-limit-per-torrent": 50, + "peer-port": 51824, + "peer-port-random-high": 65535, + "peer-port-random-low": 49152, + "peer-port-random-on-start": false, + "peer-socket-tos": "le", + "pex-enabled": true, + "port-forwarding-enabled": true, + "preallocation": 1, + "prefetch-enabled": true, + "queue-stalled-enabled": true, + "queue-stalled-minutes": 30, + "ratio-limit": 2, + "ratio-limit-enabled": false, + "rename-partial-files": true, + "rpc-authentication-required": false, + "rpc-bind-address": "0.0.0.0", + "rpc-enabled": true, + "rpc-host-whitelist": "", + "rpc-host-whitelist-enabled": false, + "rpc-password": "{338b57b6545aac87fe37a9571f2abe8b63102ce0TAWzO.u4", + "rpc-port": 9091, + "rpc-socket-mode": "0750", + "rpc-url": "/transmission/", + "rpc-username": "", + "rpc-whitelist": "", + "rpc-whitelist-enabled": false, + "scrape-paused-torrents-enabled": true, + "script-torrent-added-enabled": false, + "script-torrent-added-filename": "", + "script-torrent-done-enabled": false, + "script-torrent-done-filename": "", + "script-torrent-done-seeding-enabled": false, + "script-torrent-done-seeding-filename": "", + "seed-queue-enabled": false, + "seed-queue-size": 10, + "speed-limit-down": 92, + "speed-limit-down-enabled": true, + "speed-limit-up": 2500, + "speed-limit-up-enabled": false, + "start-added-torrents": true, + "tcp-enabled": true, + "torrent-added-verify-mode": "fast", + "trash-original-torrent-files": false, + "umask": "002", + "upload-slots-per-torrent": 14, + "utp-enabled": true, + "watch-dir": "/watch", + "watch-dir-enabled": true +} |
