Vaultwaren is an alternative implementation of the bitwarden’s server api.
It enables companies and individuals to generate, store and share passwords securely, regardless of location, browser or device.
Docker compose
Here is the docker compose file generated by Crane It.
version: "3.8"
volumes:
vaultwarden-data: {}
services:
vaultwarden: &vaultwarden
container_name: vaultwarden
image: vaultwarden/server:latest
volumes:
- vaultwarden-data:/data
expose:
- "80"
labels:
- "traefik.enable=true"
- "traefik.http.routers.vaultwarden.rule=Host(`$CRANE_IT_EB_DOMAIN`)"
- "traefik.http.routers.vaultwarden.entrypoints=websecure"
- "traefik.http.routers.vaultwarden.tls.certresolver=myresolver"
- "traefik.http.services.vaultwarden.loadbalancer.server.port=80"
ports: []
traefik:
image: "traefik:v2.9.5"
container_name: traefik
command:
- "--log.level=INFO"
- "--api.insecure=false"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.myresolver.acme.httpchallenge=true"
- "--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web"
- "--certificatesresolvers.myresolver.acme.email=firenix.nex@gmail.com"
- "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "./letsencrypt:/letsencrypt"
The docker compose file is quite simple if you ignore traefik and its related labels. Traefik allow us to use HTTPS.
Docker will pull the latest version of Vaultwarden, and map a volume to store passwords (and others stuff) directly on the server.
Useful links