Cosa c'è installato sul tuo server Ruby on Rails?
- Ruby 3.2 dal repository di Ubuntu 24.04
- Rails 8 (8.1 o successivo) e un progetto di esempio in /home/app/uygulama
- Puma su 127.0.0.1:3000, eseguito come servizio systemd chiamato uygulama
- SQLite, con il database di produzione in storage/production.sqlite3
- HTTPS tramite Caddy con force_ssl attivo in Rails, quindi il dominio è facoltativo
- Impostazioni in /etc/seturack-rails.env: RAILS_ENV=production e una SECRET_KEY_BASE generata
- build-essential e librerie di sviluppo per compilare le gem, più un file di swap da 2 GB
- Firewall con aperte solo le porte 22, 80 e 443
Che dimensione ti serve per Ruby on Rails?
La documentazione di Rails non indica un valore di RAM. La memoria dipende dal numero di processi e thread di Puma, dalle tue gem e da assets:precompile. Come regola pratica, 1 GB va bene per prove e piccoli progetti, e da 2 a 4 GB è un buon inizio per un progetto con traffico reale. La dimensione minima è 1 GB di RAM, 1 CPU e 15 GB di disco, e l'installazione aggiunge 2 GB di swap per le build. Se non basta, ingrandisci dal pannello e imposta il numero di processi Puma con WEB_CONCURRENCY.
| Uso | Dimensione | Prezzo | Scegli |
|---|---|---|---|
| Base | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mese | |
| Media | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mese | |
| Potente | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mese |
Per chi è?
- Sviluppatori che vogliono eseguire il proprio progetto Rails su un server tutto loro
- Chi impara Rails o crea un prototipo o un piccolo prodotto su un solo server
- Progetti che partono da SQLite e potrebbero passare in seguito a PostgreSQL
Cosa succede dopo l'ordine?
- Imposta la dimensione e completa il pagamento.
- Il server si avvia e Ruby e Rails si installano da soli. Nei nostri test su server reali ci sono voluti circa 5 minuti.
- Dalla scheda Panoramica apri l'Indirizzo del sito. La pagina di esempio mostra la versione di Rails.
- Connettiti via SSH, digita su - app, spostati in ~/uygulama e carica nella shell le impostazioni di /etc/seturack-rails.env.
- Dopo aver modificato il codice, esegui bundle install, bin/rails db:migrate e bin/rails assets:precompile.
- Riavvia Puma con systemctl restart uygulama come root.
Con ogni server
- Backup giornalieri inclusi nel prezzo
- Traffico illimitato
- Accesso root completo
- Aumenta o riduci RAM e CPU in seguito, e ingrandisci il disco
- Sede: Istanbul · IST-1.
Da sapere
- Il progetto di esempio è volutamente essenziale: non ha Hotwire, Action Cable, Solid Queue né configurazione Kamal. Quando porti il tuo progetto, bundle install aggiunge tutto ciò che il tuo Gemfile elenca.
- L'obbligo di HTTPS sta in config/initializers/seturack.rb. Tieni quel file quando porti il tuo progetto, oppure imposta tu assume_ssl e force_ssl.
- Se il tuo progetto usa le credentials di Rails, aggiungi RAILS_MASTER_KEY a /etc/seturack-rails.env.
- Quello installato è Ruby 3.2. Se il tuo progetto richiede un Ruby più recente, installalo tu e aggiorna la riga PATH nel file del servizio.
- Tenere aggiornate le gem e Rails è una tua responsabilità. Gli aggiornamenti di sicurezza di Ubuntu si installano da soli.
Domande e risposte su Ruby on Rails
Come porto il mio progetto Rails sul server?
Connettiti via SSH e digita su - app. Rinomina il progetto di esempio, clona il tuo codice in ~/uygulama con git clone e copia lì config/initializers/seturack.rb. Esegui bundle install, bin/rails db:prepare e bin/rails assets:precompile, poi systemctl restart uygulama come root.
Come eseguo i comandi Rails sul server?
Digita su - app e cd ~/uygulama. Carica le impostazioni con set -a; . /etc/seturack-rails.env; set +a. Aggiungi il percorso delle gem con export PATH=$GEM_HOME/bin:$PATH. Dopo di che bundle, bin/rails console e bin/rails db:migrate usano le impostazioni di produzione.
Di quanta RAM ha bisogno Ruby on Rails?
Rails non ha un valore ufficiale di RAM. Come regola pratica, 1 GB va bene per prove e piccoli progetti, e da 2 a 4 GB è un buon inizio per traffico reale. Aggiungere processi Puma consuma più memoria che aggiungere thread.
Posso usare PostgreSQL al posto di SQLite?
Sì. Esegui apt install postgresql libpq-dev come root, aggiungi pg al Gemfile, cambia la sezione production di config/database.yml ed esegui bin/rails db:prepare. Puoi anche mettere il database su un server separato.
Quali versioni di Ruby e Rails sono installate?
Ottieni Ruby 3.2 di Ubuntu 24.04 e l'ultima release di Rails 8 al momento dell'installazione (8.1 o successiva). Le guide di Rails dicono che Rails 8.0 e 8.1 richiedono Ruby 3.2.0 o più recente.
Esiste un indirizzo di health check per Rails?
Sì. Il percorso /up di Rails è aperto e risponde 200 finché l'app è in esecuzione. È escluso dal reindirizzamento a HTTPS, quindi puoi puntarci direttamente il tuo strumento di monitoraggio.