FoundryVTT Digital Ocean Setup Guide

This guide will walk you through setting up a FoundryVTT server on Digital Ocean using Debian 13, complete with SSL certificates and Docker containerization.

📖 Server Management Guide →

Step 1: Create Digital Ocean Droplet 📖 Official Docs

Droplet Configuration

In your Digital Ocean dashboard, create a new droplet with these settings:

Don't have an SSH key? Click "New SSH Key" to create one. You can generate a key pair directly in your browser, or if you're on Mac/Linux, run ssh-keygen -t ed25519 -C "your-email@example.com" in your terminal and paste the contents of ~/.ssh/id_ed25519.pub. 📖 SSH Key Docs

Advanced Options

Scroll down and expand the Advanced Options section. Check the IPv6 checkbox and User Data checkbox (IPv6 and User Data checkboxes) 📖 User Data Docs:

Paste this script into the User Data text field that appears:

#!/bin/bash
curl -fsSL https://install.forgot.sh/foundry/install.sh -o install.sh
curl -fsSL https://install.forgot.sh/foundry/install.sh.sha256 -o install.sh.sha256
sha256sum -c install.sh.sha256
if [ $? -eq 0 ]; then
    bash install.sh
else
    echo "SHA256 verification failed!"
fi

Finalize Details

Give your droplet a descriptive name and add a tag for organization (hostname and tags fields):

Important: Make sure to select your SSH key before creating the droplet, or you won't be able to access it remotely!

Step 2: Configure DNS (While Droplet Deploys) 📖 DNS Docs

Set Up DNS Records

While your droplet is being created, configure your DNS records:

  1. In Digital Ocean, go to Networking → Domains (Domains tab in Networking) 📖 Add Domain Docs
  2. Select your domain (or add it if not already added)
  3. Create an A record pointing to your new droplet (create A record form) 📖 DNS Records Docs:

Your completed DNS records should look like this (view of completed A record).

Example DNS Setup

If your domain is example.com, you'll create:

Configure Firewall (Optional but Recommended)

While your droplet deploys, you can also configure Digital Ocean's cloud firewall 📖 Firewall Docs:

  1. In Digital Ocean, go to Networking → Firewalls (navigate to Firewalls tab) 📖 Create Firewall
  2. Click "Create Firewall"
  3. Give it a name like foundry-firewall (firewall naming)
  4. Configure these Inbound Rules (inbound rules configuration):

Outbound Rules: Leave as "All IPv4" and "All IPv6" (default)

In the "Apply to Droplets" section, search for your foundry tag to easily apply the firewall to your FoundryVTT server (apply firewall by tag).

Note: The setup script already configures UFW firewall on the droplet itself. This cloud firewall adds an extra layer of security at the network level.

Step 3: Install FoundryVTT

Wait for Droplet Setup

After 3-5 minutes, your droplet should be fully configured with:

Connect to Your Droplet

Access your droplet through the Digital Ocean dashboard 📖 Console Access Docs:

  1. Go to your Digital Ocean dashboard → Droplets
  2. Click on your FoundryVTT droplet
  3. Click the "Access" button
  4. Enter username: fvtt in the console username field
  5. Click "Launch Droplet Console" (droplet console interface)
  6. You'll be logged in automatically (no password required)

Alternatively, if you prefer SSH, use your domain name 📖 SSH Docs:

ssh fvtt@foundry.yourdomain.com

Install FoundryVTT

If your droplet deployed successfully with the User Data script, you should see a "Configuration completed successfully!" message (successful configuration). You can now simply run:

fvtt.py install

Manual Installation (if needed): If the automatic configuration didn't work, you can install the management tool manually:

curl -fsSL https://install.forgot.sh/foundry/releases/update-fvtt-py.sh -o update-fvtt-py.sh
curl -fsSL https://install.forgot.sh/foundry/releases/update-fvtt-py.sh.sha256 -o update-fvtt-py.sh.sha256
shasum -a 256 -c update-fvtt-py.sh.sha256
if [ $? -eq 0 ]; then
    chmod +x update-fvtt-py.sh
    ./update-fvtt-py.sh install
else
    echo "SHA256 verification failed!"
fi

This will download and install the latest version of the FVTT management tool. After installation, you can run fvtt.py install to set up FoundryVTT.

During Installation

The installation script will prompt you for:

Step 4: Access Your FoundryVTT Server

Success! After installation completes, your FoundryVTT server will be accessible at:
https://foundry.yourdomain.com

Management Commands

Use these commands to manage your FoundryVTT installation:

Troubleshooting

Common Issues

Get Help

If you encounter issues:

Security Note: This setup automatically configures a firewall, SSL certificates, and secure SSH settings. Your FoundryVTT server is production-ready with best security practices. 📖 Security Best Practices

This guide uses automated scripts to ensure consistent, secure deployments of FoundryVTT on Digital Ocean.
FVTT Management Tool Version: