Evershop

EverShop est un caneva (un peu comme WordPress) pour créer votre boutique en ligne rapidement et simplement, avec les fonctionnalités commerciales essentielles pour un site web ecommerce.

EverShop
Documentation | Demo

C’est un logiciel open source, construit avec React, modulaire et entièrement personnalisable et sous licence GPL-3.0 (open source).

Le dépôt logiciel est accessible via cette page : https://github.com/evershopcommerce/evershop/?tab=readme-ov-file


EverShop est similaire à un autre logiciel de boutique en ligne plus ancien : « Medusa« .

Toutefois, Evershop dispose de quelques améliorations intéressantes :

1 : Medusa se concentre sur la partie API, vous devrez créer votre propre vitrine et votre propre panneau d’administration. EverShop fournit à la fois une interface d’administration et une boutique frontale prêtes à l’emploi (vous pouvez le personnaliser selon votre propre apparence). Medusa fournit un panneau d’administration par défaut, mais si vous souhaitez apporter des modifications, vous devrez modifie rle dépôt logiciel vous-même.

2 : EverShop est conçu de manière modulaire et vous permet de créer une extension pour personnaliser à la fois la fonctionnalité de l’API et l’interface (à la fois l’administrateur et la vitrine) sans changer le noyau.

3 : EverShop est plus jeune et en plein développement.


Version de démonstration

Visitez la boutique de démonstration (Store front) et essayez le compte administrateur (Admin panel) :

evershop-store-demo
evershop-backend-demo

Identifiants compte administrateur :

Email: de**@ev******.io
Password: 123456


Evershop nécessite l’installation des progiciels Docker, Node et Postgresql.

Nous installons donc d’abord les prologiciels nécessaires.

Installation des progiciels nécessaires (s’ils ne sont pas déjà installés) :

Exécutez en premier la commande suivante pour vérifier et installer les mise à jour :

sudo apt update
sudo apt upgrade

Installez ensuite les progiciels nécéssaires :

sudo apt install -y apache2 apache2-utils
sudo systemctl start apache2
sudo systemctl enable apache2
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Créez un fichier de configuration servername.conf :

sudo nano /etc/apache2/conf-available/servername.conf

Ajoutez dans le fichier /etc/apache2/conf-available/servername.conf la ligne suivante :

ServerName localhost

Enregistrez et fermez le fichier : Pour enregistrer un fichier dans l’éditeur de texte « Nano », appuyez sur les touches Ctrl + O (pour ‘Oui’) ou sur Ctrl + Y (pour ‘Yes), puis appuyez sur Entrée pour confirmer.

Pour quitter l’éditeur de texte ‘Nano’, appuyez sur les touches : Ctrl + X.

Activez ensuite ce fichier de configuration sous le serveur Apache avec la commande suivante :

sudo a2enconf servername.conf

Rechargez Apache pour que la modification prenne effet :

sudo systemctl reload apache2

sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Docker Compose est un outil qui permet de configurer facilement des applications ou des services complexe composés de divers conteneurs. Pour installer Docker Compose sur votre système Ubuntu, téléchargez la version la plus récente (à partir du site officiel) et exécutez la commande suivante:

sudo curl -L « https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m) » -o /usr/local/bin/docker-compose
sudo apt-get install docker-compose-plugin

Après avoir installé Docker Compose, donnez-lui les autorisations nécessaires pour qu’elle puisse être exécutée correctement:

sudo chmod +x /usr/local/bin/docker-compose

Une fois l ‘installation terminée, vous pouvez exécuter le service Docker sur votre système en exécutant la commande :

sudo systemctl start docker
sudo systemctl enable docker

Installez postgress :

sudo apt install -y postgresql postgresql-contrib

Installez Yarn :

sudo npm install --global yarn

Installez git :

sudo apt install git

Installez FFmpeg :

sudo apt install ffmpeg

Installez Python :

sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
sudo wget https://www.python.org/ftp/python/3.11.3/Python-3.11.3.tgz
sudo tar -xf Python-3.11.3.tgz
cd Python-3.11.3
sudo ./configure --enable-optimizations
sudo make -j 12
sudo make altinstall

sudo apt update
sudo apt-get install nodejs
sudo apt install build-essential
sudo apt install npm


Installation d’Evershop avec Docker

Vous pouvez démarrer avec EverShop en quelques minutes en utilisant l’image Docker.

L’image Docker est un excellent moyen d’installer (relativement) facilement EverShop sans avoir à vous soucier de l’installation de dépendances ou de la configuration de votre environnement.

Exécutez les commandes suivantes :

sudo su
curl -sSL https://raw.githubusercontent.com/evershopcommerce/evershop/main/docker-compose.yml > docker-compose.yml 
docker-compose up -d

L’image Docker démarrera une nouvelle instance d’EverShop avec la configuration par défaut.

Vous pouvez accéder au site e-commerce de base d’Evershop via le lien : http://localhost:3000 

Vous pouvez accéder au panneau d’administration via l’adresse : http://localhost:3000/admin avec les identifiants :

Email: de**@ev******.io
Password: 123456

N’oubliez pas de modifier ces identifiants pas la suite !


Créer un nouveau compte administrateur (facultatif) :

Pour créer un nouvel utilisateur administrateur, connectez vous au contenair de l’application Docker et exécutez les commandes suivantes.

Repérez d’abord le numéro du contenair Docker de Evershop avec la commande suivante :

sudo docker ps -a

Supposons que le contenair de Evershop est le numéro 98776890. Exécutez alors la commande suivante, en remplaçant « your email », « your password » et « your name » par vos données :

sudo docker exec -it 98776890 bash npm run user:create -- --email "your email" --password "your password" --name "your name"

Création d’un fichier Virtualhost pour un serveur apache

3.1. Créez un fichier de configuration apache

Si vous avez installé cette application sur un serveur VPS, vous ne pourrez pas vous connecter avec votre navigateur à l’adresse locale : http://localhost:3000 ou à l’adresse http://192.168.1.XX:3000 du VPS…

De plus, l’idée d’un site de boutique en ligne est un peu que cette boutique soit justement ‘en ligne’, sur internet…

Il faut donc créer un accès vers ce logiciel depuis un site internet / un nom de domaine spécifique.

Pour accéder à votre boutique en ligne depuis un site internet, vous devez donc d’abord rattacher un nom de domaine exemple.com ou un sous-domaine : « boutique.exemple.com » depuis votre compte client de votre gestionnaire de domaine, en reliant votre nom de domaine à l’adresse IP de votre serveur via un enregistrement appelé ‘DNS A’.

Si vous ne vous vous souvenez plus comment faire, consultez de nouveau l’étape 1 de la phase 4 de notre tutoriel pour installer Juris-Tyr.

(Rappel des étapes si vous avez acheté votre nom de domaine via OVH : «Connexion à l’ Espace client d’OVH » -> Cliquez sur l’onglet « WebCloud» -> Cliquez sur le Lien « Noms de domaines » -> « exemple.com » -> Cliquez sur le Bouton « Zone DNS » -> Cliquez sur le Bouton « Créer un nouvel enregistrement » -> Cliquez sur le Bouton «  A » -> puis sur le Bouton « Suivant » -> indiquer dans la case réservée à cette effet « [votre nom domaine ou de sous domaine] » -> Puis, complétez l’adresse IP de votre VPS « 51.xx.xxx.xx » -> puis cliquez sur le « Bouton Suivant » -> puis sur le « Bouton Valider »).

Une fois votre sous-domaine crée, éditez un nouveau fichier ‘evershop.conf’ dans le dossier /etc/apache2/sites-available/ avec un éditeur de texte en ligne de commande comme Nano.

Exécutez la commande suivante :

sudo nano /etc/apache2/sites-available/evershop.conf

Copiez et collez le texte suivant dans le fichier :
(Remplacez le texte « boutique.exemple.com » par votre propre sous-domaine et nom de domaine)

<VirtualHost *:80>
ServerName boutique.exemple.com
# ProxyPreserveHost On
ProxyRequests On
ProxyVia On
<Proxy *>
Allow from all
</Proxy>
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
<Location "/">
ProxyPass "http://127.0.0.1:3000/"
ProxyPassReverse "http://127.0.0.1:3000/"
</Location>
ErrorLog ${APACHE_LOG_DIR}/evernote.error.log
RewriteRule ^/(.*)?$ http://127.0.0.1:3000/$1 [P,L]
</VirtualHost>

Enregistrez et fermez le fichier.
(Pour enregistrer un fichier dans l’éditeur de texte Nano, appuyez sur les touches ‘Ctrl+o’, puis sur ‘Entrer’ pour confirmer. Pour quitter, appuyez sur ‘Ctrl+X’).

Activez ensuite ce nouveau fichier de configuration du serveur Apache ‘hôte virtuel’ :

sudo a2ensite evershop.conf

Exécutez la commande suivante pour activer les modules Apache requis :

sudo a2enmod rewrite headers env dir mime setenvif ssl proxy_http proxy rewrite

 Recharger Apache et les modules PHP :

sudo systemctl restart apache2 php8.2-fpm

Désormais vous pouvez accéder à Evershop via l’adresse : http://boutique.exemple.com


3.2. Activation d’une connexion en https pour le site internet crée :

Nous souhaitons désormais sécuriser l’accès au site boutique.example.com. Nous allons donc enregistrer un certificat TLS pour accèder à ce site internet en ‘https’.

Exécutez les commandes suivantes pour installer le client Let’s Encrypt (certbot) à partir du référentiel de logiciels par défaut.

sudo apt install certbot

Si vous utilisez le serveur Web Apache, vous devez également installer le plug-in Certbot Apache.

sudo apt install python3-certbot-apache

Exécutez ensuite la commande suivante pour obtenir un certificat TLS/SSL gratuit :

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email vo**********@ex*****.com -d boutique.exemple.com

Exécuter la commande suivante :

sudo systemctl restart apache2

Vous pouvez accéder à votre site de boutique en ligne à https://boutique.exemple.com ou à l’adresse https://exemple.com 

Vous pouvez accéder au panneau d’administration via l’adresse : https://boutique.exemple.com/admin avec les identifiants :

Email: de**@ev******.io
Password: 123456

N’oubliez pas de modifier ces identifiants pas la suite….


Documentation

Pour le guide d’installation complet, veuillez vous référer à au guide d’installation.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *