Nuxt.js: The Universal Framework
Installerer Node.js
Stillasapplikasjon
Innledende start
Bygg for produksjon
PM2: Administrer applikasjonen din med letthet
Nuxt.js: The Universal Framework
Nuxt.js er et JavaScript-rammeverk designet for raskt å lage universelle Vue.js-applikasjoner. Det er mest kjent for sin evne til å lage Vue.js-apper som kan gjengis på serveren så vel som klienten. I denne opplæringen skal vi sette opp en server-gjengitt Nuxt.js-applikasjon og distribuere den på Ubuntu 18.04 LTS.
Installerer Node.js
Først må du sørge for at du kjører Ubuntu 18.04 LTS. Deretter må du installere Node.js, hvis den ikke allerede er installert. I denne opplæringen vil vi bruke Node Version Manager, eller NVM, for å gjøre denne prosessen mye enklere.
Installer NVM ved å bruke følgende kommandoer.
curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh
bash install_nvm.sh
source ~/.profile
nvm install 11.1.0
nvm use 11.1.0
Stillasapplikasjon
Når du har installert Node.js, kan vi nå fortsette å sette opp pakkene vi trenger ved å bruke NPM. Vi skal bruke et hendig lite verktøy kalt create-nuxt-app, et fellesskapsverktøy som enkelt kan lage Nuxt.js-applikasjoner.
I hjemmekatalogen din, kjør følgende kommando for å starte appgenereringen.
npx create-nuxt-app <nameofproject>
Konsollen vil be deg om flere viktige alternativer. Av hensyn til denne veiledningen vil vi gi prosjektet navnet vårt " app". Vi vil bruke Express som vårt tilpassede serverrammeverk, og vi kjører applikasjonen i universell modus, som sikrer at vi vil gjengi nettsiden vår på serveren. Når du har spesifisert alle nødvendige tillatelser, vil installasjonsprosessen starte, og alle konfigurasjonsfiler vil bli opprettet.
Innledende start
Når alt er lastet ned, endre kataloger til mappen du nettopp opprettet.
cd app
Nå kan vi starte Nuxt.js utviklingsserver.
npm run dev
Denne kommandoen vil bygge nettstedet ved å bruke webpack, som er en modulpakke, og betjene nettstedet på en localhost-port, som vanligvis vil være port 3000. Det vil også gi deg tilgang til moduler for varmeinnlasting, som vil fjerne behovet for å starte programmet på nytt hver gang du endrer en fil. Siden vi kjører appen i universell modus, vil appen kompilere på både klienten og serveren. Nå vil applikasjonen din kjøre på port 3000.
Bygg for produksjon
Utviklingsmodus er ganske nyttig når du aktivt utvikler applikasjonen din. Men når du er klar til å gjøre applikasjonen din offentlig, blir tillegg som hot-reloading og utviklerverktøy mindre viktige. Dette er grunnen til at vi vil bygge vår applikasjon én gang, for et produksjonsmiljø. Heldigvis inkluderer Nuxt.js et verktøy som vi kan bruke til å raskt bygge appens moduler for produksjon. Kjør følgende for å starte produksjonsbyggingsprosessen.
npm run build
Det vi gjør her er i hovedsak at vi kompilerer alle webpack-modulene våre, med optimaliseringer for produksjon.
Når byggingen er fullført, vil du kunne kjøre nettstedet for produksjon.
npm start
Nå, hvis du navigerer til http://yourip:3000, vil du se Nuxt.js-velkomstskjermen, som bekrefter at du kjører i produksjonsmodus.
PM2: Administrer applikasjonen din med letthet
Nå forstår vi det grunnleggende om å kjøre applikasjonen vår for produksjon. Når det gjelder et produksjonsmiljø, foretrekker vi en god måte å holde applikasjonen vår i gang for alltid, starte applikasjonen på nytt når det er nødvendig, og overvåke applikasjonens ressurser. Det er her Process Manager 2 (PM2) kommer inn. PM2 er en Node.js-prosessleder for produksjonsapplikasjoner, som inkluderer mange viktige produksjonsverktøy som lastbalansering, avanserte logger, oppstartsskript og mye mer. Installer først PM2.
npm install pm2 -g
Dette installerer PM2 globalt slik at vi kan bruke det hvor som helst på serveren vår. Når PM2 er ferdig nedlastet, kan vi starte applikasjonen vår.
pm2 start <appfolder>/server/index.js
Merk at vi starter serverfilen som ligger inne i applikasjonsroten vår.
Hvis du vil se ressursene som applikasjonen din bruker, kan du gjøre det med pm2 monitkommandoen. Dette vil få opp et grensesnitt som ligner på ncurses, hvor du nøyaktig kan samle data om applikasjonens RAM, CPU og diskbruk.
Nå vil applikasjonen din kjøre akkurat slik den var da vi kjørte den med npm tidligere, bortsett fra at vi nå har mye mer kontroll når det kommer til produksjonsoptimaliseringer.
Du har nå en Nuxt.js-applikasjonsbygging som er distribuert for produksjon med Node.js og Ubuntu 18.04. Hvis du vil lære mer om Nuxt, og alle dens dybdefunksjoner, kan du gjerne besøke deres offisielle dokumentasjon .