Configuration simple en 5 minutes de MySQL Vaultwarden en utilisant docker-compose

Note : Je recommande de toujours utiliser MySQL pour préparer la mise à l’échelle future. Si vous voulez vraiment utiliser SQLite, voir Configuration simple en 5 minutes de Vaultwarden (SQLite) en utilisant docker-compose.

Afin de configurer Vaultwarden dans une configuration basée sur docker-compose & SQLite (par ex. sur CoreOS), d’abord nous devons créer un répertoire. Je recommande d’utiliser /opt/vaultwarden.

Exécutez toutes les commandes suivantes et placez tous les fichiers suivants dans le répertoire /opt/vaultwarden !

D’abord, nous créerons un fichier .env avec des mots de passe aléatoires (je recommande d’utiliser pwgen 30). Ne pas utiliser un mot de passe unique et aléatoire ici est un énorme risque de sécurité car cela permettra un accès admin complet à Vaultwarden !

env_file.env
ADMIN_TOKEN=iqueingufo3LohshoohoG3tha2zou6
SIGNUPS_ALLOWED=true

Maintenant placez votre docker-compose.yml :

docker-compose.yml
services:
  mariadb:
    image: mariadb:latest
    environment:
      - MYSQL_DATABASE=vaultwarden
      - MYSQL_USER=vaultwarden
      - MYSQL_PASSWORD=${MARIADB_PASSWORD}
      - MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD}
      - MARIADB_AUTO_UPGRADE=1
    volumes:
      - ./mariadb_data:/var/lib/mysql
    command: --default-storage-engine innodb
    restart: unless-stopped
    healthcheck:
      test: mysqladmin -p${MARIADB_ROOT_PASSWORD} ping -h localhost
      interval: 20s
      start_period: 10s
      timeout: 10s
      retries: 3

  vaultwarden:
    image: vaultwarden/server:latest
    depends_on:
      - mariadb
    environment:
      - ADMIN_TOKEN=${ADMIN_TOKEN}
      - DATABASE_URL=mysql://vaultwarden:${MARIADB_PASSWORD}@mariadb/vaultwarden
      - WEBSOCKET_ENABLED=true
    volumes:
      - ./vw_data:/data
    ports:
      - 17881:80
      - 17882:3012

Ensuite, nous créerons un service systemd pour démarrer automatiquement docker-compose :

create_vaultwarden_service.sh
curl -fsSL https://techoverflow.net/scripts/create-docker-compose-service.sh | sudo bash /dev/stdin

Ceci démarrera automatiquement vaultwarden.

Maintenant vous devez configurer votre serveur proxy inverse pour pointer vers https://vaultwarden.mydomain.com . Vous devez utiliser https, http ne fonctionnera pas à cause de certaines limitations du navigateur.

Maintenant nous devons configurer vaultwarden en utilisant l’interface admin.

Allez sur https://vaultwarden.mydomain.com/admin et entrez le ADMIN_TOKEN de .env.

Il y a deux choses que vous devez configurer ici :

  • Le Nom de Domaine sous General settings
  • Les paramètres du serveur email sous SMTP email settings

Avec ces paramètres configurés, Vaultwarden devrait être opérationnel et vous pouvez y accéder en utilisant https://vaultwarden.mydomain.com .

Après que le premier utilisateur ait été configuré et testé, vous pouvez décocher Allow new signups dans General settings dans l’interface admin. Ceci est recommandé car sinon toute personne qui pourra deviner votre nom de domaine pourra créer un compte Vaultwarden.


Consultez les articles similaires par catégorie : Container Docker