mirror of
https://github.com/JG2401/HetznerDokployLab.git
synced 2026-08-28 20:20:15 +00:00
Merge branch 'main' into dependabot/docker_compose/projects/immich/tensorchord/pgvecto-rs-pg14-v0.4.0
This commit is contained in:
30
.github/dependabot.yml
vendored
30
.github/dependabot.yml
vendored
@@ -11,60 +11,60 @@ updates:
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "firefly"
|
||||
#immich
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/immich"
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "immich"
|
||||
#n8n
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/n8n"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "n8n"
|
||||
#paperless
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/paperless"
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "paperless"
|
||||
#tandoor
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/tandoor"
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "tandoor"
|
||||
#jellyseer
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/jellyseer"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "jellyseer"
|
||||
#jellyfin
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/jellyfin"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "jellyfin"
|
||||
#vaultwarden
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/vaultwarden"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "vaultwarden"
|
||||
#nextcloud
|
||||
- package-ecosystem: "docker-compose"
|
||||
directory: "/projects/nextcloud"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
labels:
|
||||
- "dependencies"
|
||||
- "auto-merge"
|
||||
- "nextcloud"
|
||||
|
||||
30
.github/workflows/dependabotautomerge.yml
vendored
30
.github/workflows/dependabotautomerge.yml
vendored
@@ -1,30 +0,0 @@
|
||||
name: Auto-merge Dependabot PRs
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
|
||||
jobs:
|
||||
automerge:
|
||||
if: github.event.pull_request.user.login == 'dependabot[bot]'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Debug token presence
|
||||
run: |
|
||||
if [ -z "${{ secrets.GITHUB_TOKEN }}" ]; then
|
||||
echo "TOKEN IS EMPTY"
|
||||
exit 1
|
||||
else
|
||||
echo "TOKEN EXISTS"
|
||||
fi
|
||||
|
||||
- name: Auto-merge
|
||||
if: contains(github.event.pull_request.labels.*.name, 'auto-merge')
|
||||
uses: fastify/github-action-merge-dependabot@v3
|
||||
with:
|
||||
github-token: ${{ secrets.GH_TOKEN }}
|
||||
@@ -27,7 +27,7 @@ services:
|
||||
- dokploy-network
|
||||
|
||||
cron:
|
||||
image: alpine:3.23.4
|
||||
image: alpine:3.24.1
|
||||
restart: unless-stopped
|
||||
container_name: firefly_iii_cron
|
||||
environment:
|
||||
@@ -41,7 +41,7 @@ services:
|
||||
- dokploy-network
|
||||
|
||||
db:
|
||||
image: mariadb:12.2
|
||||
image: mariadb:12.3
|
||||
hostname: db
|
||||
container_name: firefly_iii_db
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -3,10 +3,15 @@ version: "3.9"
|
||||
services:
|
||||
immich-server:
|
||||
image: ghcr.io/immich-app/immich-server:v2.7.5
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "1.25"
|
||||
memory: 2G
|
||||
labels:
|
||||
- rclone.storage=storagebox-crypt
|
||||
volumes:
|
||||
- /media/storagebox-crypt/immich/library:/usr/src/app/upload
|
||||
- /opt/media/storagebox/immich/library:/usr/src/app/upload
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
depends_on:
|
||||
immich-redis:
|
||||
@@ -36,7 +41,11 @@ services:
|
||||
|
||||
immich-machine-learning:
|
||||
image: ghcr.io/immich-app/immich-machine-learning:v2.7.5
|
||||
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "1.75"
|
||||
memory: 2.5G
|
||||
volumes:
|
||||
- immich-model-cache:/cache
|
||||
environment:
|
||||
@@ -52,7 +61,11 @@ services:
|
||||
|
||||
immich-redis:
|
||||
image: redis:6.2-alpine
|
||||
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "0.25"
|
||||
memory: 256M
|
||||
volumes:
|
||||
- immich-redis-data:/data
|
||||
healthcheck:
|
||||
|
||||
@@ -2,10 +2,15 @@ version: "3.8"
|
||||
services:
|
||||
jellyfin:
|
||||
image: jellyfin/jellyfin:10
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "2.0"
|
||||
memory: 2G
|
||||
volumes:
|
||||
- config:/config
|
||||
- cache:/cache
|
||||
- /mnt/seedbox/media:/media
|
||||
- /opt/media/seedbox/media:/media:ro
|
||||
restart: "unless-stopped"
|
||||
environment:
|
||||
- JELLYFIN_PublishedServerUrl=https://${JELLYFIN_HOST}
|
||||
|
||||
0
projects/mealie/README.md
Normal file
0
projects/mealie/README.md
Normal file
36
projects/mealie/docker-compose.yml
Normal file
36
projects/mealie/docker-compose.yml
Normal file
@@ -0,0 +1,36 @@
|
||||
services:
|
||||
mealie:
|
||||
image: ghcr.io/mealie-recipes/mealie:latest
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "1.0"
|
||||
memory: 1G
|
||||
volumes:
|
||||
- mealie-data:/app/data/
|
||||
environment:
|
||||
PUID: 1000
|
||||
PGID: 1000
|
||||
|
||||
# Basic settings
|
||||
BASE_URL: ${BASE_URL}
|
||||
API_DOCS: ${API_DOCS}
|
||||
ALLOW_SIGNUP: ${ALLOW_SIGNUP}
|
||||
DEFAULT_GROUP: ${DEFAULT_GROUP}
|
||||
DEFAULT_HOUSEHOLD: ${DEFAULT_HOUSEHOLD}
|
||||
TZ: ${TZ}
|
||||
SECURITY_MAX_LOGIN_ATTEMPTS: ${SECURITY_MAX_LOGIN_ATTEMPTS}
|
||||
SECURITY_USER_LOCKOUT_TIME: ${SECURITY_USER_LOCKOUT_TIME}
|
||||
DAILY_SCHEDULE_TIME: ${DAILY_SCHEDULE_TIME}
|
||||
|
||||
# Email settings
|
||||
SMTP_HOST: ${SMTP_HOST}
|
||||
SMTP_PORT: ${SMTP_PORT}
|
||||
SMTP_AUTH_STRATEGY: ${SMTP_AUTH_STRATEGY}
|
||||
SMTP_FROM_NAME: ${SMTP_FROM_NAME}
|
||||
SMTP_FROM_EMAIL: ${SMTP_FROM_EMAIL}
|
||||
SMTP_USER: ${SMTP_USER}
|
||||
SMTP_PASSWORD: ${SMTP_PASSWORD}
|
||||
|
||||
volumes:
|
||||
mealie-data: {}
|
||||
@@ -1,6 +1,6 @@
|
||||
services:
|
||||
n8n:
|
||||
image: docker.n8n.io/n8nio/n8n:2.17.7
|
||||
image: docker.n8n.io/n8nio/n8n:2.29.10
|
||||
restart: always
|
||||
labels:
|
||||
- rclone.storage=storagebox-crypt
|
||||
@@ -14,7 +14,7 @@ services:
|
||||
- N8N_SECURE_COOKIE=false
|
||||
- N8N_RESTRICT_FILE_ACCESS_TO=/home/node
|
||||
volumes:
|
||||
- /media/storagebox-crypt/paperless/consume:/home/node/paperless/consume:rw
|
||||
- /opt/media/storagebox/paperless/consume:/home/node/paperless/consume:rw
|
||||
- n8n_data:/home/node/.n8n
|
||||
|
||||
volumes:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
services:
|
||||
nextcloud:
|
||||
image: nextcloud:33.0.2
|
||||
image: nextcloud:34.0.3
|
||||
restart: unless-stopped
|
||||
labels:
|
||||
- rclone.storage=storagebox-crypt
|
||||
@@ -8,7 +8,7 @@ services:
|
||||
- traefik.http.routers.nextcloud.middlewares=nextcloud-buffering
|
||||
volumes:
|
||||
- nextcloud_data:/var/www/html
|
||||
- /media/storagebox-crypt/nextcloud:/mnt/storagebox
|
||||
- /opt/media/storagebox/nextcloud:/mnt/storagebox
|
||||
environment:
|
||||
- NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_DOMAIN}
|
||||
- MYSQL_HOST=nextcloud_db
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
version: '3.8'
|
||||
services:
|
||||
paperless:
|
||||
image: ghcr.io/paperless-ngx/paperless-ngx:2.20.10
|
||||
image: ghcr.io/paperless-ngx/paperless-ngx:3.0.5
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "1.0"
|
||||
memory: 1.5G
|
||||
container_name: paperless
|
||||
restart: unless-stopped
|
||||
labels:
|
||||
- rclone.storage=storagebox-crypt
|
||||
volumes:
|
||||
- /media/storagebox-crypt/paperless/data:/usr/src/paperless/data
|
||||
- /media/storagebox-crypt/paperless/media:/usr/src/paperless/media
|
||||
- /media/storagebox-crypt/paperless/export:/usr/src/paperless/export
|
||||
- /media/storagebox-crypt/paperless/consume:/usr/src/paperless/consume
|
||||
- /opt/media/storagebox/paperless/data:/usr/src/paperless/data
|
||||
- /opt/media/storagebox/paperless/media:/usr/src/paperless/media
|
||||
- /opt/media/storagebox/paperless/export:/usr/src/paperless/export
|
||||
- /opt/media/storagebox/paperless/consume:/usr/src/paperless/consume
|
||||
environment:
|
||||
PAPERLESS_REDIS: ${PAPERLESS_REDIS}
|
||||
PAPERLESS_TIME_ZONE: ${PAPERLESS_TIME_ZONE}
|
||||
@@ -21,6 +26,8 @@ services:
|
||||
PAPERLESS_ALLOWED_HOSTS: ${PAPERLESS_ALLOWED_HOSTS}
|
||||
PAPERLESS_DBHOST: ${PAPERLESS_DBHOST}
|
||||
PAPERLESS_DBPASS: ${PAPERLESS_DBPASS}
|
||||
PAPERLESS_OCR_OUTPUT_TYPE: ${PAPERLESS_OCR_OUTPUT_TYPE}
|
||||
PAPERLESS_SECRET_KEY: ${PAPERLESS_SECRET_KEY}
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8000"]
|
||||
interval: 30s
|
||||
@@ -30,7 +37,12 @@ services:
|
||||
- dokploy-network
|
||||
|
||||
redis:
|
||||
image: redis:8.6.1
|
||||
image: redis:8.10.1
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "0.25"
|
||||
memory: 256M
|
||||
container_name: paperless-redis
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
@@ -41,6 +53,11 @@ services:
|
||||
db:
|
||||
container_name: paperless-db
|
||||
image: postgres:16
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: "0.75"
|
||||
memory: 1G
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- paperlessdb:/var/lib/postgresql/data
|
||||
|
||||
1
projects/rclone/README.md
Normal file
1
projects/rclone/README.md
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
95
projects/rclone/docker-compose.yml
Normal file
95
projects/rclone/docker-compose.yml
Normal file
@@ -0,0 +1,95 @@
|
||||
version: "3.9"
|
||||
|
||||
services:
|
||||
rclone-seedbox:
|
||||
image: rclone/rclone:v1.75.0
|
||||
container_name: rclone-seedbox
|
||||
restart: unless-stopped
|
||||
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
|
||||
devices:
|
||||
- /dev/fuse:/dev/fuse
|
||||
|
||||
security_opt:
|
||||
- apparmor:unconfined
|
||||
|
||||
ports:
|
||||
- "5572:5572"
|
||||
|
||||
command: >
|
||||
mount seedbox: /data
|
||||
--config /config/rclone.conf
|
||||
--allow-other
|
||||
--buffer-size 256M
|
||||
--dir-cache-time 1h
|
||||
--vfs-cache-mode full
|
||||
--vfs-cache-max-size 512M
|
||||
--vfs-read-chunk-size 64M
|
||||
--vfs-read-chunk-size-limit 256M
|
||||
--poll-interval 1m
|
||||
--timeout 15m
|
||||
--contimeout 15m
|
||||
--retries 10
|
||||
--low-level-retries 20
|
||||
--log-level INFO
|
||||
--allow-non-empty
|
||||
--rc
|
||||
--rc-addr :5572
|
||||
--rc-web-gui
|
||||
--rc-web-gui-no-open-browser
|
||||
--rc-allow-origin *
|
||||
--rc-user ${RCLONE_USER}
|
||||
--rc-pass ${RCLONE_PASS}
|
||||
|
||||
volumes:
|
||||
- /opt/rclone/config:/config
|
||||
- /opt/media/seedbox:/data:rshared
|
||||
- ./logs/seedbox:/logs
|
||||
|
||||
|
||||
rclone-storagebox-crypt:
|
||||
image: rclone/rclone:v1.75.0
|
||||
container_name: rclone-storagebox-crypt
|
||||
restart: unless-stopped
|
||||
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
|
||||
devices:
|
||||
- /dev/fuse:/dev/fuse
|
||||
|
||||
security_opt:
|
||||
- apparmor:unconfined
|
||||
|
||||
ports:
|
||||
- "5573:5573"
|
||||
|
||||
command: >
|
||||
mount storagebox-crypt: /data
|
||||
--config /config/rclone.conf
|
||||
--allow-other
|
||||
--buffer-size 256M
|
||||
--dir-cache-time 12h
|
||||
--vfs-cache-mode full
|
||||
--vfs-cache-max-size 512M
|
||||
--vfs-read-chunk-size 64M
|
||||
--vfs-read-chunk-size-limit 256M
|
||||
--poll-interval 1m
|
||||
--timeout 1m
|
||||
--log-level INFO
|
||||
--allow-non-empty
|
||||
--rc
|
||||
--rc-addr :5573
|
||||
--rc-web-gui
|
||||
--rc-web-gui-no-open-browser
|
||||
--rc-allow-origin *
|
||||
--rc-user ${RCLONE_USER}
|
||||
--rc-pass ${RCLONE_PASS}
|
||||
|
||||
volumes:
|
||||
- /opt/rclone/config:/config
|
||||
- /opt/rclone/ssh:/root/.ssh:ro
|
||||
- /opt/media/storagebox:/data:rshared
|
||||
- ./logs/storagebox:/logs
|
||||
@@ -1,32 +0,0 @@
|
||||
# [tandoor](https://tandoor.dev)
|
||||
|
||||
## tandoor
|
||||
|
||||
### General
|
||||
|
||||
- Compose Path: `./projects/tandoor/docker-compose.yml`
|
||||
|
||||
### Environment
|
||||
|
||||
POSTGRES_HOST: #db name (not container-name)
|
||||
POSTGRES_PORT: #default: `5432`
|
||||
POSTGRES_USER: #database user
|
||||
POSTGRES_PASSWORD: #database password
|
||||
POSTGRES_DB: #database name
|
||||
SECRET_KEY: #32 digits token - use [it-tools token-generator](https://it-tools.tech/token-generator?length=32) to get one
|
||||
|
||||
### Domains
|
||||
|
||||
- Service Name: `tandoor`
|
||||
- Container Port: `80`
|
||||
- HTTPS: `true`
|
||||
- Certificate Provider: `Let's Encrypt`
|
||||
|
||||
### Volume Backups
|
||||
|
||||
- Task Name: `staticfiles`
|
||||
- Schedule `0 0 * * *`
|
||||
- Service Name: `tandoor`
|
||||
- Volume: `tandoor-tandoor-xxx`
|
||||
- Keep Latest Backups: `7`
|
||||
- Enabled: true
|
||||
@@ -1,39 +0,0 @@
|
||||
version: '3.8'
|
||||
services:
|
||||
tandoor:
|
||||
restart: unless-stopped
|
||||
image: vabene1111/recipes:2.5.3
|
||||
labels:
|
||||
- rclone.storage=storagebox-crypt
|
||||
environment:
|
||||
POSTGRES_HOST: ${POSTGRES_HOST}
|
||||
POSTGRES_PORT: ${POSTGRES_PORT}
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
SECRET_KEY: ${SECRET_KEY}
|
||||
volumes:
|
||||
- staticfiles:/opt/recipes/staticfiles
|
||||
- /media/storagebox-crypt/tandoor/mediafiles:/opt/recipes/mediafiles
|
||||
networks:
|
||||
- dokploy-network
|
||||
|
||||
db:
|
||||
container_name: tandoor_db
|
||||
restart: unless-stopped
|
||||
image: postgres:16-alpine
|
||||
volumes:
|
||||
- /media/storagebox-crypt/tandoor/postgresql:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
networks:
|
||||
- dokploy-network
|
||||
|
||||
volumes:
|
||||
staticfiles:
|
||||
|
||||
networks:
|
||||
dokploy-network:
|
||||
external: true
|
||||
@@ -1,6 +1,6 @@
|
||||
services:
|
||||
vaultwarden:
|
||||
image: vaultwarden/server:1.35.8
|
||||
image: vaultwarden/server:1.37.1
|
||||
restart: always
|
||||
environment:
|
||||
DOMAIN: ${DOMAIN}
|
||||
|
||||
Reference in New Issue
Block a user