Hvernig á að setja upp Meteor.js vefforrit með MongoDB og Apache á Ubuntu 16.04 LTS

Meteor.js er opinn JavaScript rammi skrifaður með Node.js í huga. Það er vinsælt vegna skoðunar þess að byggja vefforrit í hreinu JavaScript. Meteor er með JavaScript-stuðning að framan sem keyrir í vafranum, sem og bakenda JavaScript, sem myndi keyra á hýsilþjóninum. Það samþættist mjög vel við framenda JavaScript ramma, eins og React og Angular.js, auk MongoDB, vinsæls NoSQL gagnagrunns. Nokkrar stórar ástæður fyrir því að velja Meteor.js eru eftirfarandi:

  • Meteor.js er fullur stafla ramma. Svo með því færðu allt sem þú gætir þurft: Gagnagrunn, framenda, bakenda. Meteor gerir ótrúlegt starf við að tengja þetta allt saman.

  • Hraði. Leiðandi pakkakerfi Meteor gefur þér mörg verkfæri sem þú gætir þurft til að fullkomna forritið þitt.

  • Það hefur góðan stuðning frá Meteor Developer Group, sem og öðrum þróunaraðilum sem nota það. Þú munt auðveldlega geta fundið út öll vandamál sem þú gætir lent í og ​​leyst þau fljótt.

Í þessari kennslu munum við ná eftirfarandi markmiðum á Ubuntu 16.04:

  • Settu upp Node.js, Javascript keyrslutímann okkar.

  • Settu upp Meteor.js.

  • Settu upp MongoDB, gagnagrunn Meteor að eigin vali.

  • Settu upp Apache, öfuga proxy okkar að eigin vali, og settu upp lénið okkar ef við á.

  • Prófaðu vefsíðuna okkar.

  • Settu upp vefsíðu okkar fyrir framleiðslu.

Setur upp Node.js

Þú þarft fyrst að setja upp Node.js, sem er JavaScript túlkurinn okkar, og kjarna Meteor. Það gerir okkur kleift að keyra Meteor og önnur Node.js forrit sem við gætum haft í framtíðinni. Í þessum aðstæðum munum við setja upp Node.js 8. Til að hefja niðurhalið skaltu einfaldlega keyra eftirfarandi í flugstöðinni þinni.

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

Bíddu þar til niðurhalinu og uppsetningunni er lokið.

Setur upp MongoDB

Næst munum við setja upp gagnagrunninn okkar: MongoDB. MongoDB er ókeypis, opinn NoSQL skjalagagnagrunnur og gagnagrunnur Meteor að eigin vali. Það notar JSON-líkt snið fyrir skjöl sín, öfugt við skipulagðar töflur í hefðbundnum SQL gagnagrunni.

Flyttu inn MongoDB almenningslykilinn sem notaður er af APT(Advanced Packaging Terminal). Þetta gerir APT kleift að staðfesta pakkann; í þessu tilviki, MongoDB.

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

Búðu til nauðsynlega listaskrá fyrir Ubuntu 16.04.

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

Byrjaðu uppsetninguna á MongoDB og bíddu eftir að uppsetningunni lýkur.

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

Opnaðu systemd þjónustuna til að breyta.

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

Afritaðu og límdu eftirfarandi til að ljúka við systemd þjónustuna.

[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

Notaðu " Control-O" til að vista og " Control-X" til að hætta.

Keyrðu MongoDB systemd þjónustuna með því að slá sudo systemctl start mongodbinn flugstöðina þína.

Til að staðfesta að það hafi ræst vel skaltu slá inn eftirfarandi.

sudo systemctl status mongodb

Þú munt sjá að þjónustan er virk.

Að setja upp og setja upp Apache2

Næst munum við setja upp Apache. Apache er ókeypis og opinn hugbúnaður fyrir netþjóna, sem einnig virkar sem öfugur umboð, sem er það sem við munum nota í þessari kennslu. Öfugt umboð er nauðsynlegt til að binda Meteor.js forritið okkar við port 80. Node.js hindrar að forrit keyri á þeirri höfn án rótaraðgangs. Apache keyrir jafn rootsjálfkrafa og tengist port 80, svo við þurfum ekki að hafa áhyggjur af því þegar kemur að því að keyra vefsíðuna okkar.

Settu upp Apache.

sudo apt update && sudo apt install apache2

Til þess að leyfa aðgang að utanaðkomandi vefgáttum eins og port 80, þurfum við að stilla eldvegginn okkar fyrir Apache. Við gerum þetta í gegnum UFW(Óbrotinn eldvegg).

sudo ufw allow 'Apache Full'

Þetta mun leyfa aðgang að " Apache Full" prófílnum. Þetta gefur okkur komandi umferð til port 80, sem er það sem forritið okkar mun keyra á.

Að setja upp Meteor.js og búa til grunnforritið okkar

Nú munum við setja upp veframmann okkar: Meteor.js. Við munum nota einfalt bash forskrift sem Meteor teymið veitir til að setja það upp.

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

Bíddu eftir að uppsetningunni lýkur. Í grundvallaratriðum það sem handritið gerir er að það hleður niður Meteor af opinberu vefsíðunni og setur það upp á heimsvísu, svo við getum notað það hvar sem er. Þegar því er lokið getum við búið til umsóknarskrána okkar. Meteor er með handhægt lítið tól sem við getum notað til að gera það, sem kallast meteor create. Til að búa til forritaskrána þína skaltu slá inn eftirfarandi.

meteor create <projectname>

Mappan verður búin til með nafninu sem tilgreint er ( <projectname>).

Að setja upp Apache andstæða proxy okkar

Nú þegar við höfum sett upp forritaskrána okkar getum við haldið áfram að setja upp öfuga umboðið okkar. Apache notar einingu sem heitir mod_proxy, sem útfærir umboð fyrir Apache.

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

Þetta mun setja upp eininguna og gera hana aðgengilega fyrir Apache til notkunar.

Næst verðum við að virkja allar nauðsynlegar einingar sem Apache þarf til að keyra. Við munum gera þetta með a2enmod, tóli sem gerir einingar fyrir Apache. Þessar einingar gera okkur kleift að nýta öfugt umboð. Sláðu einfaldlega þessar skipanir inn í flugstöðina þína.

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

Eftir það verðum við að slökkva á sjálfgefna Apache-síðunni frá því að ræsast, svo við getum ræst okkar eigin. Annars mun sjálfgefið Apache forrit hnekkja okkar. Til að slökkva á sjálfgefna síðunni skaltu einfaldlega keyra eftirfarandi.

sudo a2dissite 000-default

Nú munum við búa til sýndarhýsingarskrána okkar. Til að gera það skaltu bara opna textaritil.

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

Afritaðu og límdu eftirfarandi.

<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: Segir Apache að tengja við port 80, sem er það sem við viljum fyrir vefforritið okkar.

  • ProxyPass: IP-tala síðunnar sem þú vilt framsenda í öfuga proxy. Þetta mun líklegast vera IP VPS þinnar

  • ServerName: Nafn netþjónsins þíns (sjálfgefið nafn er venjulega localhost).

Þegar þú ert búinn að stilla nauðsynlegar stillingar skaltu nota " Control-O" til að vista og " Control-X" til að hætta.

Að keyra síðuna í fyrsta skipti

Til að prófa og ganga úr skugga um að vefsíðan sé í gangi skaltu slá eftirfarandi inn í verkefnaskrána.

meteor

Þú munt sjá eftirfarandi úttak sem sýnir að vefsvæðið þitt hefur byrjað með góðum árangri.

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

Athugaðu að Meteor hlustar sjálfgefið á port 3000.

Að setja upp vefsíðu okkar fyrir framleiðslu

Til að tryggja að appið okkar geti haldið áfram að keyra munum við nota kerfisþjónustu. Svipað og við gerðum hér að ofan með MongoDB, mun þessi kerfisþjónusta sjá til þess að vefsíðan okkar ræsist hvenær sem kerfið okkar byrjar og haldi áfram að keyra. Það mun einnig endurræsa forritið okkar, ef það hrynur af hvaða ástæðu sem er. Til að setja upp systemd þjónustu okkar skaltu slá inn eftirfarandi í flugstöðinni þinni.

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

Hér er hvernig þú vilt að skráin þín líti út.

[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

Athugið : Ekki gleyma að skipta projectnameút fyrir nafn verkefnisins og yourusernamemeð notandanafni VPS.

Hér eru nokkrar lykillínur sem þú ættir að hafa í huga.

  • WorkingDirectory: Skráin yfir forritið þitt.

  • Restart: Hvort sem endurræsa eigi notkun þess stöðvast af hvaða ástæðu sem er.

  • User: Notandanafnið þitt.

  • Environment=PWD: Eins og WorkingDirectory.

  • Environment=PORT: Gáttin sem forritið þitt keyrir á. Sjálfgefið er 3000.

Vistaðu og lokaðu skránni.

Nú munum við virkja og hefja þjónustuna.

sudo systemctl enable <projectname>.service

Hvar <projectname>er nafnið á þjónustuskránni sem við bjuggum til.

Þá munum við hefja þjónustuna.

sudo systemctl start <projectname>.service

Umsóknin þín mun hefjast. Til að staðfesta að það hafi verið ræst skaltu bara keyra eftirfarandi.

sudo systemctl status <projectname>

Þú munt sjá að það er virkt og staðfestir að þjónustan hafi byrjað með góðum árangri.

Næst munum við skoða heimasíðuna okkar. Farðu að IP tölu þinni í vafranum þínum að eigin vali.

http://your-server-ip/

Þú munt sjá Meteor sýnishornið, sem staðfestir að þú hafir gert allt rétt.

Stjórna umsókn okkar

Nú þegar við höfum hafið umsókn okkar þurfum við að stjórna því.

Endurræsir forritið þitt

sudo systemctl restart <projectname>

Stöðva forritið

sudo systemctl stop <projectname>

Skoða stöðu forritsins

sudo systemctl status <projectname>

Skoða logs

journalctl -u <projectname>

Þú hefur nú stillt MongoDB, Apache og Meteor með góðum árangri og búið til Meteor.js vefþjón til framleiðslu. Nú er restin undir þér komið, að hanna vefsíðuna þína á framenda og bakenda. Þú hefur aðgang að MongoDB til að geyma öll gögn sem þú gætir þurft og Node.js, sem býður upp á margs konar einingar sem eru fáanlegar í gegnum Node Package Manager ( NPM) til að styrkja stuðninginn þinn enn frekar. Fyrir frekari skjöl, ekki hika við að heimsækja Meteor síðuna , þar sem þú getur frekar lært hvernig á að sérsníða vefsíðuna þína að þínum smekk. Þú gætir líka vísað í MongoDB skjölin þegar þú ert að fást við gagnagrunnsaðgerðir.


Settu upp Cacti á Debian Jessie

Settu upp Cacti á Debian Jessie

Inngangur Cacti er opinn vöktunar- og grafatól sem byggir að fullu á RRD gögnum. Í gegnum Cacti geturðu fylgst með næstum hvers kyns tækjum

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Inngangur Lets Encrypt er vottunaryfirvaldsþjónusta sem býður upp á ókeypis TLS/SSL vottorð. Uppsetningarferlið er einfaldað af Certbot,

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Að nota annað kerfi? Hvað er Tekkit Classic? Tekkit Classic er modpack fyrir leikinn sem allir þekkja og elska; Minecraft. Það inniheldur eitthvað af ver

Settu upp iRedMail á Debian Wheezy

Settu upp iRedMail á Debian Wheezy

Að nota annað kerfi? Þessi kennsla mun sýna þér hvernig á að setja upp hópbúnaðinn iRedMail á nýrri uppsetningu á Debian Wheezy. Þú ættir að nota þjóna

Að búa til Jekyll blogg á Ubuntu 16.04

Að búa til Jekyll blogg á Ubuntu 16.04

Að nota annað kerfi? Jekyll er frábær valkostur við WordPress til að blogga eða deila efni. Það krefst enga gagnagrunna og það er mjög auðvelt i

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

PHP og tengdir pakkar eru algengustu íhlutirnir þegar vefþjónn er notaður. Í þessari grein munum við læra hvernig á að setja upp PHP 7.0 eða PHP 7.1 o

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

1. Virtualmin/Webmin Virtualmin er öflugt og sveigjanlegt stjórnborð fyrir vefhýsingu fyrir Linux og UNIX kerfi byggt á hinum vel þekkta Open Source vefgrunni

Setja upp Yii forrit á Ubuntu 14.04

Setja upp Yii forrit á Ubuntu 14.04

Yii er PHP ramma sem gerir þér kleift að þróa forrit hraðar og auðveldlega. Uppsetning Yii á Ubuntu er einföld, þar sem þú munt læra nákvæmlega

Notkun Skjár á Ubuntu 14.04

Notkun Skjár á Ubuntu 14.04

Skjár er forrit sem leyfir margs konar notkun flugstöðvarlota innan eins glugga. Þetta gerir þér kleift að líkja eftir mörgum flugstöðvum gluggum þar sem það ma

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Þessi kennsla útskýrir hvernig á að setja upp DNS netþjón með Bind9 á Debian eða Ubuntu. Í gegnum greinina skaltu skipta út-léninu þínu.com í samræmi við það. Á þ

Notkun Logrotate til að stjórna annálaskrám

Notkun Logrotate til að stjórna annálaskrám

Inngangur Logrotate er Linux tól sem einfaldar stjórnun annálaskráa. Það keyrir venjulega einu sinni á dag í gegnum cron-vinnu og stjórnar annálagrunni

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Settu upp Red5 Media Server á Ubuntu 16.04

Settu upp Red5 Media Server á Ubuntu 16.04

Að nota annað kerfi? Red5 er opinn uppspretta miðlara útfærður í Java sem gerir þér kleift að keyra Flash fjölnotendaforrit eins og straumspilun í beinni

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Í þessari grein munum við sjá hvernig á að setja saman og setja upp Nginx mainline frá opinberum heimildum Nginx með PageSpeed ​​einingunni, sem gerir þér kleift að

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Að nota annað kerfi? Vanilla forum er opinn uppspretta spjallforrit skrifað í PHP. Það er fullkomlega sérhannaðar, auðvelt í notkun og styður utanaðkomandi

Hvernig á að setja upp Gitea á Debian 9

Hvernig á að setja upp Gitea á Debian 9

Að nota annað kerfi? Gitea er annað opinn uppspretta, sjálfhýst útgáfustýringarkerfi knúið af Git. Gitea er skrifað á Golang og er

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira