Merge branch 'master' into 'master'

Master

See merge request !15
This commit is contained in:
echarp 2017-04-02 23:45:20 +02:00
commit 22d1f29f45
1 changed files with 40 additions and 5 deletions

View File

@ -47,18 +47,41 @@ Par exemple:
}}}
Dans le cas d'une installation en mode production, on utilisera plutôt
`--without test`.
`--without test developement`.
=== Base de données
La base de données peut être "sqlite3", "postgresql" ou "mysql". Par défaut
La base de données peut être "sqlite3", "postgresql" ou "mysql2". Par défaut
sqlite3 est configurée, mais vous pouvez la modifier dans le fichier
`config/database.yml`.
/!\ En pratique, en 2017-03, PostgreSQL server ne parvenait pas à interprêter
le fichier schema.rb généré automatiquement depuis une base fonctionnelle.
==== Dans le cas d'une installation MySQL
Il convient d'installer d'abord MySQL server sur sa machine :
{{{
~ # apt install mysql-server
}}}
Il faut alors choisir un mot de passe pour l'utilisateur root, avec lequel on
créera une nouvelle base pour le projet, ainsi qu'un utilisateur ayant les
droits sur cette base :
{{{
~ # mysql -u root -p
mysql> CREATE DATABASE '<nouvelle_instance>';
mysql> CREATE USER '<nouveau_user>' IDENTIFIED BY '<mot-de-passe>';
mysql> GRANT ALL ON <nouvelle_instance>.* TO '<nouveau_user>'@'localhost';
}}}
---
Mettez en place le schéma comme ceci:
{{{
~ $ bundle exec rake db:setup
~ $ bundle exec rake db:setup [RAILS_ENV="production"]
}}}
@ -79,10 +102,22 @@ passe étant "password".
==== En production
/!\ section en travaux, ça commence par :
{{{
~ # apt install libapache2-mod-passenger
~ # vi /etc/apache2/sites-available/nouvelle_instance.conf
<VirtualHost *:80>
ServerName DOMAINE.NAME
DocumentRoot /srv/<nouvelle_instance>/public
SetEnv DATABASE_URL mysql2://<nouveau_user>@localhost/<nouvelle_instance>
SetEnv SECRET_KEY_BASE <SECRET>
SetEnv RAILS_ENV production
RailsEnv production
<Directory /srv/<nouvelle_instance>/public>
Require all granted
</Directory>
</VirtualHost>
~ # a2ensite /etc/apache2/sites-available/nouvelle_instance.conf
~ # /etc/init.d/apache2 reload
}}}