Cezerin est une plate-forme de commerce électronique gratuite, open source, basée sur React et Node.js, qui peut être utilisée pour créer des applications Web progressives. Il s'agit d'une application de commerce électronique d'une seule page avec un rendu optimisé pour le référencement et côté serveur. Il fournit de nombreuses fonctionnalités telles que les catégories de produits, la gestion de l'inventaire et des stocks, le gestionnaire de fichiers, l'exportation de thèmes vers une archive zip, l'installation d'un thème à partir d'une archive zip, les passerelles de paiement, le sans mot de passe et bien d'autres.
Dans ce tutoriel, nous expliquerons comment installer Cezerin sur Ubuntu 18.04 LTS.
Exigences
- Un serveur exécutant Ubuntu 18.04.
- Un mot de passe root est configuré sur votre serveur.
- Une adresse IP statique 192.168.0.4 est configurée sur votre serveur
Mise en route
Tout d'abord, vous devrez mettre à jour votre serveur avec la dernière version. Vous pouvez le faire avec la commande suivante :
apt-get update -y
apt-get upgrade -y
Une fois votre serveur mis à jour, redémarrez-le pour appliquer toutes les modifications :
Installer Node.js
Ensuite, vous devrez installer la dernière version de Node.js sur votre serveur. Par défaut, la dernière version de Node.js n'est pas disponible dans le référentiel par défaut d'Ubuntu 18.04. Vous devrez donc ajouter le référentiel Node.js à votre système.
Vous pouvez ajouter le référentiel Node.js avec la commande suivante :
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Une fois le référentiel ajouté, installez Node.js avec l'autre package requis avec la commande suivante :
apt-get install nodejs build-essential -y
Ensuite, vérifiez la version de Node.js avec la commande suivante :
node -v
Vous devriez voir le résultat suivant :
v12.5.0
Vérifiez la version de NPM avec la commande suivante :
npm -v
Vous devriez voir le résultat suivant :
6.9.0
Une fois que vous avez terminé, vous pouvez procéder à l'installation de MongoDB.
Installer MongoDB
Par défaut, MongoDB n'est pas disponible dans le référentiel par défaut d'Ubuntu 18.04. Vous devrez donc ajouter le référentiel MongoDB à votre système.
Tout d'abord, importez la clé GPG MongoDB avec la commande suivante :
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Vous devriez voir le résultat suivant :
Executing: /tmp/apt-key-gpghome.noPsOh3sgA/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 gpg: key 68818C72E52529D4: public key "MongoDB 4.0 Release Signing Key <[email protected]>" imported gpg: Total number processed: 1 gpg: imported: 1
Ensuite, ajoutez le référentiel MongoDB avec la commande suivante :
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list
Ensuite, mettez à jour le référentiel et installez MongoDB avec la commande suivante :
apt-get update -y
apt-get install mongodb-org -y
Une fois MongoDB installé, démarrez le service MongoDB avec la commande suivante :
service mongod start
Vous pouvez également vérifier l'état de MongoDB avec la commande suivante :
service mongod status
Vous devriez voir le résultat suivant :
? mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled) Active: active (running) since Wed 2019-07-03 08:57:58 UTC; 7s ago Docs: https://docs.mongodb.org/manual Main PID: 14712 (mongod) CGroup: /system.slice/mongod.service ??14712 /usr/bin/mongod --config /etc/mongod.conf Jul 03 08:57:58 ubuntu1804 systemd[1]: Started MongoDB Database Server
Une fois que vous avez terminé, vous pouvez procéder à l'installation de Cezerin.
Installer Cezerin
Tout d'abord, vous devrez télécharger la dernière version de Cezerin à partir du référentiel Github. Vous pouvez le télécharger avec la commande suivante :
cd /opt
git clone https://github.com/cezerin/cezerin.git
Ensuite, changez le répertoire en cezerin et installez toutes les dépendances requises avec la commande suivante :
cd /opt/cezerin
npm update node-sass
npm install --unsafe-perm --allow-root
npm run build
npm run setup
Une fois toutes les dépendances requises installées, démarrez le serveur avec la commande suivante :
npm start
Une fois le serveur démarré avec succès, vous devriez voir la sortie suivante :
> [email protected] start /opt/cezerin > concurrently npm:start-* [start-api] [start-api] > [email protected] start-api /opt/cezerin [start-api] > node -r esm src/api/server/index.js [start-api] [start-store] [start-store] > [email protected] start-store /opt/cezerin [start-store] > node -r esm dist/store/server/index.js [start-store] [start-api] info: API running at http://localhost:3001 [start-api] info: MongoDB connected successfully [start-store] info: Store running at http://localhost:3000
Cezerin est maintenant installé et fonctionne sur le port 3000. Maintenant, ouvrez votre navigateur Web et tapez l'URL http://192.168.0.4:3000 . Vous serez redirigé vers le tableau de bord par défaut de Cezerin comme indiqué sur la page suivante :
Configurer Nginx en tant que proxy inverse
Par défaut, Cezerin s'exécute sur le port 3000. Vous devrez donc configurer Nginx en tant que proxy inverse pour accéder à Cezerin via le port 80.
Pour ce faire, installez d'abord Nginx avec la commande suivante :
apt-get install nginx -y
Une fois le Nginx installé, créez un nouveau fichier d'hôte virtuel Nginx pour Cezerin avec la commande suivante :
nano /etc/nginx/sites-available/cezerin.conf
Ajoutez les lignes suivantes :
upstream cezerin { server 127.0.0.1:3000 weight=100 max_fails=5 fail_timeout=5; } server { listen 80; server_name 192.168.0.4; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://cezerin/; } }
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, activez l'hôte virtuel avec la commande suivante :
ln -s /etc/nginx/sites-available/cezerin.conf /etc/nginx/sites-enabled/
Ensuite, vérifiez le Nginx pour toute erreur de configuration avec la commande suivante :
nginx -t
Si tout va bien, vous devriez voir le résultat suivant :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Enfin, redémarrez le service Nginx pour appliquer toutes les modifications que nous avons apportées avec la commande suivante :
systemctl restart nginx
Créer un fichier de service Systemd pour Cezerin
Ensuite, vous devrez créer un fichier de service systemd pour gérer le service Cezerin. Vous pouvez le faire avec la commande suivante :
nano /etc/systemd/system/cezerin.service
Ajoutez les lignes suivantes :
[Unit] Description=Cezerin Server [Service] ExecStart=/usr/bin/npm start # Required on some systems WorkingDirectory=/opt/cezerin Restart=always # Restart service after 10 seconds if node service crashes RestartSec=10 # Output to syslog StandardOutput=syslog StandardError=syslog SyslogIdentifier=nodejs-example [Install] WantedBy=multi-user.target
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, rechargez le fichier de configuration avec la commande suivante :
systemctl daemon-reload
Ensuite, démarrez le service Cezerin et activez-le au démarrage avec la commande suivante :
systemctl start cezerin
systemctl enable cezerin
Vous pouvez également vérifier l'état du service Cezerin avec la commande suivante :
systemctl status cezerin
Vous devriez voir le résultat suivant :
? cezerin.service - Cezerin Server Loaded: loaded (/etc/systemd/system/cezerin.service; disabled; vendor preset: enabled) Active: active (running) since Wed 2019-07-03 09:51:29 UTC; 11s ago Main PID: 18516 (npm) Tasks: 43 (limit: 1114) CGroup: /system.slice/cezerin.service ??18516 npm ??18538 sh -c concurrently npm:start-* ??18541 node /opt/cezerin/node_modules/.bin/concurrently npm:start-* ??18550 /bin/sh -c npm run start-api ??18551 npm ??18557 /bin/sh -c npm run start-store ??18559 npm Jul 03 09:51:29 ubuntu1804 systemd[1]: Stopped Cezerin Server. Jul 03 09:51:29 ubuntu1804 systemd[1]: Started Cezerin Server. Jul 03 09:51:33 ubuntu1804 nodejs-example[18516]: > [email protected] start /opt/cezerin Jul 03 09:51:33 ubuntu1804 nodejs-example[18516]: > concurrently npm:start-*
C'est ça! vous pouvez maintenant accéder à votre interface web Cezerin en utilisant l'URL http://192.168.0.4 .
Conclusion
Toutes nos félicitations! vous avez installé et configuré avec succès Cezerin sur le serveur Ubuntu 18.04. Vous pouvez maintenant facilement héberger votre propre boutique en ligne en utilisant Cezerin. N'hésitez pas à me demander si vous avez des questions.