Pin Docker image versions and fix config drift
- Pin all :latest tags to specific versions for reproducibility: jellyfin→10.11.6, gitea→1.24, portainer→2.39.0, qbittorrent→5.1.4 - Fix nextcloud config drift: repo had :29, live was running :32 - Fix qbittorrent: remove user: directive (breaks s6-overlay init) - Fix portainer: remove healthcheck (distroless image has no shell)
This commit is contained in:
@@ -14,7 +14,7 @@ networks:
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: gitea/gitea:latest
|
image: gitea/gitea:1.24
|
||||||
container_name: gitea
|
container_name: gitea
|
||||||
environment:
|
environment:
|
||||||
- USER_UID=1000
|
- USER_UID=1000
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
jellyfin:
|
jellyfin:
|
||||||
image: jellyfin/jellyfin:latest
|
image: jellyfin/jellyfin:10.11.6
|
||||||
container_name: jellyfin
|
container_name: jellyfin
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ services:
|
|||||||
- nextcloud
|
- nextcloud
|
||||||
|
|
||||||
nextcloud-app:
|
nextcloud-app:
|
||||||
image: nextcloud:29
|
image: nextcloud:32
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
container_name: nextcloud-app
|
container_name: nextcloud-app
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
portainer:
|
portainer:
|
||||||
image: portainer/portainer-ce:latest
|
image: portainer/portainer-ce:2.39.0
|
||||||
container_name: portainer
|
container_name: portainer
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
@@ -38,13 +38,7 @@ services:
|
|||||||
cpus: '0.1'
|
cpus: '0.1'
|
||||||
memory: 128M
|
memory: 128M
|
||||||
|
|
||||||
# Health check
|
# No healthcheck — Portainer is distroless (no shell available)
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:9000/api/status"]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 10s
|
|
||||||
retries: 3
|
|
||||||
start_period: 30s
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
portainer_data:
|
portainer_data:
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
qbittorrent:
|
qbittorrent:
|
||||||
image: linuxserver/qbittorrent:latest
|
image: linuxserver/qbittorrent:5.1.4
|
||||||
container_name: qbittorrent
|
container_name: qbittorrent
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ services:
|
|||||||
- WEBUI_PORT=8080
|
- WEBUI_PORT=8080
|
||||||
|
|
||||||
# Security hardening
|
# Security hardening
|
||||||
user: "1000:1000"
|
# NOTE: No user: directive — linuxserver uses s6-overlay (starts as root, drops to PUID/PGID)
|
||||||
read_only: false # qBittorrent needs write access for downloads
|
read_only: false # qBittorrent needs write access for downloads
|
||||||
tmpfs:
|
tmpfs:
|
||||||
- /tmp:noexec,nosuid,size=100m
|
- /tmp:noexec,nosuid,size=100m
|
||||||
|
|||||||
Reference in New Issue
Block a user