Skip to content

Commit

Permalink
Mise à jour de la documentation d'installation (#1033)
Browse files Browse the repository at this point in the history
* Update of install doc
* added phpmyadmin in docker-compose.yml
* removed most doc related to install without docker
* separated install doc as local and server
* fixed errors

* removed travis

* fix format
  • Loading branch information
samueleyre authored Oct 17, 2023
1 parent 511bfe0 commit 653e237
Show file tree
Hide file tree
Showing 7 changed files with 69 additions and 115 deletions.
41 changes: 0 additions & 41 deletions .travis.yml

This file was deleted.

3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ _cliquez pour voir l'image en grand_

## Installation

* [Guide d'installation](doc/install.md)
* [Guide d'installation local](doc/install.local.md)
* [Guide d'installation sur serveur](doc/install.serveur.md)
* [Guide de mise à jour](doc/maj.md)
* [Guide de mise en route](doc/start.md)

Expand Down
30 changes: 6 additions & 24 deletions doc/dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,16 @@ http://yuml.me/edit/66888c7d

## mailcatcher

Pour récupérer les mails envoyés (mode DEV)
Permet de visualiser les mails envoyés en local.

* [mailcatcher.me](https://mailcatcher.me/)
[http://localhost:1080](http://localhost:1080/)

```shell
sudo apt-get install ruby-dev libsqlite3-dev
gem install mailcatcher
mailcatcher
```
* La documentation : [mailcatcher.me](https://mailcatcher.me/)

Si la dernière commande ne marche pas, vérifiez que vous avez le dossier des gem Ruby dans votre `PATH`. Plus de détails [ici](https://guides.rubygems.org/faqs/#user-install).

## Guides lines

* [GitFlow](https://www.grafikart.fr/formations/git/git-flow)
* [GitFlow](https://grafikart.fr/tutoriels/git-flow-742)

## Symfony

Expand All @@ -33,11 +28,12 @@ Si la dernière commande ne marche pas, vérifiez que vous avez le dossier des g

## Docker

Un _docker-compose.yml_ existe pour permettre le développement sous Docker. Suivez le [guide d'installation](install.md).
Un _docker-compose.yml_ existe pour permettre le développement sous Docker. Suivez le [guide d'installation](install.local.md).

N'oubliez pas de définir la variable d'environnement `DEV_MODE_ENABLED` dans le container qui exécute le code de l'application.

## Nix

Vous pouvez obtenir toutes les dépendances du projet en utilisant [Nix](https://nixos.org/download.html). Une fois installé lancez `nix develop --impure` et tous les outils nécessaires sont dans votre `PATH` à la bonne version, comme déclaré dans [flake.nix](../flake.nix).
Cela peut se faire automatiquement quand vous `cd` dans le répertoire si vous avez installé [direnv](https://direnv.net/).

Expand All @@ -46,20 +42,6 @@ Pour lancer l'application, utilisez `php bin/console server:run '*:8000'`

## Tests

### Sans Docker

```shell
// créer la base de donnée de test + initialiser avec le schema
php bin/console --env=test doctrine:database:create
php bin/console --env=test doctrine:schema:create
// lancer les tests
php ./vendor/bin/phpunit
```

### Avec Docker

Prérequis : avoir le docker-compose qui tourne en local.

```shell
// créer la base de donnée de test + initialiser avec le schema
docker exec -i php php bin/console --env=test doctrine:database:create
Expand Down
46 changes: 46 additions & 0 deletions doc/install.local.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Installation locale

## Utilisation via docker-compose

### Prérequis

* docker
* docker-compose

### Lancer l'instance

Lancer le docker-compose pour deployer un conteneur de base de données (mariadb) et un conteneur symfony

```shell
docker-compose up
```

Ajouter `127.0.0.1 membres.yourcoop.local` au fichier _/etc/hosts_.

Note: le premier lancement du docker-compose peut être long (~30s) du fait de plusieurs étapes : initialisation de la db, creation du fichier parameters.yml, ... La ligne `PHP 7.4.27 Development Server (http://0.0.0.0:8000) started` indique que le deploiement de l'espace membre est fonctionnel. La base de données est montée dans docker avec un volume, elle est donc persistente. Le fichier _parameters.yml_ doit être modifié suivant la configuration voulue.

Le site est en ligne à l'adresse [http://membres.yourcoop.local:8000](http://membres.yourcoop.local:8000).

Pour créer l'utilisateur super admin, visiter :
[http://membres.yourcoop.local:8000/user/install_admin](http://membres.yourcoop.local:8000/user/install_admin).

Vous pouvez vous connecter avec l'utilisateur super admin :
**admin** / **password**.



### Importer un dump de la base de données

#### Supprimer la base de données existante et la recréer
```shell
docker compose exec database mariadb -uroot -psecret -e 'DROP DATABASE IF EXISTS symfony; CREATE DATABASE IF NOT EXISTS symfony;'
```

#### Importer le dump
```shell
docker compose exec database mariadb -uroot -psecret symfony < espace_membres.sql
```

Vous pouvez aussi le faire directement sur phpmyadmin : [http://localhost:8080](http://localhost:8080)


49 changes: 1 addition & 48 deletions doc/install.md → doc/install.serveur.md
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,51 +1,4 @@
# Installation

## Utilisation via docker-compose

### Prérequis

* docker
* docker-compose

### Lancer l'instance

Lancer le docker-compose pour deployer un conteneur de base de données (mariadb) et un conteneur symfony

```shell
docker-compose up
```

Ajouter `127.0.0.1 membres.yourcoop.local` au fichier _/etc/hosts_.

Note: le premier lancement du docker-compose peut être long (~30s) du fait de plusieurs étapes : initialisation de la db, creation du fichier parameters.yml, ... La ligne `PHP 7.4.27 Development Server (http://0.0.0.0:8000) started` indique que le deploiement de l'espace membre est fonctionnel. La base de données est montée dans docker avec un volume, elle est donc persistente. Le fichier _parameters.yml_ doit être modifié suivant la configuration voulue.

### Charger la donnée

#### Charger la base de données à partir d'un dump

Supprimer une base de données existante (si elle existe)

```shell
docker exec -it database mysql -uroot -psecret -e 'DROP DATABASE IF EXISTS symfony;'
```

Recréer la base de données

```shell
docker exec -it database mysql -uroot -psecret -e 'CREATE DATABASE IF NOT EXISTS symfony;'
```

Charger la base données depuis une sauvegarde

```shell
docker exec -i database mysql -uroot -psecret symfony < espace_membres.sql
```

#### Créer la donnée en local

Pour créer l'utilisateur super admin (valeurs par défaut : admin:password), visiter [http://membres.yourcoop.local:8000/user/install_admin](http://membres.yourcoop.local:8000/user/install_admin).

## Installation sur un serveur
# Installation sur un serveur

### Prérequis

Expand Down
2 changes: 1 addition & 1 deletion doc/start.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,4 @@ Dans l'admin panel :
- Quand tous les créneaux-types et postes d'une journée sont créés, il est possible de les *dupliquer* sur une autre journée avec la fonction idoine
- Une fois la semaine type créée, il faut *générer les créneaux* sur une période de temps donnée

La génération de créneaux peut être automatisée via une [tâche cron](install.md#crontab).
La génération de créneaux peut être automatisée via une [tâche cron](install.serveur.md#crontab).
13 changes: 13 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,16 @@ services:
ports:
- "1080:1080"
- "1025:1025"

phpmyadmin:
container_name: phpmyadmin
image: phpmyadmin/phpmyadmin
environment:
PMA_HOST: database
PMA_PORT: 3306
PMA_USER: root
PMA_PASSWORD: secret
ports:
- "8080:80"
depends_on:
- database

0 comments on commit 653e237

Please sign in to comment.