Bon courage!
commit
5c021ba4e0
|
|
@ -0,0 +1,29 @@
|
||||||
|
# SevAlternance
|
||||||
|
|
||||||
|
## Dépendances
|
||||||
|
|
||||||
|
L'application nécessite l'installation de nodeJS et npm
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Dans le fichiers sevalternance.js, editez les variables suivantes:
|
||||||
|
|
||||||
|
host: 'IP du serveur de base de donnée',
|
||||||
|
user: 'Utilsateur de la base de donnée',
|
||||||
|
password: 'Mot de passe de l'utlisateur',
|
||||||
|
database: 'Nom de la base de donnée',
|
||||||
|
|
||||||
|
Vérifiez également le chemin et nom pour votre couple certificat/clé:
|
||||||
|
|
||||||
|
key: fs.readFileSync('/etc/ssl/private/wildcard.key'),
|
||||||
|
cert: fs.readFileSync('/etc/ssl/certs/wildcard.pem'),
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Exécutez le script install.sh
|
||||||
|
|
||||||
|
## Utilisation
|
||||||
|
|
||||||
|
Démarrez le service sevalternance avec systemd.
|
||||||
|
Vérifiez son statut avec systemd.
|
||||||
|
Dans un navigateur, ce rendre sur l'url [https://votre_serveur](https://votre_serveur)
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ ! -d /opt/sevalternance ]] && mkdir /opt/sevalternance
|
||||||
|
cp -r ./sevalternance.js /opt/sevalternance/
|
||||||
|
cp -r ./sevalternance.service /etc/systemd/system/
|
||||||
|
cd /opt/sevalternance
|
||||||
|
npm install express mariadb > /dev/null
|
||||||
|
systemctl daemon-reload
|
||||||
|
|
@ -0,0 +1,47 @@
|
||||||
|
const https = require('https');
|
||||||
|
const fs = require('fs');
|
||||||
|
const express = require('express');
|
||||||
|
const mariadb = require('mariadb');
|
||||||
|
|
||||||
|
const app = express();
|
||||||
|
|
||||||
|
// Serve the "SevAlternance - Site en construction" message
|
||||||
|
app.get('/', (req, res) => {
|
||||||
|
res.send('SevAlternance - Site en construction');
|
||||||
|
});
|
||||||
|
|
||||||
|
// Check the connection to the MariaDB database using custom SSL options
|
||||||
|
async function checkDatabaseConnection() {
|
||||||
|
const pool = mariadb.createPool({
|
||||||
|
host: 'ip_du_serveur_de_bdd',
|
||||||
|
user: 'sevalternance',
|
||||||
|
password: 'MonSuperMotdePasse',
|
||||||
|
database: 'sevalternance',
|
||||||
|
port: '3306',
|
||||||
|
connectionLimit: 5,
|
||||||
|
});
|
||||||
|
|
||||||
|
let conn;
|
||||||
|
try {
|
||||||
|
conn = await pool.getConnection();
|
||||||
|
console.log('Connected to the database!');
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Failed to connect to the database:', err);
|
||||||
|
} finally {
|
||||||
|
if (conn) conn.release();
|
||||||
|
if (pool) pool.end();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start the HTTPS server
|
||||||
|
const options = {
|
||||||
|
key: fs.readFileSync('/etc/ssl/private/wildcard.key'),
|
||||||
|
cert: fs.readFileSync('/etc/ssl/certs/wildcard.pem'),
|
||||||
|
};
|
||||||
|
|
||||||
|
https.createServer(options, app).listen(443, () => {
|
||||||
|
console.log('Server started on port 443');
|
||||||
|
});
|
||||||
|
|
||||||
|
// Check the database connection after starting the server
|
||||||
|
checkDatabaseConnection().catch(err => console.error('Error while checking database connection:', err));
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
[Unit]
|
||||||
|
Description=SevAlternance
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Environment=NODE_ENV=production
|
||||||
|
ExecStart=/usr/bin/node /opt/sevalternance/sevalternance.js
|
||||||
|
WorkingDirectory=/opt/sevalternance
|
||||||
|
Restart=always
|
||||||
|
User=root
|
||||||
|
Group=root
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
Loading…
Reference in New Issue