GNU/Linux >> Tutoriels Linux >  >> Linux

Installez nopCommerce sur Ubuntu 20.04, MySQL, Nginx, SSL

nopCommerce est une application Web de commerce électronique open source gratuite construite avec ASP.NET. Il s'agit d'une application hautes performances multi-magasins, multi-fournisseurs et dotée d'une interface Web conviviale.

Dans ce guide, vous allez apprendre à installer nopCommerce dans Ubuntu 20.04 avec MySQL, Nginx et à sécuriser la configuration avec Let'sEncrypt SSL.

Prérequis

  • Un serveur et un utilisateur Ubuntu 20.04 avec des privilèges sudo.

1. Configuration initiale

Mettez à jour tous les packages vers la dernière version disponible.

sudo apt update
sudo apt dist-upgrade -y

Installez le package de décompression pour extraire le code source de nopCommerce.

sudo apt install unzip

2. Installer MySQL

Installez le serveur MySQL pour votre base de données. Nous allons installer MySQL 8.

sudo apt install mysql-server mysql-client

Serveur MySQL sécurisé.

sudo mysql_secure_installation

Suivez les invites une par une et configurez un nouveau mot de passe pour votre utilisateur root.

Connectez-vous à MySQL.

sudo mysql -u root -p

Entrez le mot de passe que vous avez configuré précédemment pour vous connecter.

3. Créer une base de données pour nopCommerce

Créez une nouvelle base de données et un utilisateur pour l'application nopCommerce.

CREATE DATABASE nopcommerce_db /*\!40100 DEFAULT CHARACTER SET utf8mb4 */;

Créer un nouvel utilisateur.

CREATE USER 'nopcommerce_user'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON nopcommerce_db.* TO 'nopcommerce_user'@'localhost';
FLUSH PRIVILEGES;

Maintenant, MySQL est installé et vous avez une nouvelle base de données avec l'utilisateur.

4. Installer ASP.NET

Téléchargez la clé de signature de package Microsoft et ajoutez-la au référentiel de packages.

Exécutez les commandes suivantes.

sudo wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo rm packages-microsoft-prod.deb

Installez le runtime ASP.NET.

sudo apt update
sudo apt install apt-transport-https
sudo apt install aspnetcore-runtime-6.0

Vérifiez l'installation.

dotnet --list-runtimes

Output
Microsoft.AspNetCore.App 6.0.3 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.3 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

5. Installer Nginx

Nous allons maintenant installer Nginx et le configurer.

sudo apt install nginx

Une fois l'installation terminée, nous supprimerons les blocs de serveur par défaut et en configurerons un nouveau pour nopCommerce.

sudo rm -rf /etc/nginx/sites-available/default
sudo rm -rf /etc/nginx/sites-enabled/default

Configurez Nginx pour nopCommerce.

Créez un nouveau fichier de configuration.

sudo nano /etc/nginx/sites-available/nopcommerce.conf

Collez ce qui suit dans le fichier. Nous utilisons une configuration proxy pour le port 5000 sur lequel nopCommerce s'exécute.

server {
    listen 80;
    listen [::]:80;

    server_name domain.com www.domain.com;

    location / {
        proxy_pass         http://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection keep-alive;
        proxy_set_header   Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
}

Appuyez sur CTRL+X suivi de Y et ENTER pour enregistrer et quitter le fichier.

Activez la configuration en créant un lien symbolique vers sites-enabled répertoire.

sudo ln -s /etc/nginx/sites-available/nopcommerce.conf /etc/nginx/sites-enabled/nopcommerce.conf

Redémarrez Nginx pour que la configuration prenne effet.

sudo service nginx restart

6. Installez nopCommerce

Accédez à votre répertoire préféré pour télécharger le dernier code source nopCommerce pour Linux à partir de leur référentiel Git officiel.

cd /var/www/html
sudo wget https://github.com/nopSolutions/nopCommerce/releases/download/release-4.50.1/nopCommerce_4.50.1_NoSource_linux_x64.zip

Extrayez le fichier téléchargé.

sudo unzip nopCommerce_4.50.1_NoSource_linux_x64.zip

Supprimez le fichier zip.

sudo rm -rf nopCommerce_4.50.1_NoSource_linux_x64.zip

Configurez les autorisations.

sudo chmod -R 755 /var/www/html
sudo chown -R www-data:www-data /var/www/html

7. Configurer nopCommerce en tant que service

Configurez nopCommerce en tant que service afin qu'il s'exécute en tant que service système. Ce sera plus facile à gérer.

Créez un nouveau fichier de service.

sudo nano /etc/systemd/system/nopcommerce.service

Collez le contenu suivant.

Unit]
Description=NopCommerce eCommerce application

[Service]
WorkingDirectory=/var/www/html/
ExecStart=/usr/bin/dotnet /var/www/html/Nop.Web.dll
Restart=always

# Auto restart nopCommerce in 10 seconds if .NET crashes
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=nopcommerce
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

Redémarrez le démon système.

sudo systemctl daemon-reload

Activez nopCommerce pour qu'il démarre au démarrage du système.

sudo systemctl enable nopcommerce

Démarrez nopCommerce.

sudo systemctl start nopcommerce

Vérifiez l'état à l'aide de la commande suivante.

sudo systemctl status nopcommerce
● nopcommerce.service - NopCommerce Ecommerce Application
     Loaded: loaded (/etc/systemd/system/nopcommerce.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-04-06 06:22:05 UTC; 2min 36s ago
   Main PID: 5149 (dotnet)
      Tasks: 20 (limit: 1151)
     Memory: 449.6M
     CGroup: /system.slice/nopcommerce.service
             └─5149 /usr/bin/dotnet /var/www/html/Nop.Web.dll

Vous avez maintenant nopCommerce, MySQL, Nginx en cours d'exécution.

8. Installer Let'sEncrypt SSL

Nous pouvons utiliser Certbot pour installer un certificat SSL Let's Encrypt gratuit pour votre domaine.

sudo apt install python3-certbot-nginx

Exécutez la commande suivante pour installer le certificat et configurer automatiquement la redirection vers HTTPS.

sudo certbot --nginx --redirect --agree-tos --no-eff-email -m [email protected] -d domain.com -d www.domain.com

Vous devriez maintenant recevoir le certificat SSL et il sera configuré automatiquement.

Configurer le renouvellement automatique.

sudo certbot renew --dry-run

Nous avons maintenant tout configuré.

Vérifiez votre domaine sur votre navigateur, vous verrez la page du guide d'installation.

Pour Nom du serveur sous Informations sur la base de données utilisez localhost .

Remplissez toutes les autres valeurs appropriées et cliquez sur Installer .

Cela prendra un certain temps, puis votre service nopCommerce démarrera.

Une fois l'installation terminée, vous verrez votre page d'accueil par défaut.

Vous avez maintenant une installation réussie de nopCommerce avec ASP.NET, MySQL, Nginx, Let'sEncrypt SSL.

Conclusion

Vous avez maintenant appris à installer nopCommerce sur Ubuntu 20.04 avec Nginx, MySQL et SSL.

Merci pour votre temps. Si vous rencontrez un problème ou si vous avez des commentaires, veuillez laisser un commentaire ci-dessous.


Linux
  1. Comment installer MySQL sur Ubuntu 20.04 LTS

  2. Comment installer Backdrop sur Ubuntu 16.04

  3. Comment installer Nginx sur Ubuntu 16.04

  4. Installer Nginx sur Ubuntu

  5. Redémarrez Nginx dans Ubuntu

Comment installer NGINX sur Ubuntu 18.04

Comment installer Apache Tomcat 10 sur Ubuntu 20.04 avec Nginx

Installez nopCommerce sur Ubuntu 20.04, MySQL, Nginx, SSL

Comment installer Ruby On Rails sur Ubuntu 20.04 avec MySQL, Nginx, Passenger, SSL

Comment installer Apache Tomcat 10 sur Ubuntu 22.04 avec Nginx

Comment installer Nginx sur Ubuntu 22.04