Deploy Hoodik on any VPS
Get your own end-to-end encrypted cloud storage running in minutes. All you need is a cheap VPS, a domain, and 10 minutes.
What you'll need
- A VPS — any provider works (Hetzner, DigitalOcean, Linode, Contabo, etc.). Even the smallest plan is enough — Hoodik idles at around 20 MB of RAM.
- A domain name — e.g.
cloud.yourdomain.com. Needed for HTTPS certificates. - SSH access — a terminal to connect to your server.
Point your domain to the server
Go to your domain registrar's DNS settings and create an A record pointing to your VPS IP address.
| Type | Name | Value |
|---|---|---|
| A | cloud | your-server-ip |
DNS propagation can take a few minutes. You can verify with: ping cloud.yourdomain.com
Install Docker
SSH into your server and install Docker with one command:
curl -fsSL https://get.docker.com | shInstall Caddy (reverse proxy)
Caddy automatically handles HTTPS certificates for you. No manual SSL setup needed.
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy Then configure Caddy to proxy traffic to Hoodik. Replace cloud.yourdomain.com with your actual domain:
cloud.yourdomain.com {
reverse_proxy localhost:5443 {
transport http {
tls_insecure_skip_verify
}
}
}sudo systemctl restart caddy Caddy will automatically obtain and renew a Let's Encrypt certificate for your domain. The tls_insecure_skip_verify is needed because Hoodik uses a self-signed cert internally.
Start Hoodik
Run Hoodik with Docker. Replace cloud.yourdomain.com with your domain:
docker run --name hoodik -d \
--restart unless-stopped \
-e DATA_DIR='/data' \
-e APP_URL='https://cloud.yourdomain.com' \
-v /opt/hoodik/data:/data \
-p 5443:5443 \
hudik/hoodik:latest Your data is stored in /opt/hoodik/data. Hoodik uses SQLite by default — no database setup required.
Create your account
Open https://cloud.yourdomain.com in your browser and register. The first user automatically becomes the admin.
During registration, a private key will be generated in your browser. This key encrypts all your files.
Store your private key somewhere safe (e.g. a password manager). If you ever forget your password, the private key is the only way to recover your account. Without it, your encrypted data is unrecoverable.
Tips
- •Backups: Your encrypted files and database live in
/opt/hoodik/data. Back up this directory regularly. - •Updates: Pull the latest image and restart —
docker pull hudik/hoodik:latest && docker restart hoodik - •Invite users: As admin, go to the Admin Dashboard to create invitation links for family or team members.
- •Storage: Hoodik idles at around 20 MB of RAM. Your storage limit is just the size of your VPS disk.
Need help or have questions?
Open an issue on GitHub 