Compare commits

...

3 Commits

Author SHA1 Message Date
6f70e974a4 Add dockhand 2026-02-22 21:21:55 +05:30
62ed05f028 Add handbrake 2026-02-22 21:21:40 +05:30
8953023b90 Add syncthing 2026-02-22 21:21:26 +05:30
4 changed files with 124 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
services:
hawser:
container_name: hawserd
image: ghcr.io/finsys/hawser:0.2.27@sha256:63d0a5fb81fe64cc0f7e0cbede54889b114fd3d634d2ee18e0fee89d7854873a
restart: unless-stopped
environment:
- AGENT_NAME=${AGENT_NAME}
- TOKEN=${TOKEN}
- LOG_LEVEL=${LOG_LEVEL}
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 2376:2376
networks:
- frontend
networks:
frontend:
external: true

View File

@@ -0,0 +1,44 @@
services:
dockhand_db:
container_name: dockhand_db
image: docker.io/library/postgres:18.1@sha256:1090bc3a8ccfb0b55f78a494d76f8d603434f7e4553543d6e807bc7bd6bbd17f
restart: unless-stopped
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
- PGDATA=/var/lib/postgresql/18/docker
volumes:
- ./db:/var/lib/postgresql
networks:
- backend
healthcheck:
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
interval: 10s
timeout: 5s
retries: 3
start_period: 10s
dockhand:
container_name: dockhand
image: fnsys/dockhand:v1.0.18@sha256:81ee6728840ea99978d811d9dfa61e5445467e01502320fa7733bcf7e567d105
restart: unless-stopped
depends_on:
dockhand_db:
condition: service_healthy
environment:
- DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@dockhand_db:5432/${POSTGRES_DB}
volumes:
- ./data:/app/data
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 3000:3000
networks:
- frontend
- backend
networks:
frontend:
external: true
backend:
external: true

View File

@@ -0,0 +1,34 @@
services:
handbrake:
container_name: handbrake
image: ghcr.io/jlesage/handbrake:v26.01.1
restart: unless-stopped
deploy:
resources:
limits:
cpus: '${CPU_LIMIT}'
environment:
- USER_ID=${USER_ID}
- GROUP_ID=${GROUP_ID}
- UMASK=${UMASK}
- TZ=${TZ}
- DISPLAY_WIDTH=${DISPLAY_WIDTH}
- DISPLAY_HEIGHT=${DISPLAY_HEIGHT}
- DARK_MODE=${DARK_MODE}
- WEB_AUDIO=${WEB_AUDIO}
- HANDBRAKE_GUI=${HANDBRAKE_GUI}
- AUTOMATED_CONVERSION=${AUTOMATED_CONVERSION}
volumes:
- ${APPDATA_PATH}/handbrake/config:/config
- ${DATA_PATH}:/storage:ro
- ${APPDATA_PATH}/handbrake/watch:/watch
- ${APPDATA_PATH}/handbrake/output:/output
- ${APPDATA_PATH}/handbrake/trash:/trash
ports:
- ${PORT}:5800
networks:
- frontend
networks:
frontend:
external: true

View File

@@ -0,0 +1,27 @@
services:
syncthing:
container_name: syncthing
image: ghcr.io/syncthing/syncthing:2.0.14
restart: unless-stopped
hostname: ${HOSTNAME}
environment:
- PUID=${PUID}
- PGID=${PGID}
volumes:
- ${APPDATA_PATH}/syncthing/data:/var/syncthing
ports:
- 8384:8384 # Web UI
- 22000:22000/tcp # TCP file transfers
- 22000:22000/udp # QUIC file transfers
- 21027:21027/udp # Local discovery broadcasts
healthcheck:
test: curl -fkLsS -m 2 127.0.0.1:8384/rest/noauth/health | grep -o --color=never OK || exit 1
interval: 1m
timeout: 10s
retries: 3
networks:
- frontend
networks:
frontend:
external: true