Date : 2026-03-21
Auteur : Daniel Caron
Version OS : Ubuntu 24.04.4 LTS
Rôle : Serveur photos/vidéos — Immich (Docker)
VLAN : 60 (Serveurs)
IP : 10.21.60.12
FQDN : whvu2020.home.carontech.net
URL : https://photos.carontech.net
whvu2020 héberge Immich — solution de gestion de photos et vidéos auto-hébergée. Il est accessible depuis l'interne (VLAN Résidentiel, BYOD, VPN-Admin) et depuis l'externe via Cloudflare Tunnel.
Externe : Cloudflare → whvu1010:443 → whvu1515:443 → whvu2020:2283
Interne : Station/Mobile → whvu1010:443 → whvu1515:443 → whvu2020:2283
whvu2020zfs-data Proxmox → vu comme sdb dans la VM)| Type | Nom | Valeur |
|---|---|---|
| A | whvu2020.home.carontech.net |
10.21.60.12 |
| CNAME | photos.carontech.net |
whvu1010.home.carontech.net |
sda
├─sda1 vfat /boot/efi (1G)
└─sda2 ext4 / (60G)
Le volume zfs-data (600G) est provisionné depuis Proxmox et vu dans la VM comme sdb — partition ext4 montée en /mnt/immich-media.
sdb ext4 /mnt/immich-media (600G)
Utilisation actuelle : ~74% (~444G utilisés)
sudo nano /etc/fstab
Ajouter :
UUID=6f115fe1-32f9-43dd-959d-a8c479b77842 /mnt/immich-media ext4 defaults 0 2
Vérifier :
sudo mount -a
df -h /mnt/immich-media
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo usermod -aG docker ubuntuadmin
Se déconnecter et reconnecter, puis vérifier :
docker ps
mkdir -p ~/immich && cd ~/immich
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
nano ~/immich/.env
Paramètres importants à configurer :
# Version épinglée — ne pas laisser "latest" en production
IMMICH_VERSION=v2.5.6
# Chemin vers le stockage des médias
UPLOAD_LOCATION=/mnt/immich-media
# Base de données
DB_DATABASE_NAME=immich
DB_USERNAME=pgimmich
DB_PASSWORD=<mot-de-passe-robuste>
# Timezone
TZ=America/New_York
docker compose up -d
docker ps
Les 4 conteneurs doivent être en statut Up :
| Conteneur | Rôle |
|---|---|
immich_server |
Serveur applicatif Immich |
immich_postgres |
Base de données PostgreSQL |
immich_machine_learning |
Reconnaissance faciale et objets |
immich_redis |
Cache |
Accéder à http://10.21.60.12:2283 depuis un navigateur (accès temporaire direct) et :
/mnt/immich-mediaLe certificat de whvu1515 couvre photos.carontech.net — aucun certificat requis directement sur whvu2020.
Voir Buildbook whvu1515 pour la configuration du proxy.
| Source | Destination | Port | Action |
|---|---|---|---|
whvu1515 (VLAN 60) |
whvu2020 (10.21.60.12) |
2283 | Allow |
| Résidentiel (VLAN 20) | whvu1010 (VLAN 70) |
443 | Allow |
| BYOD (VLAN 25) | whvu1010 (VLAN 70) |
443 | Allow |
| VPN-Admin (VLAN 99) | whvu1010 (VLAN 70) |
443 | Allow |
Note : Les clients internes accèdent à Immich via
whvu1010→whvu1515→whvu2020. Pas d'accès direct depuis les VLANs clients verswhvu2020.
# Statut des conteneurs
docker ps
# Logs serveur Immich
docker compose logs --tail=50 immich-server
# Espace disque médias
df -h /mnt/immich-media
# Version installée
docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
Depuis le navigateur :
https://photos.carontech.netdocker ps
docker compose logs --tail=50 immich-server
cd ~/immich
docker compose restart
docker compose down
docker compose up -d
df -h /mnt/immich-media
docker exec immich_postgres pg_dump -U pgimmich immich \
> ~/immich/backup-immich-$(date +%Y%m%d).sql
Voir runbook : Mise à jour Immich