Getting Started
Welcome to Ship It Squirrel! This guide will walk you through deploying your first Rails app in about 15 minutes.
What you'll need
- A DigitalOcean account (or other VPS provider)
- A Rails app in a GitHub repository
- About 15 minutes
Overview
Here's what we'll do:
- Connect your accounts - Link DigitalOcean and GitHub
- Create a server - Spin up a new droplet
- Set up SSH keys - So Ship It Squirrel can access your server
- Provision the server - Install Ruby, PostgreSQL, etc.
- Create an app - Configure your Rails app
- Deploy! - Push your code to production
Step 1: Connect your accounts
First, let's connect your DigitalOcean and GitHub accounts.
Go to Settings > Integrations and:
- Click "Connect DigitalOcean" and paste your API token (create one at DigitalOcean API Settings)
- Click "Connect with GitHub" to authorize Ship It Squirrel via OAuth
Step 2: Create a server
Go to Servers and click "Add Server".
Fill in:
- Name: Something memorable (e.g., "production-1")
- IP Address: Your DigitalOcean droplet's IP
- SSH User: Usually
rootfor new droplets - SSH Port: Usually
22
Save the server, then follow the SSH Keys guide to add your SSH key.
Step 3: Provision the server
On your server's page, click "Provision Server".
This installs everything your Rails app needs:
- Ruby 3.3 (via rbenv)
- PostgreSQL
- Redis
- Node.js and Yarn
- Caddy (web server with automatic HTTPS)
This takes a few minutes. You can watch the progress in your Rails logs.
Step 4: Create an app
Go to Apps and click "Add App".
Fill in:
- Name: Your app name (e.g., "my-rails-app")
- Server: Select your provisioned server
- Repository: Select from your GitHub repos
- Branch: Usually
main - Database: PostgreSQL
- Rails Master Key: Paste your
config/credentials/production.key
Step 5: Deploy!
On your app's page, click the big "Deploy" button.
Ship It Squirrel will:
- Clone your repository
- Install dependencies (bundle install, yarn install)
- Compile assets
- Run database migrations
- Start your app
Once complete, visit your server's IP address to see your app running!
Next steps
- Set up a domain: Point your domain's DNS to your server's IP, then add the domain in your app settings
- Enable HTTPS: Caddy automatically gets SSL certificates when you have a domain configured
- Set up auto-deploy: Configure deploy mode to "Auto" for automatic deploys on git push
Need help?
Check out our other guides:
- SSH Keys - Detailed SSH key setup
- Server Setup - DigitalOcean droplet creation
- Troubleshooting - Common issues and fixes