Projet

Général

Profil

Installation pour le développeur » Historique » Version 5

Jonathan Schaeffer, 07/07/2017 15:12

1 1 Jonathan Schaeffer
h1. Installation pour le développeur
2 3 Brendan Coatanéa
3 2 Brendan Coatanéa
h2. Installation RVM
4
5
Pour installer la dernière version stable de RVM utiliser la commande suivante : 
6
7 4 Jonathan Schaeffer
<pre>
8
\curl -sSL https://get.rvm.io | bash -s stable
9
</pre>
10 2 Brendan Coatanéa
11
12
h2. Installation Ruby
13
14
15
h3. Installation d'une version de Ruby
16 1 Jonathan Schaeffer
17
La commande pour installer la version *** de Ruby à l'aide de RVM :
18 4 Jonathan Schaeffer
<pre>
19
rvm install ***
20
</pre>
21 2 Brendan Coatanéa
Par exemple : 
22 4 Jonathan Schaeffer
<pre>
23
rvm install-2.3.0
24 2 Brendan Coatanéa
25 4 Jonathan Schaeffer
</pre>
26 2 Brendan Coatanéa
h3. Choisir et afficher une version
27 1 Jonathan Schaeffer
28 2 Brendan Coatanéa
29
h4. Choisir la version a utiliser
30 1 Jonathan Schaeffer
31 4 Jonathan Schaeffer
<pre>rvm ruby -v 2.0</pre>
32 2 Brendan Coatanéa
33 1 Jonathan Schaeffer
h4. Afficher la version utilisé actuellement
34 2 Brendan Coatanéa
35 4 Jonathan Schaeffer
<pre>ruby -v</pre>
36 2 Brendan Coatanéa
37
h4. Lister toutes les versions installées sur le poste
38
39 4 Jonathan Schaeffer
<pre>rvm list</pre>
40 1 Jonathan Schaeffer
41 2 Brendan Coatanéa
42
h2. Création et configuration du Gemset
43
44 1 Jonathan Schaeffer
45 2 Brendan Coatanéa
h3. Création
46
47 4 Jonathan Schaeffer
<pre>rvm gemset create gemset_name</pre>
48 2 Brendan Coatanéa
49
50
h3. Liaison de la version de Ruby au gemset
51
52 4 Jonathan Schaeffer
<pre>rvm ruby_version@gemset_name  # specify Ruby version and our new gemset</pre>
53 2 Brendan Coatanéa
54
55
56 1 Jonathan Schaeffer
h2. Clonage du projet heuliad
57 2 Brendan Coatanéa
58
59
h3. Prérequis
60 1 Jonathan Schaeffer
61
Configurer git pour l'accès au serveur gitiuem + "Tutoriel git":https://www-iuem.univ-brest.fr/feiri/soutiens-scientifique/calcul-scientifique/wiki/utilisation-de-git
62 2 Brendan Coatanéa
63
h3. Clonage
64
65 5 Jonathan Schaeffer
Si vous avez un compte sur le dépôt git de l'IUEM (accès en écriture) :
66 4 Jonathan Schaeffer
<pre>git clone gitiuem:heuliad</pre>
67 5 Jonathan Schaeffer
68
Sinon :
69
70
<pre>git clone ssh://git@tucuxi.univ-brest.fr/heuliad</pre>
71 2 Brendan Coatanéa
72 1 Jonathan Schaeffer
h3. Installer l'environnement Ruby et ses gems
73
74 2 Brendan Coatanéa
Si bundler n'est pas installé
75 4 Jonathan Schaeffer
<pre>gem install bundler</pre>
76 2 Brendan Coatanéa
Installation des gems listées dans le Gemfile
77 4 Jonathan Schaeffer
<pre>bundle install</pre>
78 2 Brendan Coatanéa
79
80 1 Jonathan Schaeffer
h2. Installer la base de données
81
82
83
h3. Installation postgis et postgresql
84 2 Brendan Coatanéa
85 4 Jonathan Schaeffer
<pre>apt-get install postgis</pre>
86
<pre>apt-get install posgresql</pre>
87 1 Jonathan Schaeffer
88
89
h3. Création compte
90
91 2 Brendan Coatanéa
Une fois posgresql installé, un compte administrateur "postgres" est défini par défaut, 
92 1 Jonathan Schaeffer
il faut donc changer d'utilisateur pour gérer postgresql et se créer son propre compte.
93 2 Brendan Coatanéa
Commande pour changer d'utilisateur :
94 4 Jonathan Schaeffer
<pre>sudo -i -u postgres</pre>
95 2 Brendan Coatanéa
Charger la console postgres :
96 4 Jonathan Schaeffer
<pre>psql</pre>
97 2 Brendan Coatanéa
Commande pour créer un nouvel utilisateur (en mode postgres) :
98 4 Jonathan Schaeffer
<pre>CREATE USER <nom_utilisateur>;</pre>
99 2 Brendan Coatanéa
Donner le droit de créer une base de donnée à celui ci :
100 4 Jonathan Schaeffer
<pre>ALTER ROLE <nom_utilisateur> WITH CREATEDB;</pre>
101 1 Jonathan Schaeffer
102
h3. Création base de données personelle (utiliser le nom nom_utilisateur pour la base permet une connexion automatique)
103
104 4 Jonathan Schaeffer
<pre>CREATE DATABASE <nom_base_de_donnee> OWNER <nom_utilisateur>;</pre>
105 2 Brendan Coatanéa
Sécuriser l'accès à la base par un mot de passe :
106 4 Jonathan Schaeffer
<pre>ALTER USER <nom_utilisateur> WITH ENCRYPTED PASSWORD 'mon_mot_de_passe';</pre>
107 2 Brendan Coatanéa
Quitter le mode postgres :
108 4 Jonathan Schaeffer
<pre>\q</pre>
109 2 Brendan Coatanéa
Quitter l'utilisateur "postgres" :
110 4 Jonathan Schaeffer
<pre>exit</pre>
111 2 Brendan Coatanéa
Ouvrir la base de donnée :
112 4 Jonathan Schaeffer
<pre>psql -U <nom_utilisateur> -h localhost -W</pre>
113 2 Brendan Coatanéa
* entrer son mot de passe
114
Créer base de donnée pour heuliad
115 4 Jonathan Schaeffer
<pre>CREATE DATABASE heuliad;</pre>
116 2 Brendan Coatanéa
117
118
119
h2. /config/database.yml
120
121 1 Jonathan Schaeffer
122 2 Brendan Coatanéa
h3. Configurer l'environnement
123 1 Jonathan Schaeffer
124
Dans le dossier config se trouve un fichier exemple de configuration de base de donnée nommé "database.yml.example"
125 4 Jonathan Schaeffer
Vous pouvez donc copier ce texte et changer le nom du fichier en database.yml (il faut remplacer les champs en fonction du compte postgres) 
126
127
<pre>
128
default: &default
129 1 Jonathan Schaeffer
  adapter: sqlite3
130
  pool: 5
131 2 Brendan Coatanéa
  timeout: 5000
132
133
development: &local
134
  adapter: postgis
135
  host: localhost
136
  port: 5432
137
  password: 'mon_mot_de_passe'
138
  username: <nom_utilisateur>
139
  database: heuliad
140
#  schema_search_path: "public,postgis"
141
  script_dir: /usr/share/postgresql/9.1/contrib/postgis-1.5
142
  
143
test:
144
  <<: *local
145
  database: heuliad_test
146 4 Jonathan Schaeffer
</pre>
147 2 Brendan Coatanéa
148
h2. Console et Serveur
149
150
151
h3. Mise en place de la base de données
152
153
Premièrement il est nécessaire d'installer le package "postgresql-9.3-postgis-scripts" afin que tout le code soit reconnu
154 4 Jonathan Schaeffer
<pre>apt install postgresql-9.3-postgis-scripts</pre>
155 2 Brendan Coatanéa
Ensuite on peut effectuer les migrations, permettant d'initialiser la base de donnée en fonction des modèles Ruby
156 4 Jonathan Schaeffer
<pre>rake db:migrate</pre>
157 2 Brendan Coatanéa
158
h3. Connexion à la base de données
159
160
Maintenant il est possible de se connecter à la base
161 4 Jonathan Schaeffer
<pre>rails db</pre>
162 2 Brendan Coatanéa
ou de lancer la console pour effectuer des tests
163 4 Jonathan Schaeffer
<pre>rails c</pre>
164 2 Brendan Coatanéa
ou encore de lancer le serveur
165 4 Jonathan Schaeffer
<pre>rails s</pre>