Skip to content

Déploiement manuel

Si vous préférez ne pas utiliser Docker, vous pouvez exécuter pipel8ne directement sur un hôte avec Node.js et une instance MongoDB.

Prérequis

  • Node.js 18+
  • MongoDB 6+
  • Un reverse proxy (Nginx, Caddy) pour HTTPS en production

1. Cloner et builder le frontend

bash
git clone https://github.com/ogb4n/pipel8ne.git
cd pipel8ne

cd webapp && npm install && npm run build && cd ..

2. Builder le backend

bash
cd backend && npm install && npm run build && cd ..

3. Configurer les variables d'environnement

Créez backend/.env :

env
DATABASE_URL=mongodb://user:password@localhost:27017/pipel8ne?authSource=admin
JWT_SECRET=<votre secret>
SECRETS_ENCRYPTION_KEY=<votre clé 32 octets>
NODE_ENV=production
PORT=3000

4. Démarrer le backend avec PM2

bash
npm install -g pm2

pm2 start backend/dist/index.js \
  --name pipel8ne \
  --env-file backend/.env

pm2 save
pm2 startup

5. Reverse proxy Nginx

nginx
server {
    listen 443 ssl;
    server_name votre-domaine.com;

    ssl_certificate     /etc/letsencrypt/live/votre-domaine.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/votre-domaine.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Obtenez un certificat TLS gratuit avec Certbot :

bash
certbot --nginx -d votre-domaine.com

Released under the MIT License.