Skip to content

Bring your own server

vops does not require the target server to have been created by vops. A reachable Linux host becomes operable when it is recorded in the local inventory with an SSH access path.

Import an existing SSH key

Give an existing key a local vops name:

Terminal window
vops ssh-key import laptop --from ~/.ssh/id_ed25519

The private key is referenced at its existing path; vops does not copy it into the profile. You can also import only a public key, but a public-only entry cannot open an SSH session.

Add the host

Terminal window
vops host add web-1 \
--address 203.0.113.10 \
--user root \
--key laptop \
--tag staging

Adding a host updates local inventory only. vops probes SSH reachability and reports a warning if the connection is not ready; it does not modify the server.

If the server already appears through a configured provider, import it by provider and server ID or name:

Terminal window
vops host import ovh vops-web-abc

Inspect before changing

Terminal window
vops host show web-1
vops host status web-1
vops host update web-1 --list
vops app preflight web-1

host status runs a battery of read-only checks in one SSH session. The application preflight checks whether the host can run the deployment model and reports conflicts before installation.

Prepare the application runtime

When the preflight says the required runtime is missing:

Terminal window
vops app setup web-1
vops app setup web-1 --yes

The first form is useful for reviewing the requirement. The approved form installs the verified application runtime and service integration used by vops.

Apply host hardening separately

Host hardening is not an invisible side effect of inventory:

Terminal window
vops host harden web-1 --dry-run
vops host harden web-1

SSH lockdown has its own stricter flow:

Terminal window
vops host ssh-harden web-1
vops host ssh-harden web-1 --yes

Review the preflight. The command verifies key access and detects recent password users before disabling password login.

Forgetting is not deleting

Terminal window
vops host remove web-1

This removes the local inventory record and never deletes the remote server. Provider deletion is a separate, explicitly confirmed vops servers delete operation.