Rails App και Mongrel instance μέσω του Cpanel

programming, web hosting - 22.11.2007 22:13 - 7 σχόλια

Προσπαθούσαμε από καιρό να βρούμε μια λύση, μέσω της οποίας ο χρήστης που θα ήθελε να πειραματιστεί με το Ruby δεν θα είχε την δύσκολη αποστολή να σετάρει την εφαρμογή του μέσω SSH.

Για τους γνώστες βέβαια, η πρόσβαση SSH απαιτείται, σε εμάς όμως τουλάχιστον, όσοι επέδειξαν ενδιαφέρον για ενεργοποίηση hosting με rails support είχαν κυρίως την διάθεση να πειραματιστούν και η όποια προσπάθεια να στήσουν την εφαρμογή τους μέσω jailed SSH ήταν χρονοβόρα, κουραστική και γεμάτη ερωτήσεις εκατέρωθεν.

Ακολουθεί ένας οδηγός, πως μπορούν να στήσουν την Ruby On Rails εφαρμογή τους με Mongrel instance, καθώς και πως να την διαχειριστούν. Παραλείπω το κομμάτι της εγκατάστασης του Ruby On Rails και του Gems στον server, καθώς και την εμφάνιση των σχετικών icons στο περιβάλλον του Cpanel, καθώς είναι θέμα που προφανώς δεν απασχολεί τον τελικό χρήστη αλλά και πολύ απλή διαδικασία αν φυσικά υπάρχει το cpanel 11.

- Κάνουμε login στο Cpanel

- Πάμε στο tab «Software / Services» και κάνουμε κλικ στο icon Ruby On Rails

Rails App και Mongrel instance μέσω του Cpanel

- Εμφανίζεται η ακόλουθη οθόνη, όπου δημιουργούμε το Ruby on Rails / Mongrel Instance. Συμπληρώνοντας την φόρμα, το cpanel δημιουργεί όλο το skeleton των αρχείων και σετάρει το Mongrel.

Rails App και Mongrel instance μέσω του Cpanel

οι παραπάνω ρυθμίσεις εν ολίγοις σημαίνουν ότι βγάζουμε την Ruby εφαρμογή εκτός του public_html και ότι θα ενεργοποιήσουμε το Mongrel instance σε production environment.

- Kάνουμε upload την Ruby on Rails εφαρμογή μας μέσω FTP, ορίζουμε τις πληροφορίες της database και κάνουμε το migration (rake db:migrate).

- Πριν δούμε αν η εφαρμογή τρέχει σωστά, πρέπει να ενεργοποιήσουμε το Mongrel Instance και πάλι από το περιβάλλον του cpanel. Απλά στην ακόλουθη οθόνη, πατάμε το πράσινο icon (Run) και κάνουμε click στο link για να δούμε πως αποκρίνεται η εφαρμογή μας μέσω temporary url.

Rails App και Mongrel instance μέσω του Cpanel

- Όταν έχουμε ολοκληρώσει την εφαρμογή, πρέπει να κάνουμε redirect το site στον κατάλογο rails_sites. Εύκολα και απλά κάνοντας click στο button «Create Rewrite» και πάλι από το περιβάλλον του cpanel

Rails App και Mongrel instance μέσω του Cpanel

*** πριν ξεκινήσουμε και εφ’όσον ο hosting provider που είμαστε παρέχει την δυνατότητα σεταρίσματος της ruby εφαρμογής μέσω cpanel, θα πρέπει να ελέγξουμε αν τα modules που προαναφέρονται (mongrel, rake) είναι εγκατεστημένα και άρα μπορούμε να τα χρησιμοποιήσουμε στις ruby εφαρμογές μας.

Rails App και Mongrel instance μέσω του Cpanel

Post to Twitter Post to Delicious Post to Facebook

7 σχόλια


  1. Vaggelis
    14:27 - 25.11.2007

    Πολύ καλό το tutorial σου.

    Δυστυχώς για να κάνω αποδοτικά τη δουλειά μου χρησιμοποιώ το SSH το οποίο δουλεύει αρκετά καλα.

    Μία ερώτηση… πώς κανονίζεις το firewall να δέχεται requests στις πόρτες που θέλεις να σηκωθεί ο mongrel; Το κανονίζεις με τον πελάτη;

  2. apostolos
    14:42 - 25.11.2007

    Thanx :)

    στην προκειμένη περίπτωση θα σου πω για το APF firewall, όπου θέλουμε να ανοίξουμε την πόρτα που έχουμε ορίσει να σηκώνεται ο mongrel (Πχ 12001)

    pico -w /etc/apf/conf.apf

    βρίσκουμε την εγγραφή Common ingress (inbound) TCP ports και ορίζουμε εκεί την πόρτα που θα δέχεται requests ο Mongrel

    IG_TCP_CPORTS=»20,21,22,25,26,53,80,110,143,443,465,800,2082,2083,2086,2087,2095,2096,12001«

  3. Vaggelis
    15:47 - 25.11.2007

    Μια χαρά τα λές μόνο που δεν είμαι ο root του μηχανήματος :-)

  4. apostolos
    15:56 - 25.11.2007

    :-)

    sorry, δεν το κατάλαβα.

    αν δεν έχεις root access, δε νομίζω ότι γίνεται.

    οπότε ή ζητάς από τον provider να ανοίξει μια πόρτα για το mongrel, διαφορετική από αυτή που ήδη έχει ορίσει. Γιατί αν υποστηρίζει RoR έχει ορίσει ήδη μια default πόρτα που θα δέχεται τα requests ο Mongrel, οπότε μάλλον δεν θα δεχθεί να ανοίξει και νέα. Λογικά θα σε κατευθύνει να χρησιμοποιήσεις αυτή που είναι ήδη open.

  5. Vaggelis
    21:05 - 26.11.2007

    Στον έναν Host τρέχω το CGI dispatch (ναι είναι πάναργο και κάνει μόνο για testing)

    Στον άλλο host σήκωσα κανονικά Mongrel στο port 12000 αφού μου το άνοιξε ο administrator τους :-)

  6. Digitalbox : Blog About Web Design, Web Hosting & Domain Names » Blog Archive »
    14:11 - 12.01.2008

    [...] έχω ξαναγράψει κι εδώ, αλλά πρέπει να το επαναλάβω : τέτοιοι πελάτες που [...]

  7. BizWriter.gr [Beta] » Ο πελάτης έχει πάντα δίκιο;| Άρθρα Ίντερνετ Μάρκετινγκ & More
    19:54 - 25.06.2008

    [...] Διαβάστε την συνέχεια στο “Ο πελάτης έχει πάντα δίκιο;“ [...]

Σχολιασμός

σχόλιο