Heim > Artikel > Backend-Entwicklung > Umgebungseinrichtung für Ruby on Rails, Passenger und Nginx unter Ubuntu14.04
Schon immer von Rubyonrails gehört ist sehr hoch, daher habe ich es vor einiger Zeit ausprobiert und überprüfe jetzt RailsUmgebungsaufbauprozess. Ich verwende ubuntu14.04LTS Ich habe verschiedene Beiträge und einige Tutorials im Internet gelesen Es wird nicht empfohlen, dies unter Windows SchienenEntwicklung, normalerweise Linux und Macos.
Vorarbeiten
Installieren Vorher Rails Umgebung gibt es einige notwendige Pakete, die installiert werden müssen, um verschiedene Probleme mit fehlenden Bibliotheken in nachfolgenden Installationen zu vermeiden (siehe http://ihower.tw/rails3/). Führen Sie den folgenden Befehl aus:
$sudo apt-get install build-essential bison openssl libreadline6libreadline6-dev curl git -core zlib1g zlib1g-dev libssl-devlibyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-devlibxslt-dev autoconf libc6-dev
mit apt-getBei der Installation kommt es manchmal zu unableto Das Problem der Lokalisierung kann im Allgemeinen durch Aktualisieren gelöst werden:
$sudo apt-get update
ifUpdate kann ebenfalls nicht ausgeführt werden, und „isthe „Internet authentifiziert?“ InstallierenRVM
ist ein Befehlszeilentool, das eine praktische Mehrfachversion Rubin
ruby/rails bringt großen Komfort mit sich. Natürlich müssen Sie nicht verwenden . rvm für die Verwaltung, aber ich persönlich bevorzuge die Verwendung rvm Installierenrvm Sie müssen curl verwenden. Folgen Sie dann rvm
Auf der offiziellen Website wird die Installation beschrieben. Sie ist sehr einfach, führen Sie einfach zwei Befehle aus: $ gpg --keyserver hkp://keys.gnupg.net--recv-keys D39DC0E3$ curl -sSL https://get.rvm.io |. bash -sstableFühren Sie nach Abschluss der Installation Folgendes aus: $Quelle ~/.rvm/scripts/rvmDies ist erledigt rvm
Installation. Dies kann durch Ausführen von
$ erfolgen rvm -v zum Überprüfenrvm
Ob die Installation erfolgreich ist. Verwenden Sie rvm InstallierenRuby Führen Sie $rvm install 2.0.0 aus Installieren Sie die Version ruby2.0.0. Sie können die entsprechende Version entsprechend Ihren Anforderungen installieren. Wenn Errorrunning auftritt
'requirements_debian…'Fehler, Sie können zuerst $rvm autolibs deaktivieren ausführen Dann installieren Sie es erneut. Wenn alle Pakete in den Schritten 1 installiert wurden, dann sollte die Installation hier erfolgreich sein, andernfalls erscheint missingxxxFehler. RubyVersionseinstellungen RVMkann verwendet werden, um mehrere Versionen von Ruby zu installieren , wenn also mehrere Versionen von Ruby auf demselben Computer installiert sind, dann benötigen Sie um anzugeben, welche Version von Ruby verwendet werden soll. Verfügbar$rvm
2.0.0 --default Direktive zur Angabe der Standardversion (hier ist 2.0.0Version). Beachten Sie, dass für Ubuntues istTerminaltatsächlichesGnome-Terminal , also RVMis wird angezeigt
keine FunktionFehler, Sie müssen das TerminalBearbeiten->Profil->Einstellungen->Titelund
Befehl,wählenBefehl als Loginshell ausführen. Terminal schließen und Terminal wieder öffnen kann den Befehl zur Versionseinstellung Ruby ausführen. Einzelheiten finden Sie unter: https://rvm.io/integration/gnome-terminal InstallationSchienen Im Hinblick auf die häusliche Netzwerkumgebung , InstallationSchienen können durch RVM ersetzt werden RubyInstallieren Sie die Quelle auf dem inländischen Taobao-Spiegelserverhttp ://ruby.taobao.org/, sonst reagiert es lange nicht und kann nicht installiert werden: $gemsources --remove https://rubygems.org/ $gemsources -a https://ruby.taobao.org/ $gemsources -l ***AKTUELLE QUELLEN *** https://ruby.taobao.org Verwenden Sie rvm legt den entsprechenden Ruby/Rails fest von Edelsteinset. Wenn wir 2.0.0 Version von Ruby verwenden möchten und 4.1.8 Version von Schienen können kombiniert werden, um eine Edelsteinset Umgebung festzulegen. Die spezifischen Vorgänge lauten wie folgt: $rvm use 2.0.0
(unter Verwendung der 2.0.0 Version von Rubin) $rvm gemset create Rails418
(erstellen Sie mit dem Namen rails418 > gemset, der Name kann beliebig sein) $gem install Rails [--version = '4.1.8'] (installieren Sie Schienen, Folgendes Version Der Parameter ist optional. Wenn er nicht ausgefüllt ist, wird die neueste Version installiert Schienen wenn unableto während der Installation angezeigt wird.
Bei Fehlern wie der Konvertierung von „/x89“ von ASCII in UTF8 können Sie $gem install rdoc und $gem
rdoc --all --overwrite zum Lösen) $rvm use 2.0.0@rails418 –default (ersetzen Sie ruby2.0.0 und rails4.1.8kombiniert gemset wird standardmäßig verwendet Edelsteinset) Du Sie können $rvm gemset list verwenden, um zu überprüfen, welches GemsetUmgebung, das Gleiche, $rvm
list kann überprüfen, welche Versionen von Ruby installiert sind. Wir fragen uns vielleicht, ob ich mehrere Schienen habe Projekt, jedes Projekt erfordert eine andere Umgebung, daher muss ich jedes Mal, wenn ich Projekte wechsle, manuell GemsetUmwelt? Tatsächlich können wir eine Datei .rvmrc im Stammverzeichnis jedes Projekts erstellen und beispielsweise Folgendes darin schreiben: rvmuse
2.0.0@rails418-Direktive zur Angabe der zu verwendenden gemset-Umgebung . Auf diese Weise wechseln wir jedes Mal, wenn wir dieses Verzeichnis betreten, in diese Umgebung. Bereitstellung Ich verwende die Bereitstellungsmethode passenger+nginx. passagier ist eine Webapp
Server, nginx ist ein leistungsstarker HTTP und Reverse-Proxy-Server. Es stehen tatsächlich mehrere Softwareprogramme zur Bereitstellung zur Verfügung, die Sie selbst auswählen können. Erste Installation Beifahrer:$gem
Installieren Sie Passenger und verwenden Sie dann den Befehl rvmsudo um nginx mit Passagier zu installieren Modul : $ rvmsudopassenger-install-nginx-module
Dies WegnginxDer Standardinstallationspfad ist /opt/nginx , ändern Sie die Datei /opt/nginx/conf/nginx.conf, um die anzugeben Stammverzeichnis als RailsProjektöffentlich Verzeichnis. Dann starten Sie nginx:$ sudo /opt/nginx/sbin/nginx Auf diese Weise können Sie Ihre eigenen Projekte, die mit Rails entwickelt wurden, über den Browser verwenden. Verwenden Sie diese Methode, um mit Passagier nginx ist sehr praktisch. Nginx ist nicht wie Apache , ApacheWenn ein Modul benötigt wird, fügen Sie es einfach zur Konfigurationsdatei hinzu und starten Sie es neu. Allerdings kann nginx erst nach der Konfiguration der erforderlichen Module kompiliert und installiert werden. Sobald die Installation abgeschlossen ist, können keine weiteren Module mehr kompiliert und installiert werden hinzugefügt. Wenn Sie es also separat installieren möchten, müssen Sie online gehen, um zu überprüfen, wie nginx und Passagier. So konfigurieren Sie nginx für eine separate Installation, damit es Passagier , hier ist die offizielle Referenzdokumentadresse von Passagier: https://www.phusionpassenger.com/documentation/UsersguideNginx.htmlZur Verwendung von nginx wird dem Dienst hinzugefügt und beim Booten gestartet, wie unten gezeigthttp://www.nginx.cn/ 204.html Ein Absatz zu Skript: #!/bin/sh
DESC="nginxdaemon"
NAME=nginx DAEMON=/opt/nginx/sbin/$NAME CONFIGFILE=/opt/nginx/conf/$NAME.conf PIDFILE=/opt/nginx/logs/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME set-e
[-x "$DAEMON" ] ||
do_start(){
$DAEMON -c $CONFIGFILE ||.
} do_stop(){
kill -INT `cat $PIDFILE` ||echo -n "nginx läuft nicht"
} do_reload(){
kill -HUP `cat $PIDFILE` ||echo -n "nginx kann nicht neu geladen werden"
} Gehäuse „$1“ in
Start)
echo -n „Startet $DESC:$NAME“
do_start
echo "."
;;
stopp)
echo -n „Stoppt $DESC:$NAME“
do_stop
echo "."
;;
reload|graceful)
echo -n „$DESCconfiguration wird neu geladen…“
do_reload
echo "."
;;
Neustart)
echo -n „Neustart $DESC: $NAME“
do_stop
do_start
echo "."
;;
*)
echo „Verwendung: $SCRIPTNAME{start|stop|reload|restart}“ >&2
Ausgang 3
;;
esac exit0
Erstellen Sie dieses Skript als neues Speichern die Datei als /etc/init.d/nginx und verwenden Sie dann sudoservice
nginx starten/stoppen/neustarten, um den nginx-Dienst zu betreiben. Im Folgenden wird gezeigt, wie rvmDeinstallierenRuby, Gemset Anleitung für : RubyVersion: $rvm
2.0.0 entfernen EdelsteinsetVerwendet gem und möchten alle gem :$rvm gemset empty 2.0.0@rails418 Löschen Sie ein Edelsteinset: $rvm
Gemset Schienen418 löschen
Das Obige stellt die Umgebungskonstruktion von Ruby on Rails, Passenger und Nginx unter Ubuntu 14.04 vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.
Schienen