mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-11 17:29:37 +02:00
Fix: Configuration complète du build React/TypeScript
Configuration de l'application pour le build et déploiement React: Package.json: - Ajout de toutes les dépendances React/TypeScript/Vite - Ajout des dépendances shadcn/ui et Radix UI - Ajout des scripts de build (dev, build, preview) - Dépendances ajoutées: react, react-dom, @tanstack/react-query, react-router-dom, tailwindcss, vite, typescript, lucide-react, sonner, next-themes, et toutes les primitives @radix-ui Vite.config.ts: - Configuration du build pour générer dans le dossier dist/ - Configuration correcte de l'alias @ pour les imports Server.js: - Modification pour servir les fichiers statiques depuis dist/ - Maintien du dossier /uploads depuis public/uploads - SPA fallback pour servir dist/index.html Dockerfile: - Multi-stage build pour optimiser la taille - Stage 1 (builder): Installation des dépendances et build React - Stage 2 (production): Copie du build + dépendances serveur uniquement - Réduction significative de la taille de l'image finale .dockerignore: - Nouveau fichier pour exclure les fichiers inutiles du contexte Docker - Exclusion de node_modules, dist, .git, logs, etc. L'application est maintenant prête pour le déploiement avec Docker.
This commit is contained in:
5 files changed
+169
-10
No files matched your search
@@ -65,8 +65,10 @@ const authLimiter = rateLimit({
|
||||
app.use('/api/auth', authLimiter);
|
||||
|
||||
// Servir les fichiers statiques
|
||||
app.use(express.static(path.join(__dirname, 'public')));
|
||||
// Servir les uploads depuis public/uploads
|
||||
app.use('/uploads', express.static(uploadsDir));
|
||||
// Servir l'application React depuis dist/
|
||||
app.use(express.static(path.join(__dirname, 'dist')));
|
||||
|
||||
// Healthcheck endpoint pour Docker
|
||||
app.get('/health', (req, res) => {
|
||||
@@ -94,7 +96,7 @@ app.get('*', (req, res) => {
|
||||
if (req.path.startsWith('/api/')) {
|
||||
return res.status(404).json({ error: 'Endpoint non trouvé' });
|
||||
}
|
||||
res.sendFile(path.join(__dirname, 'public', 'index.html'));
|
||||
res.sendFile(path.join(__dirname, 'dist', 'index.html'));
|
||||
});
|
||||
|
||||
// Gestionnaire d'erreurs global
|
||||
|
||||
Reference in new issue
Block a user