Cezerin je bezplatná, open-source platforma elektronického obchodování založená na React a Node.js, kterou lze použít k vytváření progresivních webových aplikací. Jedná se o jednostránkovou aplikaci elektronického obchodování s optimalizovaným SEO a vykreslováním na straně serveru. Poskytuje spoustu funkcí, jako jsou kategorie produktů, správa zásob a zásob, správce souborů, export motivů do archivu zip, instalace motivu z archivu zip, platební brány, bez hesla a mnoho dalších.
V tomto tutoriálu vysvětlíme, jak nainstalovat Cezerin na Ubuntu 18.04 LTS.
Požadavky
- Server se systémem Ubuntu 18.04.
- Na vašem serveru je nastaveno heslo uživatele root.
- Na vašem serveru je nakonfigurována statická IP adresa 192.168.0.4
Začínáme
Nejprve budete muset aktualizovat svůj server na nejnovější verzi. Můžete to udělat pomocí následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile je váš server aktualizován, restartujte jej, aby se všechny změny projevily:
Instalovat Node.js
Dále budete muset na svůj server nainstalovat nejnovější verzi Node.js. Ve výchozím nastavení není nejnovější verze Node.js k dispozici ve výchozím úložišti Ubuntu 18.04. Budete tedy muset do svého systému přidat úložiště Node.js.
Úložiště Node.js můžete přidat pomocí následujícího příkazu:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Jakmile je úložiště přidáno, nainstalujte Node.js s dalším požadovaným balíčkem pomocí následujícího příkazu:
apt-get install nodejs build-essential -y
Dále zkontrolujte verzi Node.js pomocí následujícího příkazu:
node -v
Měli byste vidět následující výstup:
v12.5.0
Zkontrolujte verzi NPM pomocí následujícího příkazu:
npm -v
Měli byste vidět následující výstup:
6.9.0
Po dokončení můžete pokračovat v instalaci MongoDB.
Instalovat MongoDB
Ve výchozím nastavení není MongoDB k dispozici ve výchozím úložišti Ubuntu 18.04. Budete tedy muset do svého systému přidat úložiště MongoDB.
Nejprve importujte klíč MongoDB GPG pomocí následujícího příkazu:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Měli byste vidět následující výstup:
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
Dále přidejte úložiště MongoDB pomocí následujícího příkazu:
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
Dále aktualizujte úložiště a nainstalujte MongoDB pomocí následujícího příkazu:
apt-get update -y
apt-get install mongodb-org -y
Po instalaci MongoDB spusťte službu MongoDB pomocí následujícího příkazu:
service mongod start
Stav MongoDB můžete také zkontrolovat pomocí následujícího příkazu:
service mongod status
Měli byste vidět následující výstup:
? 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
Po dokončení můžete pokračovat v instalaci Cezerinu.
Nainstalovat Cezerin
Nejprve si budete muset stáhnout nejnovější verzi Cezerinu z úložiště Github. Můžete si jej stáhnout pomocí následujícího příkazu:
cd /opt
git clone https://github.com/cezerin/cezerin.git
Dále změňte adresář na cezerin a nainstalujte všechny požadované závislosti pomocí následujícího příkazu:
cd /opt/cezerin
npm update node-sass
npm install --unsafe-perm --allow-root
npm run build
npm run setup
Po instalaci všech požadovaných závislostí spusťte server následujícím příkazem:
npm start
Po úspěšném spuštění serveru byste měli vidět následující výstup:
> [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 je nyní nainstalován a běží na portu 3000. Nyní otevřete webový prohlížeč a zadejte adresu URL http://192.168.0.4:3000 . Budete přesměrováni na výchozí řídicí panel Cezerin, jak je znázorněno na následující stránce:
Konfigurovat Nginx jako reverzní proxy
Ve výchozím nastavení přeserin běží na portu 3000. Budete tedy muset nakonfigurovat Nginx jako reverzní proxy pro přístup k Cezerinu pomocí portu 80.
Chcete-li tak učinit, nejprve nainstalujte Nginx pomocí následujícího příkazu:
apt-get install nginx -y
Po instalaci Nginx vytvořte nový soubor virtuálního hostitele Nginx pro Cezerin pomocí následujícího příkazu:
nano /etc/nginx/sites-available/cezerin.conf
Přidejte následující řádky:
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/; } }
Po dokončení uložte a zavřete soubor. Poté povolte virtuálního hostitele pomocí následujícího příkazu:
ln -s /etc/nginx/sites-available/cezerin.conf /etc/nginx/sites-enabled/
Dále zkontrolujte Nginx, zda neobsahuje nějakou chybu konfigurace pomocí následujícího příkazu:
nginx -t
Pokud je vše v pořádku, měli byste vidět následující výstup:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Nakonec restartujte službu Nginx, abyste použili všechny změny, které jsme provedli pomocí následujícího příkazu:
systemctl restart nginx
Vytvoření souboru služby Systemd pro Cezerin
Dále budete muset vytvořit soubor služby systemd pro správu služby Cezerin. Můžete to provést pomocí následujícího příkazu:
nano /etc/systemd/system/cezerin.service
Přidejte následující řádky:
[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
Po dokončení uložte a zavřete soubor. Poté znovu načtěte konfigurační soubor pomocí následujícího příkazu:
systemctl daemon-reload
Dále spusťte službu Cezerin a povolte její spuštění při startu pomocí následujícího příkazu:
systemctl start cezerin
systemctl enable cezerin
Stav služby Cezerin můžete také zkontrolovat pomocí následujícího příkazu:
systemctl status cezerin
Měli byste vidět následující výstup:
? 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-*
A je to! nyní můžete přistupovat ke svému webovému rozhraní Cezerin pomocí adresy URL http://192.168.0.4 .
Závěr
Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali Cezerin na serveru Ubuntu 18.04. Nyní můžete snadno hostovat svůj vlastní internetový obchod pomocí Cezerinu. Pokud máte nějaké dotazy, neváhejte se mě zeptat.