Développement

Rails Stack

Ruby 3.2, Puma, Nginx et PostgreSQL — environnement Rails production-ready dès la commande.

À propos de Rails Stack

Rails Stack configure votre VPS avec les composants nécessaires au déploiement d'une application Ruby on Rails en production : Ruby 3.2, Bundler, Puma comme serveur d'application, Nginx en frontal et PostgreSQL pour les données. Déployez votre projet Ruby sans configuration serveur manuelle.

Ce qui est installé

Prêt au démarrage du VPS

OS compatibles
Ubuntu 24.04
Application
Rails Stack
Stack technique
Ruby 3.2PumaNginxPostgreSQLRedisBundler
RAM minimum
2 Go
CPU minimum
1 vCPU
Accès
root par SSH

Fonctionnalités clés

  • Ruby 3.2 depuis les dépôts Ubuntu 24.04 — La dernière version stable de Ruby, compatible avec Rails 7 et Rails 8, installée depuis les dépôts officiels sans PPA additionnel. Bundler est inclus pour gérer les gems de votre projet.
  • Puma en serveur d'application — Le serveur multi-thread de référence pour Rails en production. Configurez WEB_CONCURRENCY (workers) et RAILS_MAX_THREADS selon la RAM disponible : 2 workers pour 2 Go, montez à 4 sur 4 Go. Puma écoute sur un socket Unix pour de meilleures performances avec Nginx.
  • Nginx en proxy inverse — Nginx sert les fichiers public/assets directement depuis le disque (sans passer par Puma), gère la compression gzip, termine le TLS via Let's Encrypt et transmet les requêtes dynamiques vers le socket Puma. Il absorbe les pics de connexions simultanées sans saturer Ruby.
  • PostgreSQL préconfigurée — La base de données recommandée pour Rails en production : colonnes JSONB, recherche plein texte, planificateur de requêtes avancé. Installée en service système, elle partage le VPS avec Puma et Nginx sans surcouche conteneur.
  • Redis pré-installé — Redis est disponible immédiatement pour Sidekiq, Rails.cache et Action Cable. Ajoutez gem 'sidekiq' à votre Gemfile et créez une unité systemd pour lancer les workers — pas de Redis distant, pas de surcoût.
  • Solid Queue et Solid Cache prêts — Rails 8 introduit Solid Queue (jobs en arrière-plan via PostgreSQL) et Solid Cache (cache sur disque SSD). Rails Stack supporte les deux sans modifier la configuration base.

Quand utiliser cette solution ?

Application Rails SaaS auto-hébergée

Clonez votre dépôt dans /var/www/votre-app, créez un fichier .env avec DATABASE_URL, REDIS_URL et SECRET_KEY_BASE, exécutez bundle install, db:migrate et assets:precompile. Puma démarre sur un socket Unix, Nginx proxifie les ports 80/443 — votre SaaS est en ligne sur un VPS à coût fixe.

API JSON avec Action Controller

Rails en mode API (--api) est un serveur JSON performant : Active Record, serializers et strong params sont production-ready. Déployez l'API sur un VPS de 1 Go ; Nginx gère le rate limiting et les en-têtes CORS avant que les requêtes n'atteignent Puma.

Traitement de jobs avec Sidekiq

Redis est déjà installé par le template. Ajoutez gem 'sidekiq' à votre Gemfile et créez une unité systemd pour bundle exec sidekiq -e production. Envoi d'e-mails, traitement d'images, génération de rapports — tout tourne sur le même VPS, sans dyno séparé.

Guide

Déployer Rails Stack sur votre VPS

  1. Commander un VPS ServOrbit

    Choisissez 2 Go de RAM sur Ubuntu 24.04 comme minimum pour une application Rails avec PostgreSQL. Montez à 4 Go si vous prévoyez des workers Sidekiq ou un cache Redis chargé. Le template Rails Stack est disponible dans le formulaire de commande du Marketplace.

  2. Déployer depuis le Marketplace

    Rendez-vous sur Marketplace → Développement → Rails Stack et cliquez sur Déployer. Le script de provisionnement installe Ruby 3.2, Bundler, Rails, Puma, Nginx, PostgreSQL et Redis — sans session SSH manuelle pour la configuration de base.

  3. Cloner votre projet et le configurer

    Connectez-vous en SSH, clonez votre dépôt dans /var/www/votre-projet, lancez bundle install --without development test et créez un fichier .env avec SECRET_KEY_BASE, DATABASE_URL et RAILS_ENV=production.

  4. Lancer les migrations et précompiler les assets

    Exécutez RAILS_ENV=production bin/rails db:migrate puis RAILS_ENV=production bin/rails assets:precompile. Nginx est déjà configuré pour servir public/assets et public/packs directement depuis le disque.

  5. Démarrer Puma et activer HTTPS

    Démarrez Puma : bundle exec puma -C config/puma.rb. Configurez une unité systemd pour le maintenir actif après les redémarrages. Lancez certbot --nginx -d votre-domaine.com pour obtenir un certificat Let's Encrypt gratuit — Nginx est déjà installé et actif.

Questions fréquentes

Questions sur Rails Stack

← Retour à DéveloppementToutes les applications
Ruby 3.2 depuis les dépôts officiels Ubuntu 24.04. Rails 7 et Rails 8 tournent tous les deux sur Ruby 3.2 sans problème de compatibilité. Si vous avez besoin d'une autre version, installez rbenv ou asdf en parallèle et gérez plusieurs versions par projet.

Intégrer le bouton de déploiement

Vous maintenez un projet qui utilise Rails Stack ? Ce bouton permet à vos lecteurs de le déployer sur un VPS en un clic, sans lire de documentation Docker.

Deploy Rails Stack on ServOrbit
Markdown
[![Deploy Rails Stack on ServOrbit](https://servorbit.com/brand/deploy/button.svg)](https://servorbit.com/vps-cloud?template=rails-stack&utm_source=deploy-badge&utm_medium=referral&utm_campaign=rails-stack)
HTML
<a href="https://servorbit.com/vps-cloud?template=rails-stack&utm_source=deploy-badge&utm_medium=referral&utm_campaign=rails-stack"><img src="https://servorbit.com/brand/deploy/button.svg" alt="Deploy Rails Stack on ServOrbit" height="40"></a>

Le bouton pointe vers la commande d'un VPS avec le template présélectionné. L'image est servie depuis servorbit.com — rien à héberger de votre côté.

Besoin d'aide ?

Parcourez notre centre d'aide et notre FAQ, ou contactez notre équipe — rappel, WhatsApp ou e-mail.

Écrire sur WhatsApps'ouvre dans un nouvel onglet