Deploy on a VPS
Virtual Private Server - Remote internet-facing VM
This setup aims to expose CISO Assistant on a VPS while using automated Let's Encrypt for certificates management.
provision your VPS and make sure it has a public reachable IP - make sure to have the Prerequisites mentioned on that page.
Setup your DNS zone to point to the IP of your VPS (A record). Give it sometime to propagate (depends on the registrar). It's better to start with this once you get the IP to give it enough time for propagation.
on the following I'm using ubuntu 24.04. So adjust the packages installation according to your OS
ssh to your server and perform the following commands:
Follow the instructions and make sure to do the following:
select VM/Remote
Internet facing and ACME ready - yes
Provide the FQDN you've set on your registrar
Port to use: 443
It should look like something like this:
Keep track of the URL mentioned at the end of the config generator. You can review the generated yml file and adapt it if needed.
Wait for the app to initialize and you will get a prompt to enter the first admin user and the password.
You can go back and update the docker-compose.yml according to your needs or restart the interactive guide to create a new one.
You can choose Traefik instead of Caddy using the config builder.
👉 Notes
The generated file in the config directory will be named
docker-compose-custom.yml
For subsequent operations with compose, you'll need to specify it with-f
If you're running docker compose without the -f, it could conflict with the default one on the repository root directory.
If you're starting a production environment:
make sure to disable the debug mode,
have your docker-compose-custom renamed and stored out of the repo,
have your db folder outside of the repo.
Clean up
Last updated
Was this helpful?