#issue-10 #12

Merged
dbroqua merged 4 commits from issues/10 into master 2022-02-21 15:00:55 +01:00
Showing only changes of commit 51a1e85f74 - Show all commits

View file

@ -2,23 +2,31 @@
My Music Library est une application Web (que vous pouvez auto-héberger) et un site Web (sur lequel vous pouvez créer un compte) permettant de gérer votre liste des CDs et Vinyles et de l'utiliser facilement n'importe où.
Le code source est publié sous licence libre GNU GPL-3.0-or-later.
Le code source est publié sous licence libre [GNU GPL-3.0-or-later](LICENSE) et est disponible sur [git.darkou.fr](https://git.darkou.fr/dbroqua/MyMusicLibrary).
## Utilisation
Vous pouvez librement utiliser le service en vous inscrivant sur [https://mml.darkou.fr](https://mml.darkou.fr).
Une fois inscrit vous pourrez saisir vos CDs et Vinyles sur votre espace personnel le tout gratuitement, sans tracker et sans utilisation de vos données personnelles !
## Auto hébergement
Vous pouvez, si vous le souhaitez héberger l'application sur votre propre serveur.
### Prérequis
Il existe 2 méthodes d'installation, soit via docker soit en mode standalone.
Pour la méthode docker il vous faut simplement Docker sur votre serveur.
En standalone il vous faudra :
En mode standalone il vous faudra :
- NodeJS 16.x
- Yarn
- MongoDB
Quelque que soit la méthode la première étape est de cloner le projet :
Quelque que soit la méthode, la première étape est de cloner le projet :
```bash
git clone https://git.darkou.fr/dbroqua/MyMusicLibrary.git
@ -34,11 +42,11 @@ Une fois le projet cloné rendez-vous dans son dossier,
cd ./MyMusicLibrary
```
puis créez le fichier `.env` qui contiendra les variables d'environnement nécessaire au bon fonctionnement du projet (voir à la fin pour la liste des variables).
puis créez le fichier `.env` qui contiendra les variables d'environnement nécessaire au bon fonctionnement du projet ([voir à la fin pour la liste des variables](#env-file)).
Une fois votre fichier d'environnement créé vous devez copier le bon fichier `docker-compose.yml.{dev,prod}` en `docker-compose.yml` en fonction de vos choix.
La version `.dev` redémarrera à chaque changement d'un fichier .js alors que la version `prod` ne redémarrera pas automatiquement si vous éditez un fichier.
La version `.dev` redémarrera à chaque changement d'un fichier `.js` alors que la version `prod` ne redémarrera pas automatiquement si vous éditez un fichier.
Vous pouvez maintenant démarrer votre environnement Docker :
@ -64,21 +72,27 @@ export DISCOGS_TOKEN=***
yarn watch
# Prod
yarn run:all
```
Rendez le script exécutable :
```bash
chmod ./run.sh
chmod +x ./run.sh
```
Puis exécutéz le :
```bash
./run.sh
```
C'est terminé !
Le site est accessible sur [http://localhost:3001](http://localhost:3001).
:information_source: Information : Vous pouvez, et vous dreviez, également regarder du côté de `systemd`, `pm2` ou encore `supervisor` pour que le service démarre en même temps que votre serveur.
### Aller plus loin
My Music Library est maintenant accessible en http et sur un port custom (3001 par défaut) de votre serveur.
My Music Library est maintenant accessible en http sur un port custom (3001 par défaut) de votre serveur.
Nous allons voir comment rendre accessible en https avec un certificat [Let's Encrypt](https://letsencrypt.org/fr/). Pour le reverse proxy nous utiliserons [NGINX](https://nginx.org/).
@ -153,7 +167,7 @@ server {
Une fois le vhost activé (lien symbolique dans le dossier site-enable) et nginx rechargé votre site sera alors accessible en https.
### Fichier .env
### Fichier .env {#env-file}
Voici la liste des variables configurables :