GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat ReactJS na Ubuntu 20.04

ReactJS je bezplatná knihovna JavaScript s otevřeným zdrojovým kódem, která se používá k vytváření opakovaně použitelných komponent uživatelského rozhraní. Byl vyvinut společností Facebook v roce 2011 pro rychlé a efektivní vytváření bohatých a poutavých webových aplikací s minimálním kódováním. Umožňuje vytvářet interaktivní prvky na webových stránkách. Využívá virtuální DOM, díky kterému je aplikace rychlá. Nabízí bohatou sadu funkcí včetně virtuálního DOM, jednosměrné vazby dat, komponent, JSX, podmíněných příkazů a mnoha dalších.

V tomto tutoriálu vám ukážeme, jak nainstalovat aplikaci Create Reag a hostovat aplikaci ReactJS s webovým serverem Nginx na Ubuntu 20.04.

Předpoklady

  • Server se systémem Ubuntu 20.04 s minimálně 2 GB RAM.
  • Platný název domény označený IP adresou vašeho serveru. V tomto tutoriálu použijeme doménu reaktjs.example.com.
  • Na serveru je nakonfigurováno heslo uživatele root.

Začínáme

Před spuštěním se vždy doporučuje aktualizovat systémové balíčky na nejnovější verzi. Můžete je aktualizovat spuštěním následujícího příkazu:

apt-get update -y

Po aktualizaci všech balíčků nainstalujte další požadované závislosti spuštěním následujícího příkazu:

apt-get install curl gnupg2 -y

Jakmile jsou všechny závislosti nainstalovány, můžete přejít k dalšímu kroku.

Instalovat Node.js

Dále budete muset nainstalovat Node.js na váš server. Ve výchozím nastavení není nejnovější verze Node.js dostupná ve standardním úložišti Ubuntu 20.04. Budete tedy muset nainstalovat Node.js z oficiálního úložiště Node.js.

Nejprve přidejte úložiště Node.js pomocí následujícího příkazu:

curl -sL https://deb.nodesource.com/setup_14.x | bash -

Dále spusťte následující příkaz k instalaci souboru Node.js do vašeho systému:

apt-get install nodejs -y

Po instalaci Node.js aktualizujte NPM na nejnovější verzi pomocí následujícího příkazu:

npm install [email protected] -g

Měli byste získat následující výstup:

/usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js
/usr/bin/npx -> /usr/lib/node_modules/npm/bin/npx-cli.js
+ [email protected]
updated 2 packages in 12.78s

Dále ověřte nainstalovanou verzi Node.js pomocí následujícího příkazu:

node -v

Měli byste získat následující výstup:

v14.15.3

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Instalovat nástroj Create React App Tool

Create React App je nástroj, který šetří váš čas na nastavení a konfiguraci. Stačí spustit jediný příkaz a Create React App nastaví všechny nástroje potřebné ke spuštění vašeho projektu.

Nástroj Create React App můžete nainstalovat pomocí následujícího příkazu:

npm install -g create-react-app

Měli byste získat následující výstup:

/usr/bin/create-react-app -> /usr/lib/node_modules/create-react-app/index.js
+ [email protected]
added 67 packages from 25 contributors in 4.705s

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Vytvořte si aplikaci First React

V této části vám ukážeme, jak vytvořit aplikaci React pomocí nástroje Create React App.

Nejprve změňte adresář na /opt a vytvořte svůj první projekt pomocí následujícího příkazu:

cd /opt
create-react-app reactproject

Měli byste vidět následující výstup:

Success! Created reactproject at /opt/reactproject
Inside that directory, you can run several commands:

  npm start
    Starts the development server.

  npm run build
    Bundles the app into static files for production.

  npm test
    Starts the test runner.

  npm run eject
    Removes this tool and copies build dependencies, configuration files
    and scripts into the app directory. If you do this, you can’t go back!

We suggest that you begin by typing:

  cd reactproject
  npm start

Happy hacking!

Dále změňte adresář na svůj projekt a spusťte aplikaci pomocí následujícího příkazu:

cd /opt/reactproject
npm start

Měli byste získat následující výstup:

Compiled successfully!

You can now view reactproject in the browser.

  http://localhost:3000

Note that the development build is not optimized.
To create a production build, use npm run build.

Stiskněte CTRL+C pro zastavení aplikace.

Vytvoření spouštěcího souboru pro aplikaci React

Pokud chcete aplikaci React spouštět automaticky při restartu systému, budete muset pro svou aplikaci React vytvořit službu systemd. Svou aplikaci tedy můžete snadno spravovat pomocí příkazu systemctl. Soubor služby systemd můžete vytvořit pomocí následujícího příkazu:

nano /lib/systemd/system/react.service

Přidejte následující řádky:

[Service]
Type=simple
User=root
Restart=on-failure
WorkingDirectory=/opt/reactproject
ExecStart=npm start -- --port=3000

Uložte a zavřete soubor a poté znovu načtěte démona systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte službu React a povolte její spuštění při restartu systému spuštěním následujícího příkazu:

systemctl start react
systemctl enable react

Stav služby React můžete ověřit pomocí následujícího příkazu:

systemctl status react

Měli byste získat následující výstup:

? react.service
     Loaded: loaded (/lib/systemd/system/react.service; static; vendor preset: enabled)
     Active: active (running) since Sat 2020-12-19 06:11:42 UTC; 4s ago
   Main PID: 30833 (node)
      Tasks: 30 (limit: 4691)
     Memory: 141.0M
     CGroup: /system.slice/react.service
             ??30833 npm
             ??30844 sh -c react-scripts start "--port=3000"
             ??30845 node /opt/reactproject/node_modules/.bin/react-scripts start --port=3000
             ??30852 /usr/bin/node /opt/reactproject/node_modules/react-scripts/scripts/start.js --port=3000

Dec 19 06:11:42 ubuntu2004 systemd[1]: Started react.service.
Dec 19 06:11:43 ubuntu2004 npm[30833]: > [email protected] start /opt/reactproject
Dec 19 06:11:43 ubuntu2004 npm[30833]: > react-scripts start "--port=3000"
Dec 19 06:11:46 ubuntu2004 npm[30852]: ? ?wds?: Project is running at http://0.0.0.0:3000/
Dec 19 06:11:46 ubuntu2004 npm[30852]: ? ?wds?: webpack output is served from
Dec 19 06:11:46 ubuntu2004 npm[30852]: ? ?wds?: Content not from webpack is served from /opt/reactproject/public
Dec 19 06:11:46 ubuntu2004 npm[30852]: ? ?wds?: 404s will fallback to /
Dec 19 06:11:46 ubuntu2004 npm[30852]: Starting the development server...

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Konfigurace Nginx pro aplikaci React

Je dobré nainstalovat a nakonfigurovat Nginx jako reverzní proxy pro aplikaci React. Ke své aplikaci tedy můžete přistupovat přes port 80.

Nejprve nainstalujte balíček Nginx pomocí následujícího příkazu:

apt-get install nginx -y

Jakmile je Nginx nainstalován, vytvořte nový konfigurační soubor virtuálního hostitele Nginx:

nano /etc/nginx/sites-available/reactjs.conf

Přidejte následující řádky:

upstream backend {
  server localhost:3000;
}

server {
    listen 80;
    server_name reactjs.example.com;

    location / {
        proxy_pass http://backend/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;

        proxy_redirect off;
    }
}

Uložte a zavřete soubor a poté povolte virtuálního hostitele Nginx pomocí následujícího příkazu:

ln -s /etc/nginx/sites-available/reactjs.conf /etc/nginx/sites-enabled/

Dále ověřte, zda Nginx neobsahuje nějakou chybu syntaxe spuštěním následujícího příkazu:

nginx -t

Měli byste získat 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, aby se změny projevily:

systemctl restart nginx

Stav služby Nginx můžete také ověřit pomocí následujícího příkazu:

systemctl status nginx

Měli byste vidět následující výstup:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-12-19 06:12:42 UTC; 4s ago
       Docs: man:nginx(8)
    Process: 30899 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 30913 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 30915 (nginx)
      Tasks: 3 (limit: 4691)
     Memory: 3.6M
     CGroup: /system.slice/nginx.service
             ??30915 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??30916 nginx: worker process
             ??30917 nginx: worker process

Dec 19 06:12:42 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Dec 19 06:12:42 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.

V tomto okamžiku je Nginx nainstalován a nakonfigurován tak, aby sloužil React App. Nyní můžete přejít k dalšímu kroku.

Přístup k webovému rozhraní aplikace React

Nyní otevřete webový prohlížeč a zadejte adresu URL http://reactjs.example.com . Budete přesměrováni na webové rozhraní React.Js na následující obrazovce:

Závěr

Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali React.Js na serveru Ubuntu 20.04. Doufám, že nyní máte dostatek znalostí k nasazení vlastní aplikace React v produkčním prostředí. Neváhejte se mě zeptat, pokud máte nějaké otázky.


Ubuntu
  1. Jak nainstalovat R na Ubuntu 16.04

  2. Jak nainstalovat Go na Ubuntu 18.04

  3. Jak nainstalovat EPrints na Ubuntu 20.04

  1. Jak nainstalovat R na Ubuntu 20.04

  2. Jak nainstalovat Firefox Nightly jako aplikaci Flatpak na Ubuntu

  3. Jak nainstalovat Go na Ubuntu 18.04

  1. Jak nainstalovat R na Ubuntu 18.04

  2. Jak nainstalovat Seafile na Ubuntu 15.04 (Vivid Vervet)

  3. Jak vytvořit složky aplikací v Ubuntu 17.10