Deploy on Scalingo
Scalingo is a French PaaS that's a good fit for TrocOS deployments targeting European communities. It handles PostgreSQL, SSL, and scaling automatically.
1. Create your app
Sign up at scalingo.com and create a new application. During creation, link it to your GitLab fork of TrocOS — this lets you trigger deployments directly from the dashboard.
2. Add the PostgreSQL add-on
In your app's dashboard, go to Add-ons and add PostgreSQL. Scalingo will provision a database and set a DATABASE_URL environment variable automatically.
3. Set environment variables
In Environment, add the following:
| Variable | Value |
|---|---|
RAILS_ENV | production |
SECRET_KEY_BASE | Run rails secret to generate a value |
DATABASE_URL is already set by the PostgreSQL add-on.
OAuth providers (optional) — only set the variables for the providers you want to enable:
| Variable | Description |
|---|---|
GITHUB_CLIENT_ID / GITHUB_CLIENT_SECRET | GitHub OAuth app credentials |
DISCORD_CLIENT_ID / DISCORD_CLIENT_SECRET | Discord OAuth app credentials |
SLACK_CLIENT_ID / SLACK_CLIENT_SECRET | Slack OAuth app credentials |
See the OAuth Setup guide to create these app credentials.
4. Deploy
Trigger a manual deployment from the dashboard — Scalingo will build the app, run migrations automatically, and make it available at your Scalingo URL.
5. Initial setup
After the first deploy, run the setup task using the Scalingo CLI:
scalingo --app <your-app-name> run bundle exec rails trocos:setupThis creates your first admin account.
6. Open your app
Your TrocOS instance is live at the URL shown in your Scalingo dashboard.
Optional: Custom domain
In Domains, add your custom domain and enable SSL. Scalingo provisions a Let's Encrypt certificate automatically.