Files
linux-install-helper/vaultwarden/deploy.sh

44 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
. ./env.sh
set -e
mkdir -p $DATA_FOLDER
if systemctl --user list-units --full --all | grep -q "vaultwarden-${CONTAINER_NAME}.service"; then
systemctl --user stop vaultwarden-${CONTAINER_NAME}.service
fi
if podman container exists "$CONTAINER_NAME"; then
echo "Stop and delete existing container $CONTAINER_NAME"
if podman inspect -f '{{.State.Running}}' "$CONTAINER_NAME" | grep -q true; then
podman stop "$CONTAINER_NAME"
fi
podman rm "$CONTAINER_NAME"
fi
podman create \
--name vaultwarden \
--restart=unless-stopped \
-e DOMAIN=https://$DOMAIN \
-e SHOW_PASSWORD_HINT=false \
-p $PORT:80 \
-v $DATA_FOLDER:/data \
docker.io/vaultwarden/server:latest
podman generate systemd \
--new \
--name $CONTAINER_NAME \
--files \
--container-prefix=vaultwarden \
--restart-policy=always
USER_SYSTEMD="$HOME/.config/systemd/user"
mkdir -p $USER_SYSTEMD
cp vaultwarden-$CONTAINER_NAME.service $USER_SYSTEMD
systemctl --user daemon-reload
systemctl --user enable --now vaultwarden-$CONTAINER_NAME.service
sudo loginctl enable-linger $USER
# on local, allow ufw port from wireguard