summaryrefslogtreecommitdiff
path: root/INSTALLATION.md
blob: 69bcd4c9fc3b0dd9bdeb9de5bd7b36dd18cbd16b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# 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`).