diff --git a/README.md b/README.md
index ace3c9d..c787da0 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,12 @@
-# My Music Library
+# MusicTopus
-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ù.
+MusicTopus 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](LICENSE) et est disponible sur [git.darkou.fr](https://git.darkou.fr/dbroqua/MyMusicLibrary).
+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/MusicTopus).
## Utilisation
-Vous pouvez librement utiliser le service en vous inscrivant sur [https://mml.darkou.fr](https://mml.darkou.fr).
+Vous pouvez librement utiliser le service en vous inscrivant sur [https://www.musictopus.fr/](https://www.musictopus.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 !
@@ -29,7 +29,7 @@ En mode standalone il vous faudra :
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
+git clone https://git.darkou.fr/dbroqua/MusicTopus.git
```
### Installation
@@ -39,7 +39,7 @@ git clone https://git.darkou.fr/dbroqua/MyMusicLibrary.git
Une fois le projet cloné rendez-vous dans son dossier,
```bash
-cd ./MyMusicLibrary
+cd ./MusicTopus
```
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)).
@@ -92,7 +92,7 @@ Le site est accessible sur [http://localhost:3001](http://localhost:3001).
### Aller plus loin
-My Music Library est maintenant accessible en http sur un port custom (3001 par défaut) de votre serveur.
+MusicTopus 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/).
@@ -101,26 +101,26 @@ Pour la suite je pars du principe que vous êtes un minimum familier avec Nginx
#### Obtenir le certificat
```bash
-certbot certonly --nginx -d mml.darkou.fr
+certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email votre@email.tld -d musictopus.fr
```
#### Créer le vhost
-Pour ma part j'aime bien créer un fichier dans `/etc/nginx/sites-available` qui comporte le nom du site, ici par exemple `mml.darkou.fr`.
+Pour ma part j'aime bien créer un fichier dans `/etc/nginx/sites-available` qui comporte le nom du site, ici par exemple `musictopus.fr`.
En voici son contenu :
```
-upstream mml-env {
+upstream musictopus-proxy {
server 0.0.0.0:3001;
}
server {
listen 80;
listen [::]:80;
- server_name mml.darkou.fr;
+ server_name musictopus.fr;
- if ($host = mml.darkou.fr) {
+ if ($host = musictopus.fr) {
return 301 https://$host$request_uri;
}
root /dev/null;
@@ -132,11 +132,11 @@ server {
server {
listen 443 ssl http2;
- server_name mml.darkou.fr;
- root /dev/null;
+ server_name musictopus.fr;
+ root /srv/MusicTopus/public;
- access_log /var/log/nginx/mml.darkou.fr-access.log;
- error_log /var/log/nginx/mml.darkou.fr-error.log;
+ access_log /var/log/nginx/musictopus.fr-access.log;
+ error_log /var/log/nginx/musictopus.fr-error.log;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
@@ -144,6 +144,10 @@ server {
client_max_body_size 1m;
location / {
+ try_files $uri @proxy;
+ }
+
+ location @proxy {
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_redirect off;
@@ -155,13 +159,24 @@ server {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Frame-Options SAMEORIGIN;
- proxy_pass http://mml-env;
+ proxy_pass http://musictopus-proxy;
+
+ tcp_nodelay on;
}
- include conf/ssl.conf;
+ error_page 500 501 502 503 504 /500.html;
- ssl_certificate /etc/letsencrypt/live/mml.darkou.fr/fullchain.pem; # managed by Certbot
- ssl_certificate_key /etc/letsencrypt/live/mml.darkou.fr/privkey.pem; # managed by Certbot
+ ssl_certificate /etc/letsencrypt/live/musictopus.fr/fullchain.pem;
+ ssl_certificate_key /etc/letsencrypt/live/musictopus.fr/privkey.pem;
+
+ add_header Strict-Transport-Security "max-age=31536000" always;
+
+ include /etc/letsencrypt/options-ssl-nginx.conf;
+ ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
+
+ ssl_trusted_certificate /etc/letsencrypt/live/musictopus.fr/chain.pem;
+ ssl_stapling on;
+ ssl_stapling_verify on;
}
```
@@ -174,7 +189,7 @@ Voici la liste des variables configurables :
```
NODE_ENV # Environnement dans lequel exécuter le projet (development ou production)
PORT # Port sur lequel éxécuter le serveur (par défaut 3001)
-MONGODB_URI # Url du serveur mongo (par défaut mongodb://mymusiclibrary-db/mymusiclibrary)
+MONGODB_URI # Url du serveur mongo (par défaut mongodb://musictopus-db/musictopus)
SECRET # Hash utilisé pour pour sauvegardé les dessions (par défaut waemaeMe5ahc6ce1chaeKohKa6Io8Eik)
DISCOGS_TOKEN # Token Discogs (vous devez créer un compte sur discogs afin d'en obtenir un gratuitement)
FORMSPREE_ID # Id du formulaire formspree pour la page "nous-contacter"
@@ -183,4 +198,4 @@ FORMSPREE_ID # Id du formulaire formspree pour la page "nous-contacter"
## Contributeurs
- Damien Broqua (développeur principal du projet)
-- Brunus (fournisseur d'idées :wink: )
\ No newline at end of file
+- Brunus (Logo et fournisseur d'idées :wink: )
\ No newline at end of file
diff --git a/docker-compose.yml.dev b/docker-compose.yml.dev
index c58795e..b14864f 100644
--- a/docker-compose.yml.dev
+++ b/docker-compose.yml.dev
@@ -1,8 +1,8 @@
version: "2.4"
services:
- mymusiclibrary-www:
- container_name: mymusiclibrary-www
+ musictopus-www:
+ container_name: musictopus-www
image: "node:16"
restart: always
user: "node"
@@ -17,7 +17,7 @@ services:
ports:
- 3001:3001
depends_on:
- - mymusiclibrary-db
+ - musictopus-db
environment:
NODE_ENV: ${NODE_ENV}
PORT: ${PORT}
@@ -26,18 +26,18 @@ services:
DISCOGS_TOKEN: ${DISCOGS_TOKEN}
FORMSPREE_ID: ${FORMSPREE_ID}
networks:
- - mymusiclibrary
- mymusiclibrary-db:
- container_name: mymusiclibrary-db
- image: mongo:latest
+ - musictopus
+ musictopus-db:
+ container_name: musictopus-db
+ image: mongo:4.4
restart: always
ports:
- 27617:27017
networks:
- - mymusiclibrary
+ - musictopus
volumes:
- ./dump:/dump
networks:
- mymusiclibrary:
+ musictopus:
driver: bridge
diff --git a/docker-compose.yml.prod b/docker-compose.yml.prod
index f5041f7..d314748 100644
--- a/docker-compose.yml.prod
+++ b/docker-compose.yml.prod
@@ -1,8 +1,8 @@
version: "2.4"
services:
- mymusiclibrary-www:
- container_name: mymusiclibrary-www
+ musictopus-www:
+ container_name: musictopus-www
image: "node:16"
restart: always
user: "node"
@@ -17,7 +17,7 @@ services:
ports:
- 3001:3001
depends_on:
- - mymusiclibrary-db
+ - musictopus-db
environment:
NODE_ENV: ${NODE_ENV}
PORT: ${PORT}
@@ -26,18 +26,18 @@ services:
DISCOGS_TOKEN: ${DISCOGS_TOKEN}
FORMSPREE_ID: ${FORMSPREE_ID}
networks:
- - mymusiclibrary
- mymusiclibrary-db:
- container_name: mymusiclibrary-db
- image: mongo:latest
+ - musictopus
+ musictopus-db:
+ container_name: musictopus-db
+ image: mongo:4.4
restart: always
ports:
- 27617:27017
networks:
- - mymusiclibrary
+ - musictopus
volumes:
- ./dump:/dump
networks:
- mymusiclibrary:
+ musictopus:
driver: bridge
diff --git a/package.json b/package.json
index 7c38831..77f10de 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,5 @@
{
- "name": "mymusiclibrary",
+ "name": "musictopus",
"version": "1.0.0",
"description": "Simple application to manage your CD/Vinyl collection",
"scripts": {
@@ -18,7 +18,7 @@
},
"repository": {
"type": "git",
- "url": "git@git.darkou.fr:dbroqua/MyMusicLibrary.git"
+ "url": "git@git.darkou.fr:dbroqua/MusicTopus.git"
},
"author": {
"name": "Damien Broqua",
diff --git a/public/500.html b/public/500.html
index 0b4b0d4..072dfd0 100644
--- a/public/500.html
+++ b/public/500.html
@@ -11,7 +11,7 @@
-
+
@@ -21,8 +21,8 @@