# Guide d'Installation Complet - Lucien-sens-bon Ce guide détaille comment installer votre boutique MedusaJS (Backend) + Next.js (Frontend) sur votre serveur "huitral" avec Docker et Apache. ## 1. Pré-requis Assurez-vous d'avoir : - **Docker** et **Docker Compose** installés. - Une base de données **PostgreSQL** accessible (version 12+ recommandée). - **Apache** installé sur la machine hôte. ## 2. Configuration Initiale 1. **Variables d'environnement** : Copiez le fichier d'exemple pour créer votre fichier de configuration réel : ```bash cp env-example .env ``` 2. **Éditez le fichier `.env`** : Modifiez les valeurs, notamment la connexion à la base de données (`DATABASE_URL`). *Note : Si votre Postgres est sur la machine hôte (hors Docker), utilisez `host.docker.internal` comme hôte dans l'URL de connexion, ou l'IP locale du serveur.* ## 3. Installation et Démarrage Lancez les conteneurs (cela va construire les images Backend et Storefront) : ```bash docker-compose up -d --build ``` Cela va démarrer 3 conteneurs : - `medusa-backend` (API) sur le port 9000 - `medusa-storefront` (Site Web) sur le port 8000 - `medusa-redis` (Cache) sur le port 6379 ## 4. Initialisation de la Base de Données Une fois les conteneurs démarrés, vous devez initialiser la base de données Medusa (créer les tables) et créer un utilisateur administrateur. 1. **Lancer les migrations et le "seed" (données de démo)** : ```bash docker exec -it medusa-backend npm run seed ``` *(Si cela échoue, assurez-vous que la base de données est vide ou que la connexion est correcte).* 2. **Créer un utilisateur Admin** : ```bash docker exec -it medusa-backend medusa user -e admin@lucien.com -p supersecret ``` *(Remplacez l'email et le mot de passe par les vôtres).* ## 5. Configuration Apache (Reverse Proxy) Pour rendre le site accessible depuis le web (port 80/443), configurez Apache sur votre machine hôte. 1. **Copiez la configuration** : Utilisez le contenu du fichier `apache-vhost.conf` fourni dans ce projet et ajoutez-le à votre configuration Apache (généralement dans `/etc/apache2/sites-available/lucien.conf`). 2. **Activez les modules Proxy** (si ce n'est pas déjà fait) : ```bash sudo a2enmod proxy sudo a2enmod proxy_http ``` 3. **Activez le site et redémarrez Apache** : ```bash sudo a2ensite lucien.conf sudo service apache2 restart ``` ## 6. Vérification - **Storefront** : Accédez à `http://lucien-sens-bon.com` (ou votre domaine). Vous devriez voir la page d'accueil. - **Admin** : Accédez à `http://api.lucien-sens-bon.com/app` (le dashboard admin est servi par le backend). Connectez-vous avec l'utilisateur créé à l'étape 4. ## 7. Paiements Crypto Pour activer les paiements Crypto, nous vous conseillons d'installer un plugin comme `medusa-payment-coinbase` ou d'utiliser une intégration Stripe Crypto si disponible. L'ajout d'un plugin se fait en 2 étapes : 1. Ajouter le package dans `backend/package.json`. 2. Ajouter la configuration dans `backend/medusa-config.js`. 3. Reconstruire le conteneur (`docker-compose up -d --build`).