Installation
Fichier docker-compose
Dans cette procédure, nous allons utiliser Docker. Une documentation préalable à ce sujet est disponible ici.
Commençons par créer un fichier docker-compose.yaml
, adapté à nos besoins :
services:
vaultwarden:
image: vaultwarden/server:latest # Utilise l'image officielle Vaultwarden, en dernière version disponible
container_name: vaultwarden # Nomme explicitement le conteneur pour faciliter son identification
restart: always # Redémarre automatiquement le conteneur en cas de crash ou redémarrage de l'hôte
ports:
- "82:80" # Expose l'interface HTTP sur le port 82 de la machine (interne 80)
- "4443:443" # Expose l'interface HTTPS sur le port 4443 de la machine (interne 443)
volumes:
- /vw-data:/data # Monte le dossier /data du conteneur (où sont stockées les données) dans /vw-data de l'hôte
environment:
- ROCKET_PROFILE=release # Active le mode production pour de meilleures performances
- ROCKET_ADDRESS=0.0.0.0 # Écoute sur toutes les interfaces réseau disponibles
- ROCKET_PORT=80 # Définit le port HTTP interne à 80
- DEBIAN_FRONTEND=noninteractive # Supprime les interactions lors des mises à jour système (bonne pratique en conteneur)
- ADMIN_TOKEN=<clé> # Jeton d'administration haché permettant l'accès à l'interface d'administration Vaultwarden
command: ["/start.sh"] # Démarre le script de lancement officiel du conteneur
healthcheck:
test: ["CMD", "/healthcheck.sh"] # Vérifie la santé du conteneur via un script toutes les 60 secondes
interval: 60s
timeout: 10s
cap_add: # Ajoute uniquement les capacités strictement nécessaires au fonctionnement
- AUDIT_WRITE
- CHOWN
- DAC_OVERRIDE
- FOWNER
- FSETID
- KILL
- MKNOD
- NET_BIND_SERVICE
- NET_RAW
- SETFCAP
- SETGID
- SETPCAP
- SETUID
- SYS_CHROOT
cap_drop: # Supprime les capacités sensibles non nécessaires, pour renforcer la sécurité du conteneur
- AUDIT_CONTROL
- BLOCK_SUSPEND
- DAC_READ_SEARCH
- IPC_LOCK
- IPC_OWNER
- LEASE
- LINUX_IMMUTABLE
- MAC_ADMIN
- MAC_OVERRIDE
- NET_ADMIN
- NET_BROADCAST
- SYSLOG
- SYS_ADMIN
- SYS_BOOT
- SYS_MODULE
- SYS_NICE
- SYS_PACCT
- SYS_PTRACE
- SYS_RAWIO
- SYS_RESOURCE
- SYS_TIME
- SYS_TTY_CONFIG
- WAKE_ALARM
Pour obtenir la clé "ADMIN_TOKEN", c'est très simple, on génère une clé SSL :
openssl rand -base64 48
cela renvoi un résultat similaire à cela :
mjLUlEhDYJr1kxJqGWkkc1qUCpqV3aektjfbGFSNbZwuE+2+GDhvyLZhnAfEdhW9
Démarrage
Une fois le fichier docker-compose.yaml
créé, nous pouvons lancer VaultWarden avec la commande suivante :
docker compose up -d
No Comments