/System/VaultWarden Server.mdapt install docker.io
In /etc/apache2/sites-available/015-vault.domain.com-le-ssl.conf :
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName vault.domain.com
ServerAdmin webmaster@domain.com
DocumentRoot /var/www/sites/vault.domain.com
# ErrorLog ${APACHE_LOG_DIR}/error-vault.domain.com.log
ErrorLog /dev/null
CustomLog /dev/null combined
# CustomLog ${APACHE_LOG_DIR}/access-vault.domain.com.log combined
ProxyPass / http://127.0.0.1:3003/ nocanon
ProxyPassReverse / http://127.0.0.1/
SSLCertificateFile /etc/letsencrypt/live/vault.domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/vault.domain.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
certbot certonly --standalone -d vault.domain.com
a2ensite 015-vault.domain.com-le-ssl.conf
systemctl restart apache2
Go to hub.docker.com/vaultwarden
mkdir /opt/vaultwarden
cd /opt/vaultwarden
cat EOD << > config
YUBICO_SECRET_KEY=0123456789abcdef0123456789abcdef
YUBICO_CLIENT_ID=vvbcdefghijk
LOCAL_PORT=3004
EOD
docker pull vaultwarden/server:latest
source ./config
printf "DOCKER_ID=" > lock
echo 'IyEvYmluL2Jhc2gKCmNkIC9vcHQvdmF1bHR3YXJkZW4KCnNvdXJjZSAuL2NvbmZpZwoKcHJpbnRmICJET0NLRVJfSUQ9IiA+IGxvY2sKCmRvY2tlciBydW4gLWQgLS1uYW1lIHZhdWx0d2FyZGVuIC12IC92dy1kYXRhLzovZGF0YS8gLWUgWVVCSUNPX1NFQ1JFVF9LRVk9JFlVQklDT19TRUNSRVRfS0VZIC1lIFlVQklDT19DTElFTlRfSUQ9JFlVQklDT19DTElFTlRfSUQgLXAgJExPQ0FMX1BPUlQ6ODAgdmF1bHR3YXJkZW4vc2VydmVyOmxhdGVzdCA+PiBsb2NrCgpjYXQgbG9jawoKCg=='|base64 -d > run.sh
echo 'IyEvYmluL2Jhc2gKCmNkIC9vcHQvdmF1bHR3YXJkZW4KCnNvdXJjZSBsb2NrCgppZiBbIC16ICIkRE9DS0VSX0lEIiBdOyB0aGVuCgllY2hvICJObyBET0NLRVJfSUQgZGV0ZWN0ZWQsIGV4aXR0aW5nIgoJZXhpdCAxCmZpCgpkb2NrZXIgc3RvcCAkRE9DS0VSX0lECmRvY2tlciBybSAkRE9DS0VSX0lECgo='|base64 -d > stop.sh
echo '@reboot /opt/vaultwarden/run.sh'|crontab