commit 76a88a4b6191784ca6f27009e2c7fb253c636fb9 Author: mates Date: Sat Aug 1 19:51:58 2026 +0200 init: clean history with no PII Toto repo ma novou cistou historii (1 commit). Predchozi historie byla smazana, protoze obsahovala osobni udaje (IP, emaily, hesla, klice, tokeny, Volume cesty). Soubory v aktualnim commit uz tyto udaje neobsahuji (nahradeno placeholdery , CHANGE_ME, admin@example.com atd.). Pokud chces zpet kompletni seznam starych commitu, mas je ve svem lokalnim working tree - git log --all ukaze prazdno (protoze jsme smazali .git/ a zacali znovu). diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c8459ed --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +# Secrets - nikdy v gitu +.env +*.env +!.env.example + +# Zálohy a dočasné soubory +*.bak +*.tmp +*.orig + +# Editor +.vscode/ +.idea/ +.DS_Store +*.swp + +# Build artefakty +*.log diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..17535d5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 mates + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..5655e5e --- /dev/null +++ b/README.md @@ -0,0 +1,39 @@ +# mates-docker-services + +Docker Compose šablony pro 14 self-hosted služeb. +Toto je **přesná kopie** `docker-compose.yml` souborů z běžícího serveru. + +## Služby + +| Služba | Port | Image | +|---|---|---| +| audiobookshelf | 13378 | advplyr/audiobookshelf | +| calibre-web | 8083 | linuxserver/calibre-web | +| erugo | 61080 | wardy784/erugo | +| gitea | 3000, 222 | gitea/gitea | +| jotty | 1122 | mrx23dotcom/jotty | +| jswiki | 9180 | linuxserver/wikijs | +| nextcloud-aio | 8155 | nextcloud/all-in-one | +| nginx-proxy-manager | 80, 443, 81 | jc21/nginx-proxy-manager | +| plex | 32400 | linuxserver/plex | +| portainer | 9000, 9443 | portainer/portainer-ce | +| rustdesk | 21115-21119 | rustdesk/rustdesk-server | +| speedtest | 8072 | linuxserver/speedtest-tracker | +| vaultwarden | 2999 | vaultwarden/server | +| watchtower | – | containrrr/watchtower | + +## Použití + +```bash +cd +cp .env.example .env # pokud existuje +docker compose up -d +``` + +## Detailní návody + +Každá služba má `README.md` s odkazem na Jotty knowledge base (kategorie podle typu). + +## Licence + +MIT – viz [LICENSE](LICENSE) diff --git a/audiobookshelf/.env.example b/audiobookshelf/.env.example new file mode 100644 index 0000000..ed30a5d --- /dev/null +++ b/audiobookshelf/.env.example @@ -0,0 +1,4 @@ +# Audiobookshelf – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 diff --git a/audiobookshelf/README.md b/audiobookshelf/README.md new file mode 100644 index 0000000..f270c32 --- /dev/null +++ b/audiobookshelf/README.md @@ -0,0 +1,17 @@ +# Audiobookshelf + +Docker Compose pro Audiobookshelf. +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/audiobookshelf/`. + +## Spuštění + +```bash +cp /home/mates/docker/audiobookshelf/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod najdeš v Jotty knowledge base (kategorie: Média a knihovny). + +Portainer URL pro správu: http://:9000 diff --git a/audiobookshelf/docker-compose.yml b/audiobookshelf/docker-compose.yml new file mode 100644 index 0000000..cdb9ca8 --- /dev/null +++ b/audiobookshelf/docker-compose.yml @@ -0,0 +1,12 @@ +services: + audiobookshelf: + image: ghcr.io/advplyr/audiobookshelf:latest + container_name: audiobookshelf + ports: + - "13378:80" + volumes: + - ./config:/config + - /home/mates/multimedia/Audioknihy:/audiobooks + labels: + - "com.centurylinklabs.watchtower.enable=true" + restart: unless-stopped diff --git a/calibre-web/.env.example b/calibre-web/.env.example new file mode 100644 index 0000000..b8ee0ec --- /dev/null +++ b/calibre-web/.env.example @@ -0,0 +1,4 @@ +# Calibre-Web – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 diff --git a/calibre-web/README.md b/calibre-web/README.md new file mode 100644 index 0000000..c8631f0 --- /dev/null +++ b/calibre-web/README.md @@ -0,0 +1,15 @@ +# Calibre-Web + +Docker Compose pro Calibre-Web. +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/calibre-web/`. + +## Spuštění + +```bash +cp /home/mates/docker/calibre-web/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Calibre-Web](@note-f8f201b9) v Jotty (kategorie: Média a knihovny). diff --git a/calibre-web/docker-compose.yml b/calibre-web/docker-compose.yml new file mode 100644 index 0000000..732cfe3 --- /dev/null +++ b/calibre-web/docker-compose.yml @@ -0,0 +1,18 @@ +version: '3.8' + +services: + calibre-web: + image: linuxserver/calibre-web + container_name: calibre-web + environment: + - PUID=1000 # Změň podle UID uživatele + - PGID=1000 # Změň podle GID skupiny + - TZ=Europe/Prague + volumes: + - /home/mates/multimedia/Eknihy:/books + - /home/mates/docker/calibre-web/config:/config + ports: + - 8083:8083 + labels: + - "com.centurylinklabs.watchtower.enable=true" + restart: unless-stopped diff --git a/erugo/.env.example b/erugo/.env.example new file mode 100644 index 0000000..af29219 --- /dev/null +++ b/erugo/.env.example @@ -0,0 +1,4 @@ +# Erugo – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 diff --git a/erugo/README.md b/erugo/README.md new file mode 100644 index 0000000..68d11ca --- /dev/null +++ b/erugo/README.md @@ -0,0 +1,11 @@ +# Erugo + +Docker Compose pro Erugo (file sharing). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/erugo/`. + +## Spuštění + +```bash +cp /home/mates/docker/erugo/docker-compose.yml ./ +docker compose up -d +``` diff --git a/erugo/docker-compose.yml b/erugo/docker-compose.yml new file mode 100644 index 0000000..fb4cef7 --- /dev/null +++ b/erugo/docker-compose.yml @@ -0,0 +1,8 @@ +services: + app: + image: wardy784/erugo:latest + restart: unless-stopped + volumes: + - ./erugo-storage:/var/www/html/storage + ports: + - "61080:80" diff --git a/gitea/.env.example b/gitea/.env.example new file mode 100644 index 0000000..833c48c --- /dev/null +++ b/gitea/.env.example @@ -0,0 +1,11 @@ +# Gitea – promenne prostredi +USER_UID=1000 +USER_GID=1000 +TZ=Europe/Prague + +# Po prvnim adminovi nastav na false +GITEA__service__DISABLE_REGISTRATION=false +GITEA__service__REQUIRE_SIGNIN_VIEW=false + +# HTTPS terminuje NPM, takze false +GITEA__session__COOKIE_SECURE=false diff --git a/gitea/README.md b/gitea/README.md new file mode 100644 index 0000000..e5da9c0 --- /dev/null +++ b/gitea/README.md @@ -0,0 +1,16 @@ +# Gitea + +Docker Compose pro Gitea (self-hosted Git). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/gitea/`. + +## Spuštění + +```bash +cp /home/mates/docker/gitea/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +API token je uložen v macOS keychainu (`gitea:api:`). +Gitea web: http://:3000 diff --git a/gitea/docker-compose.yml b/gitea/docker-compose.yml new file mode 100644 index 0000000..e34014c --- /dev/null +++ b/gitea/docker-compose.yml @@ -0,0 +1,44 @@ +--- +# Gitea - self-hosted Git service +# - zdroj: https://docs.gitea.com/installation/install-with-docker/ +# - image: docker.gitea.com/gitea:1.27.1 (stabilni LTS) +# - SQLite (zadna DB navic, vhodne pro maly/stredni server) +# - porty: 3000 (web), 222 (SSH pro git push pres SSH) +# - UID/GID 1000:1000 (sedí na serveru mates:1000) +services: + server: + image: docker.gitea.com/gitea:1.27.1 + container_name: gitea + environment: + - USER_UID=1000 + - USER_GID=1000 + - GITEA__webhook__SKIP_TLS_VERIFY=false + - GITEA__service__DISABLE_REGISTRATION=false + - GITEA__service__REQUIRE_SIGNIN_VIEW=false + - GITEA__session__COOKIE_SECURE=false + restart: unless-stopped + networks: + - gitea_net + volumes: + - ./gitea:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "3000:3000" + - "222:22" + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 30s + logging: + driver: json-file + options: + max-size: "10m" + max-file: "3" + +networks: + gitea_net: + name: gitea_default + driver: bridge diff --git a/jotty/.env.example b/jotty/.env.example new file mode 100644 index 0000000..f9879e2 --- /dev/null +++ b/jotty/.env.example @@ -0,0 +1,4 @@ +# Jotty – promenne prostredi +TZ=Europe/Prague +PUID=1000 +PGID=1000 diff --git a/jotty/README.md b/jotty/README.md new file mode 100644 index 0000000..10d49b4 --- /dev/null +++ b/jotty/README.md @@ -0,0 +1,15 @@ +# Jotty + +Docker Compose pro Jotty (poznámky a checklisty). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/jotty/`. + +## Spuštění + +```bash +cp /home/mates/docker/jotty/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Knowledge base: http://:1122 diff --git a/jotty/docker-compose.yml b/jotty/docker-compose.yml new file mode 100644 index 0000000..d49395b --- /dev/null +++ b/jotty/docker-compose.yml @@ -0,0 +1,28 @@ +--- +# Jotty - File-based markdown notes & checklists +# Zdroj: https://github.com/fccview/jotty/blob/main/docker-compose.yml +# Upraveno: izolovany bridge, bez zbytecnych env vars, ponechana auth default +services: + jotty: + image: ghcr.io/fccview/jotty:latest + container_name: jotty + user: "1000:1000" + ports: + - "1122:3000" + volumes: + - ./data:/app/data:rw + - ./config:/app/config:rw + - ./cache:/app/.next/cache:rw + restart: unless-stopped + environment: + - NODE_ENV=production + - PUID=1000 + - PGID=1000 + - UMASK=002 + networks: + - jotty_net + +networks: + jotty_net: + name: jotty_default + driver: bridge diff --git a/jswiki/.env.example b/jswiki/.env.example new file mode 100644 index 0000000..5e7e100 --- /dev/null +++ b/jswiki/.env.example @@ -0,0 +1,9 @@ +# Wiki.js – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# MariaDB hesla (ZMEN!) +MYSQL_ROOT_PASSWORD=change-me-strong +MYSQL_PASSWORD=change-me-strong +WIKIJS_DB_PASS=change-me-strong diff --git a/jswiki/README.md b/jswiki/README.md new file mode 100644 index 0000000..c64a211 --- /dev/null +++ b/jswiki/README.md @@ -0,0 +1,15 @@ +# Wiki.js + +Docker Compose pro Wiki.js. +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/jswiki/`. + +## Spuštění + +```bash +cp /home/mates/docker/jswiki/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Wiki.js](@note-c9c38ca9) v Jotty (kategorie: Cloud a web). diff --git a/jswiki/docker-compose.yml b/jswiki/docker-compose.yml new file mode 100644 index 0000000..2eb488b --- /dev/null +++ b/jswiki/docker-compose.yml @@ -0,0 +1,17 @@ +version: "3" +services: + wikijs: + image: lscr.io/linuxserver/wikijs + labels: + - "com.centurylinklabs.watchtower.enable=true" + container_name: wikijs + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Prague + volumes: + - /home/mates/docker/jswiki/config:/config + - /home/mates/docker/jswiki/data:/data + ports: + - 9180:3000 + restart: unless-stopped diff --git a/nextcloud-aio/.env.example b/nextcloud-aio/.env.example new file mode 100644 index 0000000..fd433d8 --- /dev/null +++ b/nextcloud-aio/.env.example @@ -0,0 +1,19 @@ +# Nextcloud AIO – promenne prostredi +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# Web port (default 11000) +APACHE_PORT=11000 + +# Data na hostu (NE v kontejneru) +NEXTCLOUD_DATADIR=/mnt/data + +# Extra baliky (ImageMagick pro OCR, dalsi) +NEXTCLOUD_ADDITIONAL_APKS=imagemagick + +# Upload limit +NEXTCLOUD_UPLOAD_LIMIT=10G + +# Duvihodne certifikaty (firemni CA, Cloudflare Origin) +# NEXTCLOUD_TRUSTED_CACERTS_DIR=/usr/local/share/ca-certificates diff --git a/nextcloud-aio/README.md b/nextcloud-aio/README.md new file mode 100644 index 0000000..93552e1 --- /dev/null +++ b/nextcloud-aio/README.md @@ -0,0 +1,20 @@ +# Nextcloud AIO + +Docker Compose pro Nextcloud AIO (All-in-One). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/nextcloud/`. + +## Spuštění + +```bash +cp /home/mates/docker/nextcloud/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návody: +- [Nextcloud AIO – instalace](@note-0fecb9d5) +- [Nextcloud AIO – aktualizace](@note-74b60dd2) +- [Nextcloud AIO – Cloudflare Tunnel](@note-becafdc3) + +Vše v Jotty, kategorie: Cloud a web. diff --git a/nextcloud-aio/docker-compose.yml b/nextcloud-aio/docker-compose.yml new file mode 100644 index 0000000..c3092ad --- /dev/null +++ b/nextcloud-aio/docker-compose.yml @@ -0,0 +1,19 @@ +volumes: + nextcloud_aio_mastercontainer: + name: nextcloud_aio_mastercontainer + +services: + nextcloud: + image: nextcloud/all-in-one:latest + restart: unless-stopped + container_name: nextcloud-aio-mastercontainer + volumes: + - nextcloud_aio_mastercontainer:/mnt/docker-aio-config + - /var/run/docker.sock:/var/run/docker.sock:ro + ports: + - 8155:8080 + environment: + - APACHE_PORT=11000 + - APACHE_DISABLE_REWRITE_IP=1 + - NEXTCLOUD_TRUSTED_DOMAINS=nextcloud.example.com + - TRUSTED_PROXIES= diff --git a/nginx-proxy-manager/.env.example b/nginx-proxy-manager/.env.example new file mode 100644 index 0000000..0cd5d3b --- /dev/null +++ b/nginx-proxy-manager/.env.example @@ -0,0 +1,8 @@ +# NPM – promenne prostredi +TZ=Europe/Prague +PUID=1000 +PGID=1000 +DISABLE_IPV6=true + +# MariaDB heslo pro NPM backend (ZMEN!) +MYSQL_ROOT_PASSWORD=change-me-strong-password diff --git a/nginx-proxy-manager/README.md b/nginx-proxy-manager/README.md new file mode 100644 index 0000000..aa46aeb --- /dev/null +++ b/nginx-proxy-manager/README.md @@ -0,0 +1,15 @@ +# Nginx Proxy Manager (NPM) + +Docker Compose pro Nginx Proxy Manager. +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/nginx/`. + +## Spuštění + +```bash +cp /home/mates/docker/nginx/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Nginx Proxy Manager](@note-b9fd4d6e) v Jotty (kategorie: Docker a kontejnery). diff --git a/nginx-proxy-manager/docker-compose.yml b/nginx-proxy-manager/docker-compose.yml new file mode 100644 index 0000000..96c8bd9 --- /dev/null +++ b/nginx-proxy-manager/docker-compose.yml @@ -0,0 +1,31 @@ +version: "3" +services: + app: + image: jc21/nginx-proxy-manager:latest + container_name: nginx_proxy_manager + restart: unless-stopped + ports: + - "80:80" + - "81:81" + - "443:443" + environment: + DB_MYSQL_HOST: "db" + DB_MYSQL_PORT: 3306 + DB_MYSQL_USER: "npm" + DB_MYSQL_PASSWORD: "CHANGE_ME_NPM_DB_PASSWORD" + DB_MYSQL_NAME: "npm_db" + volumes: + - ./data:/data + - ./letsencrypt:/etc/letsencrypt + + db: + image: mariadb:latest + container_name: npm_db + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: "CHANGE_ME_NPM_DB_ROOT_PASSWORD" + MYSQL_DATABASE: "npm_db" + MYSQL_USER: "npm" + MYSQL_PASSWORD: "CHANGE_ME_NPM_DB_PASSWORD" + volumes: + - ./mysql:/var/lib/mysql diff --git a/plex/.env.example b/plex/.env.example new file mode 100644 index 0000000..f1bb624 --- /dev/null +++ b/plex/.env.example @@ -0,0 +1,8 @@ +# Plex – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# HW akcelerace (vyber podle sveho GPU) +# NVIDIA_VISIBLE_DEVICES=all +# INTEL_VISIBLE_DEVICES=true diff --git a/plex/README.md b/plex/README.md new file mode 100644 index 0000000..5913647 --- /dev/null +++ b/plex/README.md @@ -0,0 +1,20 @@ +# Plex + +Docker Compose pro Plex (media server). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/plex/`. + +## Spuštění + +```bash +cp /home/mates/docker/plex/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návody: +- [Plex – media server](@note-7fe39900) +- [Plex – příprava videa](@note-ba0c6d7d) +- [Tautulli – monitoring Plex](@note-2a7b85bf) + +Vše v Jotty, kategorie: Média a knihovny. diff --git a/plex/docker-compose.yml b/plex/docker-compose.yml new file mode 100644 index 0000000..376617c --- /dev/null +++ b/plex/docker-compose.yml @@ -0,0 +1,20 @@ +version: "2.1" +services: + plex: + image: ghcr.io/linuxserver/plex + container_name: plex + network_mode: host + environment: + - PUID=1000 + - PGID=1000 + - VERSION=docker + - PLEX_CLAIM= #optional + volumes: + - /home/mates/docker/plex/config:/config + - /home/mates/multimedia/Filmy:/filmy + - /home/mates/multimedia/Seriály:/serialy + - /home/mates/multimedia/Novinky/Seriály:/serialy_novinky + - /home/mates/multimedia/Novinky/Filmy:/filmy_novinky + restart: unless-stopped + labels: + - "com.centurylinklabs.watchtower.enable=true" diff --git a/portainer/.env.example b/portainer/.env.example new file mode 100644 index 0000000..189bdd4 --- /dev/null +++ b/portainer/.env.example @@ -0,0 +1,9 @@ +# Portainer CE – promenne prostredi +# Zkopiruj tento soubor na .env a dopln skutecne hodnoty + +# Timezone +TZ=Europe/Prague + +# UID/GID pro file ownership +PUID=1000 +PGID=1000 diff --git a/portainer/README.md b/portainer/README.md new file mode 100644 index 0000000..9e1b109 --- /dev/null +++ b/portainer/README.md @@ -0,0 +1,20 @@ +# Portainer + +Docker Compose pro Portainer CE (Docker UI management). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/portainer/`. + +## Spuštění + +```bash +cp /home/mates/docker/portainer/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návody: +- [Portainer – rychlá instalace](@note-030f5de2) +- [Docker + Portainer – instalace](@note-95802230) +- [Docker + Portainer + NPM – skript](@note-b2e5b911) + +Vše v Jotty, kategorie: Docker a kontejnery. diff --git a/portainer/docker-compose.yml b/portainer/docker-compose.yml new file mode 100644 index 0000000..3ee8e90 --- /dev/null +++ b/portainer/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.8" + +services: + portainer: + image: portainer/portainer-ce:latest + container_name: portainer + restart: unless-stopped + ports: + - "9000:9000" + - "9443:9443" + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - /home/mates/docker/portainer/data:/data + labels: + - "com.centurylinklabs.watchtower.enable=true" diff --git a/rustdesk/.env.example b/rustdesk/.env.example new file mode 100644 index 0000000..bc69a16 --- /dev/null +++ b/rustdesk/.env.example @@ -0,0 +1,7 @@ +# RustDesk – promenne prostredi +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# Poznamka: Po prvnim spusteni si uloz verejny klic z logu hbbs +# Pouzije se v RustDesk klientovi (Preferences, Network, Key Server) diff --git a/rustdesk/README.md b/rustdesk/README.md new file mode 100644 index 0000000..00b1ed7 --- /dev/null +++ b/rustdesk/README.md @@ -0,0 +1,19 @@ +# RustDesk + +Docker Compose pro RustDesk Server (vlastní relay). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/rustdesk/`. + +## Spuštění + +```bash +cp /home/mates/docker/rustdesk/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návody: +- [RustDesk – vlastní server](@note-b78a3660) +- [RustDesk – vlastní .exe soubor](@note-c23a20d3) + +Vše v Jotty, kategorie: Síť a vzdálený přístup. diff --git a/rustdesk/docker-compose.yml b/rustdesk/docker-compose.yml new file mode 100644 index 0000000..80a75c6 --- /dev/null +++ b/rustdesk/docker-compose.yml @@ -0,0 +1,18 @@ +services: + hbbs: + container_name: hbbs + image: rustdesk/rustdesk-server:latest + command: hbbs + volumes: + - ./data:/root + network_mode: host + restart: unless-stopped + + hbbr: + container_name: hbbr + image: rustdesk/rustdesk-server:latest + command: hbbr + volumes: + - ./data:/root + network_mode: host + restart: unless-stopped diff --git a/speedtest/.env.example b/speedtest/.env.example new file mode 100644 index 0000000..ec8b935 --- /dev/null +++ b/speedtest/.env.example @@ -0,0 +1,10 @@ +# Speedtest Tracker – promenne +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# APP_KEY: 32+ znaku – vygeneruj: openssl rand -base64 32 +APP_KEY=change-me-32-char-base64-key + +# URL kde bezi Speedtest Tracker +APP_URL=http://CHANGE_ME:8765 diff --git a/speedtest/README.md b/speedtest/README.md new file mode 100644 index 0000000..49ac0c4 --- /dev/null +++ b/speedtest/README.md @@ -0,0 +1,15 @@ +# Speedtest Tracker + +Docker Compose pro Speedtest Tracker. +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/speedtest/`. + +## Spuštění + +```bash +cp /home/mates/docker/speedtest/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Speedtest Tracker](@note-eeb74942) v Jotty (kategorie: Monitoring a nástroje). diff --git a/speedtest/docker-compose.yml b/speedtest/docker-compose.yml new file mode 100644 index 0000000..fe8f899 --- /dev/null +++ b/speedtest/docker-compose.yml @@ -0,0 +1,31 @@ +version: '3.8' + +services: + speedtest-tracker: + container_name: speedtest-tracker + image: lscr.io/linuxserver/speedtest-tracker:latest + labels: + - "com.centurylinklabs.watchtower.enable=true" + ports: + - '8072:80' + - '8472:443' + environment: + - PUID=1000 + - PGID=1000 + - APP_KEY=base64:CHANGE_ME_GENERATE_WITH_openssl_rand_base64_32 + - APP_URL=https://rychlost.example.com + - DB_CONNECTION=sqlite + - SPEEDTEST_SCHEDULE=0 */3 * * * + - DISPLAY_TIMEZONE=Europe/Prague + - MAIL_MAILER=smtp + - MAIL_HOST=smtp.example.com + - MAIL_PORT=465 + - MAIL_USERNAME=admin@example.com + - MAIL_PASSWORD=CHANGE_ME + - MAIL_ENCRYPTION=ssl + - MAIL_FROM_ADDRESS=admin@example.com + - MAIL_FROM_NAME="Speedtest Tracker" + volumes: + - ./data:/config + - ./ssl-keys:/config/keys + restart: unless-stopped diff --git a/vaultwarden/.env.example b/vaultwarden/.env.example new file mode 100644 index 0000000..9b8fbba --- /dev/null +++ b/vaultwarden/.env.example @@ -0,0 +1,15 @@ +# Vaultwarden – promenne prostredi +TZ=Europe/Prague +PUID=1000 +PGID=1000 + +# URL pres kterou bude Vaultwarden dostupny (musi byt https://) +DOMAIN=https://vault.example.com + +# Po prvnim prihlaseni admin uctu nastavte na false +SIGNUPS_ALLOWED=true +INVITATIONS_ALLOWED=false + +# Bezpecnost +SHOW_PASSWORD_HINT=false +LOG_LEVEL=warn diff --git a/vaultwarden/README.md b/vaultwarden/README.md new file mode 100644 index 0000000..b047738 --- /dev/null +++ b/vaultwarden/README.md @@ -0,0 +1,15 @@ +# Vaultwarden + +Docker Compose pro Vaultwarden (Bitwarden-kompatibilní správce hesel). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/vaultwarden/`. + +## Spuštění + +```bash +cp /home/mates/docker/vaultwarden/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Vaultwarden – server](@note-eabd5d91) v Jotty (kategorie: Bezpečnost). diff --git a/vaultwarden/docker-compose.yml b/vaultwarden/docker-compose.yml new file mode 100644 index 0000000..112c850 --- /dev/null +++ b/vaultwarden/docker-compose.yml @@ -0,0 +1,35 @@ +services: + vaultwarden: + restart: always + container_name: vaultwarden + image: vaultwarden/server:latest + volumes: + - ./data:/data/ + ports: + - 2999:80 + environment: + - SMTP_HOST=smtp.example.com + - SMTP_FROM=admin@example.com + - SMTP_FROM_NAME=VaultWarden + - SMTP_SECURITY=starttls + - SMTP_PORT=587 + - SMTP_USERNAME=admin@example.com + - SMTP_PASSWORD=CHANGE_ME + - SMTP_TIMEOUT=30 + - SMTP_AUTH_MECHANISM="Plain" + - LOGIN_RATELIMIT_MAX_BURST=10 + - LOGIN_RATELIMIT_SECONDS=60 + - DOMAIN=https://hesla.example.com + - INVITATION_ORG_NAME=HomeVault + - INVITATIONS_ALLOWED=true + - ADMIN_TOKEN=CHANGE_ME_GENERATE_WITH_openssl_rand_hex_32 + - SIGNUPS_ALLOWED=false + - SIGNUPS_DOMAINS_WHITELIST=example.com,mydomain.net,myotherdomain.org + - SIGNUPS_VERIFY=true + - SIGNUPS_VERIFY_RESEND_TIME=3600 + - SIGNUPS_VERIFY_RESEND_LIMIT=6 + - EMERGENCY_ACCESS_ALLOWED=true + - SENDS_ALLOWED=true + - WEB_VAULT_ENABLED=true + labels: + - "com.centurylinklabs.watchtower.enable=true" diff --git a/watchtower/.env.example b/watchtower/.env.example new file mode 100644 index 0000000..5873336 --- /dev/null +++ b/watchtower/.env.example @@ -0,0 +1,22 @@ +# Watchtower – promenne +TZ=Europe/Prague + +# Mod: true = jen upozorni, false = auto-aktualizuje +WATCHTOWER_MONITOR_ONLY=true + +# Mazat stare image po update +WATCHTOWER_CLEANUP=true + +# Cron schedule (default: kazdou nedeli ve 4:00) +WATCHTOWER_SCHEDULE=0 0 4 ? * SUN + +# Email notifikace +WATCHTOWER_NOTIFICATIONS=email +WATCHTOWER_NOTIFICATION_EMAIL_FROM=watchtower@example.com +WATCHTOWER_NOTIFICATION_EMAIL_TO=admin@example.com +WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.example.com +WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587 +WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=watchtower@example.com +WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=change-me + +# Poznamka: V praxi nastav SMTP podle sveho providera diff --git a/watchtower/README.md b/watchtower/README.md new file mode 100644 index 0000000..88b67f1 --- /dev/null +++ b/watchtower/README.md @@ -0,0 +1,15 @@ +# Watchtower + +Docker Compose pro Watchtower (auto-update Docker kontejnerů). +Toto je **přesná kopie** `docker-compose.yml` z běžícího serveru `/home/mates/docker/watchtower/`. + +## Spuštění + +```bash +cp /home/mates/docker/watchtower/docker-compose.yml ./ +docker compose up -d +``` + +## Související + +Detailní návod: [Watchtower](@note-d31fdd6b) v Jotty (kategorie: Monitoring a nástroje). diff --git a/watchtower/docker-compose.yml b/watchtower/docker-compose.yml new file mode 100644 index 0000000..5ef4899 --- /dev/null +++ b/watchtower/docker-compose.yml @@ -0,0 +1,24 @@ +services: + watchtower: + image: containrrr/watchtower:latest + container_name: watchtower + labels: + - "com.centurylinklabs.watchtower.enable=true" + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - TZ=Europe/Prague + - DOCKER_API_VERSION=1.44 # <<< DŮLEŽITÉ – přidáno + - WATCHTOWER_MONITOR_ONLY=false + - WATCHTOWER_SCHEDULE=0 0 8 * * * + - WATCHTOWER_CLEANUP=true + - WATCHTOWER_NOTIFICATIONS=email + - WATCHTOWER_NOTIFICATION_EMAIL_FROM=admin@example.com + - WATCHTOWER_NOTIFICATION_EMAIL_TO=admin@example.com + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.example.com + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=CHANGE_ME + - WATCHTOWER_NOTIFICATION_EMAIL_SUBJECTTAG=Server Container Updates + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=admin@example.com + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=465 + - WATCHTOWER_LABEL_ENABLE=true + restart: unless-stopped