Meteor.js-verkkosovelluksen asentaminen MongoDB:n ja Apachen kanssa Ubuntu 16.04 LTS:ssä

Meteor.js on avoimen lähdekoodin JavaScript-kehys, joka on kirjoitettu Node.js:ää ajatellen. Se on suosittu, koska sen näkemys rakentaa verkkosovelluksia puhtaalla JavaScriptillä. Meteor sisältää etupään JavaScript-tuen, joka toimii verkkoselaimessa, sekä tausta-JavaScriptin, joka toimisi isäntäpalvelimella. Se integroituu erittäin hyvin käyttöliittymän JavaScript-kehyksiin, kuten React ja Angular.js, sekä MongoDB, suosittu NoSQL-tietokanta. Muutama suuri syy valita Meteor.js ovat seuraavat:

  • Meteor.js on täydellinen pinokehys. Joten sen avulla saat kaiken mitä koskaan tarvitset: tietokannan, käyttöliittymän, taustajärjestelmän. Meteor tekee hämmästyttävää työtä yhdistääkseen kaiken.

  • Nopeus. Meteorin intuitiivinen pakettijärjestelmä antaa sinulle monia työkaluja, joita saatat tarvita sovelluksesi viimeistelyyn.

  • Sillä on hyvä tuki Meteor Developer Groupilta sekä muilta sitä käyttäviltä kehittäjiltä. Voit helposti selvittää mahdolliset ongelmasi ja ratkaista ne nopeasti.

Tässä opetusohjelmassa saavutamme seuraavat tavoitteet Ubuntu 16.04:ssä:

  • Asenna Node.js, Javascript-ajoaikamme.

  • Asenna Meteor.js.

  • Asenna MongoDB, Meteorin tietokanta.

  • Asenna Apachevalitsemamme käänteinen välityspalvelin ja määritä verkkotunnuksemme tarvittaessa.

  • Testaa verkkosivustoamme.

  • Asenna verkkosivustomme tuotantoa varten.

Node.js:n asentaminen

Sinun on ensin asennettava Node.js, joka on JavaScript-tulkkimme, ja Meteorin ydin. Sen avulla voimme käyttää Meteoria ja muita Node.js-sovelluksia, joita meillä saattaa olla tulevaisuudessa. Tässä tilanteessa asennamme Node.js 8:n. Aloita lataus suorittamalla seuraava päätelaitteellasi.

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

Odota, että lataus ja asennus on valmis.

MongoDB:n asennus

Seuraavaksi asennamme tietokantamme: MongoDB. MongoDB on ilmainen, avoimen lähdekoodin NoSQL-dokumenttitietokanta ja Meteorin valitsema tietokanta. Se käyttää asiakirjoissaan JSON-tyyppistä muotoa toisin kuin perinteisen SQL-tietokannan jäsennellyt taulukot.

Tuo APT(Advanced Packaging Terminal) käyttämä MongoDB-julkinen avain . Tämä antaa APT:lle mahdollisuuden tarkistaa paketin; tässä tapauksessa MongoDB.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

Luo tarvittava luettelotiedosto Ubuntu 16.04:lle.

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

Aloita MongoDB:n asennus ja odota asennuksen päättymistä.

sudo apt update && sudo apt install mongodb-org -y

Avaa systemd-palvelu muokkausta varten.

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

Suorita systemd-palvelu kopioimalla ja liittämällä seuraava.

[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf

[Install]
WantedBy=multi-user.target

Käytä " Control-O" tallentaaksesi ja " Control-X" poistuaksesi.

Suorita MongoDB systemd -palvelu kirjoittamalla sudo systemctl start mongodbterminaaliin.

Varmista, että se on käynnistynyt onnistuneesti kirjoittamalla seuraava.

sudo systemctl status mongodb

Näet, että palvelu on aktiivinen.

Apache2:n asennus ja käyttöönotto

Seuraavaksi asennamme Apachen. Apache on ilmainen ja avoimen lähdekoodin verkkopalvelinohjelmisto, joka toimii myös käänteisenä välityspalvelimena, jota hyödynnämme tässä opetusohjelmassa. Käänteinen välityspalvelin tarvitaan Meteor.js-sovelluksemme sitomiseen port 80. Node.js estää sovelluksia toimimasta kyseisessä portissa ilman pääkäyttäjän oikeuksia. Apache toimii yhtä roothyvin automaattisesti kuin sitoutuu sovellukseen port 80, joten meidän ei tarvitse huolehtia siitä, kun on aika käynnistää verkkosivustomme.

Asenna Apache.

sudo apt update && sudo apt install apache2

Jotta voimme sallia pääsyn ulkopuolisiin verkkoportteihin, kuten port 80, meidän on määritettävä palomuurimme Apachea varten. Teemme tämän UFW(yksinkertaisen palomuurin) kautta.

sudo ufw allow 'Apache Full'

Tämä sallii pääsyn Apache Fullprofiiliin " ". Tämä antaa meille saapuvan liikenteen osoitteeseen port 80, jolla sovelluksemme ajetaan.

Meteor.js:n asentaminen ja perussovelluksemme luominen

Nyt asennamme verkkokehyksemme: Meteor.js. Käytämme Meteor-tiimin toimittamaa yksinkertaista bash-skriptiä sen asentamiseen.

curl https://install.meteor.com/ | sh

Odota asennuksen päättymistä. Pohjimmiltaan skripti lataa Meteorin viralliselta verkkosivustolta ja asentaa sen maailmanlaajuisesti, jotta voimme käyttää sitä missä tahansa. Kun se on valmis, voimme luoda sovellushakemistomme. Meteorilla on kätevä pieni työkalu, jota voimme käyttää siihen, nimeltä meteor create. Luo sovellushakemisto kirjoittamalla seuraava.

meteor create <projectname>

Kansio luodaan määritetyllä nimellä ( <projectname>).

Asetetaan Apache-käänteisvälityspalvelinta

Nyt kun sovellushakemistomme on määritetty, voimme jatkaa käänteisen välityspalvelimen määrittämistä. Apache käyttää moduulia nimeltä mod_proxy, joka toteuttaa Apachelle välityspalvelimen.

sudo apt-get install libapache2-mod-proxy-html libxml2-dev -y

Tämä asentaa moduulin ja antaa sen Apachen käytettäväksi.

Seuraavaksi meidän on otettava käyttöön kaikki tarvittavat moduulit, joita Apache tarvitsee suorittaa. Teemme tämän a2enmodtyökalulla, joka mahdollistaa moduulit Apachelle. Näiden moduulien avulla voimme hyödyntää käänteistä välityspalvelinta. Kirjoita nämä komennot päätteeseen.

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html

Sen jälkeen meidän on estettävä oletusarvoisen Apache-sivuston käynnistyminen, jotta voimme käynnistää oman. Muussa tapauksessa oletusarvoinen Apache-sovellus ohittaa meidän. Voit poistaa oletussivuston käytöstä suorittamalla seuraavan komennon.

sudo a2dissite 000-default

Nyt luomme virtuaalisen isäntätiedoston. Voit tehdä sen avaamalla tekstieditorin.

sudo nano /etc/apache2/sites-available/<projectname>

Kopioi ja liitä seuraava.

<VirtualHost *:80>
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
  ProxyPreserveHost On
  # Servers to proxy the connection, or
  # List of application servers Usage
  ProxyPass / http://0.0.0.0:3000/
 ServerName localhost
</VirtualHost>
  • VirtualHost *:80: Käskee Apachea kytkeytymään porttiin 80, jonka haluamme verkkosovelluksellemme.

  • ProxyPass: Sen sivuston IP-osoite, jonka haluat välittää käänteiselle välityspalvelimelle. Tämä on todennäköisesti VPS:si IP-osoite

  • ServerName: Palvelimesi nimi (oletusnimi on yleensä localhost).

Kun olet määrittänyt tarvittavat asetukset, käytä " Control-O" tallentaaksesi ja " Control-X" poistuaksesi.

Sivuston käyttäminen ensimmäistä kertaa

Testaaksesi ja varmistaaksesi, että verkkosivusto on käynnissä, kirjoita seuraava projektihakemistoon.

meteor

Näet seuraavan tulosteen, joka osoittaa, että sivustosi on käynnistynyt onnistuneesti.

=> App running at: http://localhost:3000/

Huomaa, että Meteor kuuntelee oletusarvoisesti port 3000.

Sivustomme asettaminen tuotantoa varten

Varmistaaksemme, että sovelluksemme voi pysyä käynnissä, käytämme järjestelmäpalvelua. Samoin kuin teimme yllä MongoDB:n kanssa, tämä järjestelmäpalvelu varmistaa, että verkkosivustomme käynnistyy aina, kun järjestelmämme käynnistyy, ja pysyy käynnissä. Se käynnistää myös sovelluksemme uudelleen, jos se kaatuu jostain syystä. Asettaaksesi järjestelmäpalvelumme, kirjoita seuraava terminaaliin.

sudo nano /etc/systemd/system/<projectname>.service

Tältä haluat tiedostosi näyttävän.

[Service]
WorkingDirectory=/home/<yourusername>/<projectname>
ExecStart=/usr/local/bin/meteor --production
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=<projectName>
User=<yourusername>
Environment=NODE_ENV=production
Environment=PWD=/home/<yourusername>/<projectname>
Environment=PORT=3000
Environment=HTTP_FORWARDED_COUNT=1

Huomautus : Muista korvata projectnamese projektin nimellä ja yourusernameVPS:n käyttäjätunnuksella.

Tässä on joitain avainlinjoja, jotka sinun tulee pitää mielessä.

  • WorkingDirectory: Sovelluksesi hakemisto.

  • Restart: Käynnistetäänkö uudelleen vai ei, sovellus pysähtyy mistä tahansa syystä.

  • User: Sinun käyttäjä nimesi.

  • Environment=PWD: Sama kuin WorkingDirectory.

  • Environment=PORT: Portti, jossa sovelluksesi on käynnissä. Oletus on 3000.

Tallenna ja sulje tiedosto.

Nyt otamme palvelun käyttöön ja käynnistämme sen.

sudo systemctl enable <projectname>.service

Missä <projectname>on luomamme palvelutiedoston nimi.

Sitten aloitamme palvelun.

sudo systemctl start <projectname>.service

Hakemuksesi alkaa. Varmista, että se on käynnistynyt, suorittamalla seuraava.

sudo systemctl status <projectname>

Näet, että se on aktiivinen ja varmistaa, että palvelu on käynnistynyt onnistuneesti.

Seuraavaksi tutustumme nettisivuihimme. Siirry valitsemassasi verkkoselaimessa IP-osoitteeseesi.

http://your-server-ip/

Näet Meteor-näytenäytön, joka vahvistaa, että olet tehnyt kaiken oikein.

Sovelluksemme hallinta

Nyt kun olemme käynnistäneet sovelluksemme, meidän on hallittava sitä.

Sovellusta käynnistetään uudelleen

sudo systemctl restart <projectname>

Sovelluksen pysäyttäminen

sudo systemctl stop <projectname>

Sovelluksen tilan tarkastelu

sudo systemctl status <projectname>

Lokien katselu

journalctl -u <projectname>

Olet nyt onnistuneesti määrittänyt MongoDB:n, Apachen ja Meteorin ja luonut Meteor.js-verkkopalvelimen tuotantoa varten. Nyt loput on sinun tehtäväsi: voit suunnitella verkkosivustosi etu- ja takaosaan. Sinulla on pääsy MongoDB:hen tallentaaksesi kaikki tarvitsemasi tiedot, ja Node.js:ään, joka tarjoaa useita Node Package Managerin ( NPM) kautta saatavia moduuleja taustajärjestelmän vahvistamiseksi entisestään. Saat lisätietoja vierailemalla Meteor-sivustolla , jossa voit oppia lisää räätälöimään verkkosivustoasi mieleiseksesi. Voit myös viitata MongoDB-dokumentaatioon , kun käsittelet tietokantatoimintoja.

Jätä kommentti

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja