Basics
SSH Access
Via pass-cli's SSH agent — no private key ever written to disk, matching the rest of this project's credential handling. Loads the key straight from the Infomaniak SSH Key vault item into an agent socket; SSH talks to the socket, not a file:
pass-cli ssh-agent daemon start --vault-name Tech
export SSH_AUTH_SOCK=~/.ssh/proton-pass-agent.sock
ssh debian@<ipv4>
The daemon start form persists in the background, so it survives across terminal sessions — pass-cli ssh-agent daemon status to confirm it's alive. export SSH_AUTH_SOCK=... still needs to happen in each new shell (or add it to your shell profile) so ssh knows where to find it.
Debian cloud images default to a debian user with sudo, not root.
Disk Setup
Terraform attaches the data volume as raw block storage — formatting and mounting it is an OS-level step outside its scope. Do this before installing Docker or Coolify: the daemon config points data-root at /mnt/data, which needs to already exist and be mounted first.
-
Confirm the device —
/dev/sdbhere, since this image uses SCSI disk bus rather than virtio (sosda/sdb, notvda/vdb):lsblk -
Format it ext4 — it's a blank volume, nothing to preserve:
sudo mkfs.ext4 /dev/sdb -
Create the mount point:
sudo mkdir -p /mnt/data -
Mount it:
sudo mount /dev/sdb /mnt/data -
Persist the mount across reboots — without this, the volume comes back unmounted after any restart and everything pointed at
/mnt/databreaks silently:echo '/dev/sdb /mnt/data ext4 defaults 0 2' | sudo tee -a /etc/fstab