Cezerin è una piattaforma di eCommerce gratuita, open source, basata su React e Node.js che può essere utilizzata per creare app Web progressive. È un'applicazione di e-commerce a pagina singola con rendering SEO friendly e lato server. Fornisce molte funzionalità come Categorie di prodotti, Gestione dell'inventario e delle scorte, File manager, Esporta temi nell'archivio zip, Installa un tema dall'archivio zip, Gateway di pagamento, Senza password e molti altri.
In questo tutorial spiegheremo come installare Cezerin su Ubuntu 18.04 LTS.
Requisiti
- Un server che esegue Ubuntu 18.04.
- Una password di root è impostata sul tuo server.
- Un indirizzo IP statico 192.168.0.4 è configurato sul tuo server
Per iniziare
Innanzitutto, dovrai aggiornare il tuo server con l'ultima versione. Puoi farlo con il seguente comando:
apt-get update -y
apt-get upgrade -y
Una volta aggiornato il tuo server, riavvialo per applicare tutte le modifiche:
Installa Node.js
In seguito, dovrai installare l'ultima versione di Node.js sul tuo server. Per impostazione predefinita, l'ultima versione di Node.js non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi, dovrai aggiungere il repository Node.js al tuo sistema.
Puoi aggiungere il repository Node.js con il seguente comando:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Una volta aggiunto il repository, installa Node.js con l'altro pacchetto richiesto con il seguente comando:
apt-get install nodejs build-essential -y
Quindi, controlla la versione di Node.js con il seguente comando:
node -v
Dovresti vedere il seguente output:
v12.5.0
Verifica la versione NPM con il seguente comando:
npm -v
Dovresti vedere il seguente output:
6.9.0
Una volta terminato, puoi procedere con l'installazione di MongoDB.
Installa MongoDB
Per impostazione predefinita, MongoDB non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi dovrai aggiungere il repository MongoDB al tuo sistema.
Innanzitutto, importa la chiave GPG di MongoDB con il seguente comando:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Dovresti vedere il seguente output:
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
Quindi, aggiungi il repository MongoDB con il seguente comando:
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
Quindi, aggiorna il repository e installa MongoDB con il seguente comando:
apt-get update -y
apt-get install mongodb-org -y
Una volta installato MongoDB, avvia il servizio MongoDB con il seguente comando:
service mongod start
Puoi anche controllare lo stato di MongoDB con il seguente comando:
service mongod status
Dovresti vedere il seguente output:
? 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
Una volta terminato, puoi procedere con l'installazione di Cezerin.
Installa Cezerin
Innanzitutto, dovrai scaricare l'ultima versione di Cezerin dal repository Github. Puoi scaricarlo con il seguente comando:
cd /opt
git clone https://github.com/cezerin/cezerin.git
Quindi, cambia la directory in cezerin e installa tutte le dipendenze richieste con il seguente comando:
cd /opt/cezerin
npm update node-sass
npm install --unsafe-perm --allow-root
npm run build
npm run setup
Una volta installate tutte le dipendenze richieste, avvia il server con il seguente comando:
npm start
Una volta che il server è stato avviato correttamente, dovresti vedere il seguente output:
> [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 è ora installato e in esecuzione sulla porta 3000. Ora apri il tuo browser web e digita l'URL http://192.168.0.4:3000 . Verrai reindirizzato alla dashboard predefinita di Cezerin come mostrato nella pagina seguente:
Configura Nginx come proxy inverso
Per impostazione predefinita, Cezerin funziona sulla porta 3000. Quindi dovrai configurare Nginx come proxy inverso per accedere a Cezerin utilizzando la porta 80.
Per farlo, prima installa Nginx con il seguente comando:
apt-get install nginx -y
Una volta installato Nginx, crea un nuovo file host virtuale Nginx per Cezerin con il seguente comando:
nano /etc/nginx/sites-available/cezerin.conf
Aggiungi le seguenti righe:
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/; } }
Salva e chiudi il file, quando hai finito. Quindi, abilita l'host virtuale con il seguente comando:
ln -s /etc/nginx/sites-available/cezerin.conf /etc/nginx/sites-enabled/
Quindi, controlla Nginx per eventuali errori di configurazione con il seguente comando:
nginx -t
Se tutto va bene, dovresti vedere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Infine, riavvia il servizio Nginx per applicare tutte le modifiche che abbiamo apportato con il seguente comando:
systemctl restart nginx
Crea un file di servizio Systemd per Cezerin
Successivamente, dovrai creare un file di servizio systemd per gestire il servizio Cezerin. Puoi farlo con il seguente comando:
nano /etc/systemd/system/cezerin.service
Aggiungi le seguenti righe:
[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
Salva e chiudi il file, quando hai finito. Quindi, ricarica il file di configurazione con il seguente comando:
systemctl daemon-reload
Quindi, avvia il servizio Cezerin e abilitalo all'avvio all'avvio con il seguente comando:
systemctl start cezerin
systemctl enable cezerin
Puoi anche controllare lo stato del servizio Cezerin con il seguente comando:
systemctl status cezerin
Dovresti vedere il seguente output:
? 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-*
Questo è tutto! ora puoi accedere alla tua interfaccia web Cezerin utilizzando l'URL http://192.168.0.4 .
Conclusione
Congratulazioni! hai installato e configurato correttamente Cezerin sul server Ubuntu 18.04. Ora puoi ospitare facilmente il tuo negozio online utilizzando Cezerin. Sentiti libero di chiedermi se hai domande.