Description
Yacht est une UI web pour Docker conçue pour rendre le déploiement aussi simple qu'un téléphone portable. Le pari UX : un utilisateur non-technique doit pouvoir choisir un template d'application dans un catalogue intégré, cliquer, et voir l'app tourner derrière un sous-domaine HTTPS automatique. C'est cette simplicité qui a fait son succès initial — Yacht a été massivement linké sur Reddit, Hacker News, et les agrégateurs self-hosted en 2021-2022.
Concrètement, Yacht propose : gestion des conteneurs / images / volumes / réseaux, catalogue de templates basé sur des fichiers yacht.json au format simple, configuration HTTPS automatique (via Caddy + DNS challenge), templates d'apps populaires (Nextcloud, Jellyfin, Gitea, etc.). Techniquement, c'est une surcouche agréable à Docker, pas un remplacement de Portainer — pas de gestion multi-hôte, pas de RBAC avancé.
⚠️ Maintenance en berne depuis fin 2022 : Yacht reste fonctionnel mais ne reçoit plus de nouvelles fonctionnalités ni de correctifs réguliers. À considérer pour des homelabs tolérants à un peu de dette technique, pas pour une infra de production exigeante. Pour un équivalent moderne et actif, voir [[app-dockge]] ou [[app-arcane]].
Installation
Via Docker (recommandé)
# docker-compose.yml
version: '3.8'
services:
yacht:
image: selfhostedpro/yacht:latest
container_name: yacht
restart: unless-stopped
ports:
- 8000:8000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- yacht_data:/config
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
volumes:
yacht_data:
Installation avec Caddy (reverse proxy + HTTPS auto)
# Ajouter à docker-compose.yml
version: '3.8'
services:
yacht:
image: selfhostedpro/yacht:latest
container_name: yacht
restart: unless-stopped
# ...
caddy:
image: caddy:2
container_name: caddy
restart: unless-stopped
ports:
- 80:80
- 443:443
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
volumes:
caddy_data:
caddy_config:
Configuration
- Premier login : compte par défaut
[email protected]/pass— à changer immédiatement. - Templates d'apps : le catalogue affiche les templates Yacht packagés par la communauté (chaque app = un dossier avec
yacht.json+docker-compose.yml+README). - HTTPS automatique : support natif du DNS-01 challenge (Cloudflare, DuckDNS, etc.) via Caddy intégré.
- Variables d'environnement : injectables depuis l'UI par template ou par conteneur.
- Mises à jour : bouton Update par conteneur dans l'UI.
Alternatives
- [[app-portainer]] — Plus complet, multi-hôte, RBAC, standard de l'industrie.
- [[app-dockge]] — Plus moderne, docker-compose-centric, UI agréable.
- [[app-arcane]] — UI Svelte très moderne, jeune mais prometteur.
- [[app-komodo]] — Multi-serveurs, orienté déploiement.
Sécurité
- Socket Docker monté : Yacht a accès total à l'hôte — ne pas exposer sur Internet sans auth forte.
- Compte admin par défaut : changer immédiatement le mot de passe et désactiver l'inscription.
- Pas de MAJ depuis 2022 : utiliser uniquement derrière un reverse proxy avec [[app-authelia]] et s'attendre à des CVE non patchées. Pour de la production, préférer [[app-portainer]].
