← All articles
Self-hostingDeployment

Deploy Paperclip on Contabo

Contabo is the budget VPS king — their VPS S gives you 4 vCPU, 8 GB RAM, and 100 GB NVMe SSD for $6.99/month. That's more RAM than most providers offer at 3× the price. Here's how to get Paperclip running on it.

Deploy on Railway instead →

Why Contabo for Paperclip

Contabo's specs are genuinely impressive for the price. Their VPS S ($6.99/month) offers 4 vCPU, 8 GB RAM, and 100 GB NVMe storage — comparable to what DigitalOcean charges $48/month for. The tradeoff is customer support quality and slightly more limited datacenter locations (Germany, US, Singapore, UK). For Paperclip deployments where you just want raw capacity, Contabo is hard to beat.

Contabo VPS plans for Paperclip

| Plan | vCPU | RAM | Storage | Price | |---|---|---|---|---| | VPS S | 4 | 8 GB | 100 GB NVMe | $6.99/mo | | VPS M | 6 | 16 GB | 200 GB NVMe | $14.99/mo | | VPS L | 8 | 30 GB | 400 GB NVMe | $26.99/mo |

The VPS S is overkill for personal Paperclip use (in a good way). The VPS M and L are solid for teams.

Step 1: Order a Contabo VPS

  1. Go to contabo.com → VPS
  2. Select VPS S or higher
  3. Choose Ubuntu 22.04 as the OS image
  4. Select your datacenter region (US East, US West, EU, Singapore, UK)
  5. Complete checkout — provisioning takes 1–2 hours (longer than most providers)

You'll receive root login credentials by email.

Step 2: Initial server setup

ssh root@YOUR_CONTABO_IP

apt update && apt upgrade -y
apt install -y curl git nginx ufw fail2ban

# Create a non-root user
adduser deploy
usermod -aG sudo deploy
rsync --archive --chown=deploy:deploy ~/.ssh /home/deploy

# Disable root SSH login
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config
systemctl reload sshd

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

Step 4: Install Paperclip

npm install -g paperclipai

mkdir -p /opt/paperclip/data
chown -R deploy:deploy /opt/paperclip

Create /opt/paperclip/.env as the deploy user:

su - deploy
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
exit

Generate secret as root or deploy: openssl rand -hex 32

Step 5: Create systemd service

tee /etc/systemd/system/paperclip.service << 'EOF'
[Unit]
Description=Paperclip AI
After=network.target

[Service]
Type=simple
User=deploy
WorkingDirectory=/opt/paperclip
EnvironmentFile=/opt/paperclip/.env
ExecStart=/usr/bin/npx paperclipai server start
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable --now paperclip
systemctl status paperclip

Step 6: nginx reverse proxy

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;
    }
}
EOF

ln -s /etc/nginx/sites-available/paperclip /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

Step 7: SSL

apt install -y certbot python3-certbot-nginx
certbot --nginx -d paperclip.yourdomain.com

Step 8: Firewall

ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable

Step 9: DNS setup

Point paperclip.yourdomain.com to your Contabo server's IP with an A record. DNS propagation typically takes 5–30 minutes.

Once live, open https://paperclip.yourdomain.com and complete setup.

Contabo-specific notes

Provisioning time: Contabo takes 1–4 hours to provision a new VPS. Unlike cloud providers (instant), they provision manually. Plan for this.

No hourly billing: Contabo charges monthly. You can't spin up a server for a few hours. If you need flexibility, use DigitalOcean or Hetzner instead.

Snapshot addon: Contabo offers snapshots as a paid addon (~$1.90/month). Worth it for backup/restore capability.

IPv6: Included by default. Your VPS gets both an IPv4 and IPv6 address.

Monitoring

Contabo doesn't provide built-in monitoring. Install a basic tool:

# Install htop for quick resource overview
apt install -y htop

# Check disk usage
df -h

# Watch Paperclip logs
journalctl -u paperclip -f

Cost

  • VPS S: $6.99/month — 4 vCPU / 8 GB RAM / 100 GB NVMe
  • Optional snapshot: ~$1.90/month

Total: ~$7–9/month for an extremely well-specced Paperclip deployment.

This is the best raw specs-per-dollar for self-hosting Paperclip. If you want zero server management instead, Railway gives you $20 free credit to start immediately.

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.