Deploy Paperclip on Vultr
Vultr Cloud Compute gives you fast NVMe SSD VPS instances at competitive prices, with 32 datacenter locations worldwide. A $6/month instance handles Paperclip well for personal and small-team use.
Deploy on Railway instead →Why Vultr for Paperclip
Vultr offers a clean interface, hourly billing, and 32 global locations — including regions that competitors don't cover (Seoul, Osaka, São Paulo, Mumbai). The $6/month Cloud Compute instance (1 vCPU / 1 GB RAM / 25 GB NVMe SSD) is sufficient for personal Paperclip deployments. For team use, upgrade to the $12/month plan (1 vCPU / 2 GB RAM).
Step 1: Create a Vultr instance
- Sign up at vultr.com
- Click Deploy New Server
- Choose Cloud Compute — Shared CPU
- Configure:
- Server Location: Pick the region closest to your users
- Server Image: Ubuntu 22.04 LTS x64
- Server Size: 1 vCPU / 1 GB RAM / 25 GB NVMe SSD ($6/month)
- SSH Keys: Add your public key
- Click Deploy Now
Server provisions in about 60 seconds.
Step 2: Connect and secure the server
ssh root@YOUR_SERVER_IP
# Update packages
apt update && apt upgrade -y
# Install essentials
apt install -y curl git nginx ufw fail2ban
# Create a deploy user
adduser deploy
usermod -aG sudo deploy
# Copy SSH keys to deploy user
rsync --archive --chown=deploy:deploy ~/.ssh /home/deploy
Step 3: Install Node.js 20 LTS
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
apt install -y nodejs
node --version # v20.x.x
npm --version
Step 4: Install and configure Paperclip
npm install -g paperclipai
# Create data directory
mkdir -p /opt/paperclip/data
chown -R deploy:deploy /opt/paperclip
# Create environment file
cat > /opt/paperclip/.env << 'EOF'
NODE_ENV=production
PAPERCLIP_DATA_DIR=/opt/paperclip/data
BETTER_AUTH_SECRET=REPLACE_WITH_RANDOM_SECRET
PAPERCLIP_LISTEN_PORT=3100
PAPERCLIP_LISTEN_HOST=127.0.0.1
EOF
chmod 600 /opt/paperclip/.env
Generate your secret: openssl rand -hex 32
Step 5: Set up systemd service
cat > /etc/systemd/system/paperclip.service << 'EOF'
[Unit]
Description=Paperclip AI Platform
After=network.target
[Service]
Type=simple
User=deploy
WorkingDirectory=/opt/paperclip
EnvironmentFile=/opt/paperclip/.env
ExecStart=/usr/bin/npx paperclipai server start
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now paperclip
Check it's running:
systemctl status paperclip
journalctl -u paperclip -f
Step 6: Configure nginx
cat > /etc/nginx/sites-available/paperclip << 'EOF'
server {
listen 80;
server_name paperclip.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3100;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 300;
proxy_connect_timeout 300;
}
}
EOF
ln -s /etc/nginx/sites-available/paperclip /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
Step 7: SSL certificate
apt install -y certbot python3-certbot-nginx
certbot --nginx -d paperclip.yourdomain.com --email you@yourdomain.com --agree-tos
Step 8: Firewall
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 'Nginx Full'
ufw --force enable
Step 9: DNS
Add an A record in your DNS pointing paperclip.yourdomain.com to your Vultr server IP. DNS typically propagates in 5–30 minutes.
Once live, open https://paperclip.yourdomain.com and complete the admin setup.
Vultr Block Storage (optional)
If 25 GB isn't enough, Vultr Block Storage lets you attach additional volumes:
- In the Vultr dashboard, go to Block Storage → Add Block Storage
- Choose size and attach to your server
- On the server, format and mount:
mkfs.ext4 /dev/vdb
mkdir -p /mnt/paperclip-data
mount /dev/vdb /mnt/paperclip-data
echo '/dev/vdb /mnt/paperclip-data ext4 defaults 0 2' >> /etc/fstab
Update PAPERCLIP_DATA_DIR in your .env to /mnt/paperclip-data.
Updating Paperclip
npm install -g paperclipai@latest
systemctl restart paperclip
Cost
- Cloud Compute $6/month: 1 vCPU / 1 GB RAM / 25 GB NVMe
- Recommended for Paperclip: $12/month plan (2 GB RAM) for more headroom
For zero-setup deployments, Railway gives $20 free credit and handles everything automatically.
Ready to deploy?
Affiliate disclosure: this link may earn us a commission at no extra cost to you.
This is an independent guide. Paperclip Hosting is not affiliated with the official Paperclip project. Guide steps are based on real deployments and are subject to change as the software evolves.
Related articles
Deploy Paperclip on Fly.io
Run Paperclip on Fly.io with persistent storage, zero-downtime deploys, and global edge distribution — full setup guide.
Deploy Paperclip on Render
Host Paperclip on Render with a persistent disk, free SSL, and auto-deploys from GitHub — step-by-step setup guide.
Deploy Paperclip on Hetzner Cloud
Host Paperclip on Hetzner for as little as €4.51/month — one of the cheapest VPS options in Europe with great performance.
