Difference between revisions of "FR:RPi Ruby on Rails"

From eLinux.org
Jump to: navigation, search
(french translation. traduction en cours. source: 18/01/2013 20:01)
 
(Test de l'installation)
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
Il a été développé et testé avec debian6-19-04-2012. Il n'y a pas assez de place sur une image standard de 2Go. J'ai fait les tests avec une image de 8Go, mais 4Go devraient convenir. Voyez comment étendre l'image [[FR:RPi_Easy_SD_Card_Setup | ici]] ou [http://www.youtube.com/watch?v=DztSRaFyaVE là].
 
Il a été développé et testé avec debian6-19-04-2012. Il n'y a pas assez de place sur une image standard de 2Go. J'ai fait les tests avec une image de 8Go, mais 4Go devraient convenir. Voyez comment étendre l'image [[FR:RPi_Easy_SD_Card_Setup | ici]] ou [http://www.youtube.com/watch?v=DztSRaFyaVE là].
  
The installation was all done from the basic (pre startx) command prompt. We will use Ruby Version Manager ([http://beginrescueend.com RVM]), so first we must install all its prerequisites:
+
L'installation a été réalisée depuis l'invite de commande de base (avant startx). Comme nous utiliserons Ruby Version Manager ([http://beginrescueend.com RVM]), il faudra au préalable installer ses prérequis :
  
  # Install prerequisites
+
  # Installation des éléments prérequis
 
  sudo apt-get install -y git curl zlib1g-dev subversion
 
  sudo apt-get install -y git curl zlib1g-dev subversion
  
You might come across the error '404 not found', then try update your APT package index:
+
Vous pourriez rencontrer l'erreur '404 not found', essayez alors de mettre à jour l'index des paquets APT :
  # Update APT package index
+
  # Mise à jour de l'index des paquets APT
 
  sudo apt-get update
 
  sudo apt-get update
  
The above is enough to proceed, but we will also need the following later, so whilst we're in the mood for apt-getting:
+
Ce qui précède est suffisant pour commencer, mais nous aurons aussi besoin de ce qui suit plus tard, donc tant que nous y sommes avec apt-get, profitons-en pour les télécharger :
  # Additional Ruby dependencies
+
  # Dépendances Ruby supplémentaires
 
  sudo apt-get install -y openssl libreadline6-dev git-core zlib1g libssl-dev
 
  sudo apt-get install -y openssl libreadline6-dev git-core zlib1g libssl-dev
 
  sudo apt-get install -y libyaml-dev libsqlite3-dev sqlite3
 
  sudo apt-get install -y libyaml-dev libsqlite3-dev sqlite3
Line 22: Line 22:
 
  sudo apt-get install -y autoconf automake libtool bison
 
  sudo apt-get install -y autoconf automake libtool bison
  
Note: Not installing openssl before RVM will cause you [https://rvm.io/packages/openssl/ grief] later!
+
Remarque : Ne pas installer openssl avant RVM vous causera des [https://rvm.io/packages/openssl/ soucis] plus tard !
  
Now we can use RVM straight from github using:
+
Nous pouvons à présent utiliser RVM directement depuis github avec :
 
  curl -L get.rvm.io | bash -s stable --rails
 
  curl -L get.rvm.io | bash -s stable --rails
  
Note: With my default Debian image and keyboard map, it was very hard to get a | (pipe) character. I got it by pressing AltGr+|
+
Remarque : Avec mon image Debian par défaut et ma disposition clavier, il a été très difficile de trouver le caractère | (tube). Je l'ai obtenu en utilisant AltGr+|
  
When run, you will get some messages about requirements for Ruby. You need to press 'q'. Note the computer may not react straight away as it is 'thinking'. After a few seconds, the script will download and compile ruby 1.9 and Rails. This takes a long time! (3 Hrs) Have a sleep and check in the morning.
+
Lors de l'exécution, vous aurez des messages concernant les éléments nécessaires à Ruby. Vous devrez appuyer sur 'q'. Notez que l'ordinateur peut ne pas réagir aussitôt comme s'il semblait 'réfléchir'. Après quelques secondes, le script va télécharger et compiler ruby 1.9 et Rails. Cela peut prendre beaucoup de temps (3 heures) ! Allez dormir et vérifiez le lendemain.
  
At the end of the installation, RVM suggests that you have to run a script in order to enable Ruby. (I think I only had to do this once?)
+
À la fin de l'installation, RVM vous propose d'exécuter un script pour activer Ruby. (je pense n'avoir à le faire qu'une fois ?)
 
  pi@raspberrypi:~$ source ~/.rvm/scripts/rvm
 
  pi@raspberrypi:~$ source ~/.rvm/scripts/rvm
  
Now you should have ruby:
+
Vous devriez maintenant avoir ruby :
 
  pi@raspberrypi:~$ ruby -v
 
  pi@raspberrypi:~$ ruby -v
 
  ruby 1.9.3p194 (2012-04-20 revision 35410) [armv61-linux-eabi]
 
  ruby 1.9.3p194 (2012-04-20 revision 35410) [armv61-linux-eabi]
  
And you should have a rails command:
+
Ainsi qu'une commande rails :
  
 
  pi@raspberrypi:~$ rails -v
 
  pi@raspberrypi:~$ rails -v
Line 44: Line 44:
  
 
== JavaScript ==
 
== JavaScript ==
Rails requires a JavaScript runtime. Any of the following listed [https://github.com/sstephenson/execjs here] will do.
+
Rails nécessite un environnement d'exécution JavaScript. Tous ceux figurant sur la liste suivante [https://github.com/sstephenson/execjs ici] conviendront.
I installed node.js using this [http://blog.tomg.co/post/21322413373/how-to-install-node-js-on-your-raspberry-pi blog] by Tom Gallacher. (Note I had to use sudo when doing make install)
+
J'ai installé node.js grâce à ce [http://blog.tomg.co/post/21322413373/how-to-install-node-js-on-your-raspberry-pi blog] de Tom Gallacher. (Notez que j'ai dû utiliser sudo pour faire make install)
  
 
== Test de l'installation ==
 
== Test de l'installation ==
In order to test the installation, let's create a simple project.
+
Afin de pouvoir tester l'installation, créons un projet simple.
In this example the name for our new project is school.
+
Dans cet exemple, le nom de notre nouveau projet est school.
  
 
  pi@raspberrypi:~$ rails new school
 
  pi@raspberrypi:~$ rails new school
Line 57: Line 57:
 
  pi@raspberrypi:~$ rails s
 
  pi@raspberrypi:~$ rails s
  
All being well you will now have a running server with database back end, which you can point a browser at.
+
Si tout se passe bien, vous disposerez désormais d'un serveur fonctionnel utilisant une base de données, et auquel vous pourrez accéder via un navigateur.
  
Note: You can't use 'class' as a field name, so I chose 'form'.
+
Remarque : Vous ne pouvez pas utiliser 'class' comme nom de champ, c'est pourquoi j'ai choisi 'form'.
  
If you do the above in an X-windows terminal, then point the Raspberry-Pi browser to:
+
Si vous avez fait tout ça dans un terminal X-window, rendez-vous à l'adresse suivante dans le navigateur du Raspberry-Pi :
 
  http://0.0.0.0:3000/pupils
 
  http://0.0.0.0:3000/pupils
You should then be able to Create, Read, Update & Delete (Often called CRUD) pupil records in your database.
+
Vous devriez alors être en mesure de Créer, Lire, Mettre à jour et Supprimer (Create, Read, Update et Delete, souvent désignés par CRUD) les enregistrements pupils de votre base de données.
  
Alternatively, if you have another computer on the same network, you can point its browser at the RPi substituting the 0.0.0.0 in the above address for the real RPi one. If you don't know the address of your RPi, then use the following command in a terminal:
+
Sinon, si vous disposez d'un autre ordinateur sur le même réseau, vous pouvez accéder au RPi depuis un navigateur avec l'adresse ci-dessus mais en remplaçant 0.0.0.0 par son adresse réelle. Si vous ne connaissez pas l'adresse de votre RPi, utilisez la commande suivante dans un terminal :
 
  hostname -I
 
  hostname -I
  
 
== Conclusion ==
 
== Conclusion ==
 
We have a working installation of Ruby on Rails. It is very slow but just about usable. If this is your introduction to Ruby on Rails please don't let the speed put you off. If you follow this fantastic [http://ruby.railstutorial.org/ruby-on-rails-tutorial-book tutorial] it will show you how to deploy to [http://www.heroku.com/ Heroku] (for free), then your website will be as fast as those with proper computers.
 
We have a working installation of Ruby on Rails. It is very slow but just about usable. If this is your introduction to Ruby on Rails please don't let the speed put you off. If you follow this fantastic [http://ruby.railstutorial.org/ruby-on-rails-tutorial-book tutorial] it will show you how to deploy to [http://www.heroku.com/ Heroku] (for free), then your website will be as fast as those with proper computers.

Latest revision as of 08:35, 15 June 2013

Installation de Ruby on Rails sur Raspberry Pi

Voici un guide pour installer Ruby on Rails sur l'ordinateur Raspberry Pi tournant sous Debian "squeeze". Il sera également utile aux personnes qui ne souhaitent installer que Ruby. Tout le monde peut suivre ce guide dans le cas où tout se passe bien, par contre, dans le cas contraire, il est souvent difficile d'identifier le problème. Une connexion internet est requise et il faudra plusieurs heures pour terminer le guide.

Il a été développé et testé avec debian6-19-04-2012. Il n'y a pas assez de place sur une image standard de 2Go. J'ai fait les tests avec une image de 8Go, mais 4Go devraient convenir. Voyez comment étendre l'image ici ou .

L'installation a été réalisée depuis l'invite de commande de base (avant startx). Comme nous utiliserons Ruby Version Manager (RVM), il faudra au préalable installer ses prérequis :

# Installation des éléments prérequis
sudo apt-get install -y git curl zlib1g-dev subversion

Vous pourriez rencontrer l'erreur '404 not found', essayez alors de mettre à jour l'index des paquets APT :

# Mise à jour de l'index des paquets APT
sudo apt-get update

Ce qui précède est suffisant pour commencer, mais nous aurons aussi besoin de ce qui suit plus tard, donc tant que nous y sommes avec apt-get, profitons-en pour les télécharger :

# Dépendances Ruby supplémentaires
sudo apt-get install -y openssl libreadline6-dev git-core zlib1g libssl-dev
sudo apt-get install -y libyaml-dev libsqlite3-dev sqlite3
sudo apt-get install -y libxml2-dev libxslt-dev
sudo apt-get install -y autoconf automake libtool bison

Remarque : Ne pas installer openssl avant RVM vous causera des soucis plus tard !

Nous pouvons à présent utiliser RVM directement depuis github avec :

curl -L get.rvm.io | bash -s stable --rails

Remarque : Avec mon image Debian par défaut et ma disposition clavier, il a été très difficile de trouver le caractère | (tube). Je l'ai obtenu en utilisant AltGr+|

Lors de l'exécution, vous aurez des messages concernant les éléments nécessaires à Ruby. Vous devrez appuyer sur 'q'. Notez que l'ordinateur peut ne pas réagir aussitôt comme s'il semblait 'réfléchir'. Après quelques secondes, le script va télécharger et compiler ruby 1.9 et Rails. Cela peut prendre beaucoup de temps (3 heures) ! Allez dormir et vérifiez le lendemain.

À la fin de l'installation, RVM vous propose d'exécuter un script pour activer Ruby. (je pense n'avoir à le faire qu'une fois ?)

pi@raspberrypi:~$ source ~/.rvm/scripts/rvm

Vous devriez maintenant avoir ruby :

pi@raspberrypi:~$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [armv61-linux-eabi]

Ainsi qu'une commande rails :

pi@raspberrypi:~$ rails -v
Rails 3.2.3

JavaScript

Rails nécessite un environnement d'exécution JavaScript. Tous ceux figurant sur la liste suivante ici conviendront. J'ai installé node.js grâce à ce blog de Tom Gallacher. (Notez que j'ai dû utiliser sudo pour faire make install)

Test de l'installation

Afin de pouvoir tester l'installation, créons un projet simple. Dans cet exemple, le nom de notre nouveau projet est school.

pi@raspberrypi:~$ rails new school
pi@raspberrypi:~$ cd school
pi@raspberrypi:~$ rails g scaffold Pupil name:string form:string
pi@raspberrypi:~$ rake db:migrate
pi@raspberrypi:~$ rails s

Si tout se passe bien, vous disposerez désormais d'un serveur fonctionnel utilisant une base de données, et auquel vous pourrez accéder via un navigateur.

Remarque : Vous ne pouvez pas utiliser 'class' comme nom de champ, c'est pourquoi j'ai choisi 'form'.

Si vous avez fait tout ça dans un terminal X-window, rendez-vous à l'adresse suivante dans le navigateur du Raspberry-Pi :

http://0.0.0.0:3000/pupils

Vous devriez alors être en mesure de Créer, Lire, Mettre à jour et Supprimer (Create, Read, Update et Delete, souvent désignés par CRUD) les enregistrements pupils de votre base de données.

Sinon, si vous disposez d'un autre ordinateur sur le même réseau, vous pouvez accéder au RPi depuis un navigateur avec l'adresse ci-dessus mais en remplaçant 0.0.0.0 par son adresse réelle. Si vous ne connaissez pas l'adresse de votre RPi, utilisez la commande suivante dans un terminal :

hostname -I

Conclusion

We have a working installation of Ruby on Rails. It is very slow but just about usable. If this is your introduction to Ruby on Rails please don't let the speed put you off. If you follow this fantastic tutorial it will show you how to deploy to Heroku (for free), then your website will be as fast as those with proper computers.