Webbhotell med Ruby-stöd

Ruby on Rails behöver en dedikerad applikationsserver, ett eget Ruby-runtime och ofta en bakgrundsjobbsprocess som körs parallellt. Det gör att Ruby-hosting i praktiken är förbehållet VPS, molnplattformar och dedikerade servrar. På delad hosting är Ruby sällsynt och ofta med begränsat stöd för moderna gems.

Det finns i dag ett brett utbud av alternativ: VPS där du konfigurerar servern själv, eller PaaS-tjänster som Render, Railway och Fly.io som tar hand om driftsättning och skalning.

Läs om hur vi testar och betygsätter

Laddar resultat... Priser exkl. moms
3.2+
Ruby-version för Rails 8
300-500 MB
RAM per Puma-worker
Redis
Krävs för Sidekiq-jobb
PostgreSQL
Standarddatabas i Rails

Vad du behöver veta om Ruby-hosting

Rails-hosting skiljer sig från PHP-hosting på ett fundamentalt sätt: applikationen körs som en långlivad process, inte som ett skript som startas om vid varje request. Det påverkar allt från minnesanvändning till hur du driftsätter uppdateringar.

Applikationsserver

Puma är standardvalet i Rails och det webbhotell och PaaS-tjänster rekommenderas att stödja. Det är trådbaserat och hanterar flera requests i samma process, vilket håller minnesförbrukningen nere. Phusion Passenger är ett äldre alternativ som integreras direkt med Apache eller Nginx och passar bra på VPS-miljöer där du vill ha ett lättkonfigurerat alternativ till Puma.

Puma är standard i Rails 7 och 8

Databas och Redis

Rails-communityt har länge rört sig mot PostgreSQL som förstahandsval. Det är robust, stöder avancerade datatyper och fungerar sömlöst med Render och Railway. MySQL fungerar också bra, men nya Rails-appar skapas idag nästan alltid mot PostgreSQL. Utöver relationsdatabas behöver de flesta produktionsappar Redis, dels för Action Cable och WebSockets, dels som krav för bakgrundsjobbs-biblioteket Sidekiq.

PostgreSQL rekommenderas framför MySQL

Gems och Bundler

Bundler hanterar alla gem-beroenden via Gemfile och Gemfile.lock, och kräver att hosting-miljön tillåter installation av native extensions. Det är just native extensions, som pg-gem för PostgreSQL eller gems med C-bindningar, som ställer till det på restriktiva delade webbhotell. På VPS och PaaS körs bundle install som en del av deploy-processen utan begränsningar.

Native gems kräver kompilatorstöd på servern

Bakgrundsjobb med Sidekiq

Sidekiq är de facto-standard för asynkrona jobb i Rails, till exempel att skicka e-post, bearbeta bilder eller anropa externa API:er. Det kräver en dedikerad Redis-instans konfigurerad för persistent lagring, inte bara cache. Sidekiq körs som en separat process vid sidan av appservern, vilket innebär att din hosting-plan behöver ha utrymme för minst två processer.

Kräver Redis och en separat worker-process

Ruby på delat webbhotell fungerar sällan i praktiken

Även om en leverantör listar Ruby som en funktion innebär det inte nödvändigtvis att modern Rails-hosting är möjlig. Vanliga problem är att Ruby-versionen är låst till 2.x trots att Rails 7 och 8 kräver 3.2, att native gems inte kan kompileras på grund av saknade byggnadsverktyg, att processer stängs ned efter inaktivitet och att Redis saknas helt. För all seriös Rails-utveckling bör du räkna med VPS, en managed PaaS-plattform eller specifikt Rails-inriktad hosting.

Checklista för Rails-hosting

Ruby 3.2 eller senare
Rails 8 kräver Ruby 3.2.0 som minimum. Kontrollera att leverantören stöder aktuell Ruby-version och att du kan byta version, exempelvis via rbenv eller RVM.
Puma eller Passenger som appserver
Applikationen behöver köras som en persistent process. Puma är standard i moderna Rails-appar. Passenger integrerar lättare med befintlig Apache/Nginx på ett VPS.
PostgreSQL-databas inkluderad eller tillgänglig
De flesta Rails-appar byggs mot PostgreSQL. Se till att det ingår i hosting-paketet eller att du kan ansluta till en extern databastjänst utan latens-problem.
Redis för Sidekiq och Action Cable
Behöver du bakgrundsjobb eller realtidsfunktioner behöver du Redis. Kontrollera att Redis-instansen kan konfigureras för persistent lagring, inte bara som cache.
Bundler och native extensions
Hosting-miljön måste tillåta bundle install med native extensions. Det kräver att byggverktyg som gcc och make finns tillgängliga på servern.
Minne och processisolering
Räkna med 300-500 MB RAM per Puma-worker och ytterligare minne för Sidekiq. Delad hosting med strikta minnesgränser räcker sällan till för en Rails-app i produktion.

PaaS-plattformar är enklaste vägen för Rails

Om du inte vill hantera serverkonfiguration är Render, Railway och Fly.io de tre plattformar Rails-communityt rekommenderar mest. Alla tre har inbyggt stöd för Rails, automatisk driftsättning via Git, PostgreSQL och Redis som tilläggstjänster samt gratisnivåer för testmiljöer. Railway har särskilt flexibel prissättning och stöder hela stacken med web-process, worker-process och databas under samma projekt. Fly.io passar bäst om du behöver låg latens globalt. Heroku var länge det självklara valet men är numera dyrare och tappar mark mot dessa modernare alternativ.

VPS (Virtual Private Server) är en virtuell server där du får egna dedikerade resurser på en fysisk server som delas med andra. Du behöver VPS när din webbplats växer och kräver mer kraft, stabilitet eller kontroll än vad delat webbhotell kan erbjuda, men du vill inte betala för en hel dedikerad server.

Läs hela svaret

SSH (Secure Shell) är ett krypterat protokoll för att fjärransluta till och styra en server via terminalen. Du öppnar en terminal på din dator, skriver ett SSH-kommando med serverns IP-adress och ditt användarnamn, och får upp ett kommandoradsgränssnitt direkt på servern. SSH är standardsättet att administrera en Linux-VPS.

Läs hela svaret

Ja, för produktion behöver du i praktiken en VPS eller en Rails-anpassad plattform. De flesta delade webbhotell saknar Ruby-stöd. Undantag som Oderland och Polar55 erbjuder Ruby via Passenger, men för seriösa Rails-applikationer med Sidekiq och bakgrundsjobb är en VPS det naturliga valet.

Läs hela svaret