Подесите Кеистоне.јс сервер користећи Нгинк Реверсе Проки на Убунту 16.04

У овом водичу ћемо поставити веб сервер са обрнутим проксијем. ЦМС који ћемо користити је Кеистоне.јс, добро познати оквир веб апликација заснован на Екпресс.јс-у. Обрнути прокси који ћемо користити је Нгинк, који је бесплатни реверзни прокси са отвореним кодом, као и ХТТП сервер. База података коју ћемо користити је МонгоДБ, база података НоСКЛ докумената. Ово ће захтевати да имате подешен домен са записима. Ако немате тај сет, само напред и побрините се за то и вратите се на овај водич.

Инсталирање чвора

Прво ћемо инсталирати Ноде.јс, који је Јавасцрипт интерпретер заснован на Цхроме В8 Јавасцрипт мотору.

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

Инсталирање Нгинк-а

Затим ћемо инсталирати Нгинк, наш обрнути прокси.

sudo apt update
sudo apt install nginx

Ово ће ажурирати листе пакета и инсталирати Нгинк. Када се инсталација заврши, поставићемо наш пројекат чвора.

Покретање нашег Кеистоне пројекта

Креирајте наш пројекат чвора. Да бисте то урадили, једноставно креирајте нову фасциклу.

mkdir website

Затим ћемо креирати нашу package.jsonдатотеку. Да бисте то урадили, једноставно покрените npm initу свом терминалу, попуните поља и одговорите на „ yes“ да потврдите. Када креирате package.jsonдатотеку, ми ћемо инсталирати следеће модуле чвора.

sudo npm install -g generator-keystone
sudo npm install -g yo

Када се заврши са преузимањем, покрените следеће.

yo keystone

Попуните обавезна поља. Тражиће од вас project name, template engine, emailза контролну таблу и тако даље. Ако не знате шта да изаберете, подразумеване вредности ће бити у реду. Након што сте конфигурисали своје кеистоне подешавање, можемо да тестирамо да ли наш сервер ради тако што node keystoneћемо куцати да бисмо покренули апликацију. Подразумевано, ваша апликација ће бити покренута на localhost, на порту 3000. Имајте на уму да ако немате инсталиран МонгоДБ, база података вам неће одмах бити доступна. Можете научити како да га инсталирате касније у водичу.

Ево основног изгледа директоријума за Кеистоне.јс:

  • /lib - Овде ћете чувати своје прилагођене библиотеке и други код.

  • /models- Овде ћете чувати моделе базе података ваше апликације. КеистонеЈС користи МонгоДБ као добављач базе података.

  • /public - Овде ће се чувати ваше статичке датотеке (ЦСС, ЈС, слике и тако даље).

  • /routes/api - Овде ће се чувати АПИ контролери ваше апликације.

  • /routes.views - Контролери приказа апликације ће бити ускладиштени овде.

  • /templates - Овде ће се чувати све датотеке шаблона ваше апликације.

  • /updates - Овде ће се чувати ваше скрипте за миграцију.

  • package.json - Ово је ваша нпм конфигурациона датотека коју је генератор генерисао за нас.

  • keystone.js - Наша главна почетна датотека, покрећемо је када покренемо веб локацију.

Иницијализација наше базе података

Као што је раније поменуто, наша база података коју ћемо користити је МонгоДБ, што је поуздана НоСКЛ, документно оријентисана база података. Ако већ имате инсталиран МонгоДБ, можете прескочити овај одељак. Ако не, ево како да га инсталирате на Убунту 16.04.

Увезите јавни кључ који се користи за монгоДБ пакет.

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

Креирајте датотеку листе која се користи за инсталирање пакета.

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

Ажурирајте своје листе пакета користећи apt.

sudo apt update

Коначно, инсталирајте МонгоДБ.

sudo apt install mongodb-org -y

Када се ова инсталација заврши, покрените МонгоДБ.

sudo service mongod start

Ово ће покренути МонгоДБ процес на порту 27017.

МонгоДБ ће се користити у целој апликацији и користиће се за чување информација које користимо за наше моделе, на пример Userмодел. Кеистоне га користи као своју базу података по избору и у овом тренутку не можете користити друге добављаче база података.

Инсталирање ПМ2

Сада је време да инсталирате ПМ2 (Процесс Манагер 2.) ПМ2 је менаџер процеса за Ноде.јс апликације, у облику нпм модула. Омогућава вам једноставан начин за управљање апликацијама и њихово покретање у позадини. Пошто је у НПМ-у, све што треба да урадимо да га инсталирамо је да покренемо следеће.

sudo npm install pm2 -g

Ово говори нпм-у да га инсталира глобално, тако да га можемо користити било где у нашем систему.

Покретање/управљање апликацијом на ПМ2

Раније смо покренули нашу веб апликацију са node keystone. Са ПМ2 је мало другачије. Сада покрећемо нашу апликацију чворова са следећим.

pm2 start keystone.js

Ово ће додати нашу ПМ2 апликацију на нашу листу процеса и биће приказана мала кутија тако да можете да видите да је она заиста онлајн. Обратите пажњу на оквир означен idза ваш процес. Држите ово близу, јер ћемо касније много тога спомињати.

Да видите евиденцију ваше апликације.

pm2 logs [id]

На пример, pm2 logs 0ако је ово ваша прва ПМ2 апликација.

Да бисте зауставили своју веб апликацију у било ком тренутку.

pm2 stop [id]

Да потпуно избришете своју апликацију.

pm2 delete [id]

ПМ2 чак има и контролну таблу за надгледање ако желите да видите неке основне статистике за своју апликацију, и можете јој приступити помоћу овога.

pm2 monit

Ово ће показати неке основне информације као што су употреба РАМ-а, коришћење ЦПУ-а и време непрекидног рада.

Одлична карактеристика коју ПМ2 нуди је watching. У суштини, гледање је када ПМ2 аутоматски детектује промене у било којој од датотека у истом директоријуму као и ваша почетна датотека, и аутоматски ће поново покренути вашу апликацију. Да бисте то омогућили, једноставно поново покрените апликацију, али јој додајте заставицу за сат.

pm2 restart [id] --watch

Да бисте онемогућили гледање након што је омогућено, једноставно поново покрените исту команду и гледање ће бити онемогућено.

У овом туторијалу напустићемо гледање.

Подешавање вашег обрнутог проксија

Уверите се да имате инсталиран Нгинк. Ако из неког разлога није, погледајте горе наведене кораке.

Подесите подешавања заштитног зида. На Убунту-у ufwје званични заштитни зид. Подразумевано, везе су блокиране на порту 80. Морамо да додамо изузетак за Нгинк на порту 80, на којем ће наша веб апликација радити.

sudo ufw allow 'Nginx HTTP'

Проверите да ли ваш Нгинк сервер ради.

systemctl status nginx

У Activeодељку, ако видите active (running), онда сте спремни. Ако не, можете покушати да поново покренете услугу.

systemctl restart nginx

Избришите подразумевану Нгинк конфигурациону датотеку.

sudo rm /etc/nginx/sites-available/default

Направите нови и једноставно га назовите node.

sudo nano /etc/nginx/sites-available/node

Налепите следеће у датотеку и замените example.comдоменом своје веб локације.

listen 80;

server_name example.com;

    location / {

        proxy_set_header   X-Forwarded-For $remote_addr;

        proxy_set_header   Host $http_host;

        proxy_pass         "http://127.0.0.1:3000";
    }
}

Имајте на уму да proxy_passозначава ИП адресу на којој наша Кеистоне апликација ради локално, а то је localhostна порту 3000. listen 80је порт на који желимо да апликација буде усмерена, а то је у овом случају порт 80.

Затим морамо да креирамо симболичку везу или симболичку везу до фасцикле која се зове sites-enabled. Разлика између sites-enabledи sites-availableје у томе sites-enabledшто Нгинк заправо учитава.

sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node

Сада ће ваша конфигурациона датотека sites-availableбити спремна за употребу и биће учитана са sites-enabled. Да бисте применили конфигурацију тако да ступи на снагу, једноставно поново покрените Нгинк.

sudo systemctl restart nginx

Коначно, поново покрените своју ПМ2 апликацију

pm2 restart [id]

Сада можете да се крећете до свог домена у прегледачу и видећете Welcome to Keystoneекран са панелом на који се можете пријавити.

Ако га видите, онда сте успешно поставили Ноде.јс производни веб сервер. Ако нисте, онда сте можда учинили неки корак погрешно и можда ћете желети да се вратите и пажљиво пратите сваки корак.

Можете сазнати више о Нгинк-у тако што ћете посетити њихову веб локацију .

Надам се да сте уживали у овом туторијалу и надам се да вам је ово помогло да поставите сопствени веб сервер за производњу на вашем Вултр ВПС-у.


Како инсталирати Тхелиа 2.3 на Дебиан 9

Како инсталирати Тхелиа 2.3 на Дебиан 9

Користите другачији систем? Тхелиа је алатка отвореног кода за креирање веб локација за е-пословање и управљање онлајн садржајем написаним у ПХП-у. Тхелиа изворни код и

Како инсталирати Мицровебер на ЦентОС 7

Како инсталирати Мицровебер на ЦентОС 7

Користите другачији систем? Мицровебер је ЦМС и онлајн продавница отвореног кода. Мицровебер изворни код се налази на ГитХуб-у. Овај водич ће вам показати

Инсталирање Мицровебер-а на Убунту 16.04

Инсталирање Мицровебер-а на Убунту 16.04

Користите другачији систем? Мицровебер је ЦМС и онлајн продавница отвореног кода. Мицровебер изворни код се налази на ГитХуб-у. Овај водич ће вам показати

Како инсталирати дотЦМС на Убунту 16.04

Како инсталирати дотЦМС на Убунту 16.04

Користите другачији систем? ДотЦМС је систем за управљање садржајем отвореног кода за предузећа написан на Јави. Садржи скоро све потребне карактеристике т

Како инсталирати Пагекит 1.0 ЦМС на ФрееБСД 11 ФАМП ВПС

Како инсталирати Пагекит 1.0 ЦМС на ФрееБСД 11 ФАМП ВПС

Користите другачији систем? Пагекит 1.0 ЦМС је прелеп, модуларан, проширив и лаган, бесплатан систем за управљање садржајем отвореног кода (ЦМС) са

Како инсталирати БигТрее ЦМС на Федора 26 ЛАМП ВПС

Како инсталирати БигТрее ЦМС на Федора 26 ЛАМП ВПС

Користите другачији систем? БигТрее ЦМС 4.2 је брз и лаган, бесплатан и отвореног кода, систем за управљање садржајем (ЦМС) за предузећа са обимним

Инсталирање Пагекит ЦМС-а на Убунту 16.04 ЛТС

Инсталирање Пагекит ЦМС-а на Убунту 16.04 ЛТС

Користите другачији систем? Пагекит је ЦМС отвореног кода написан у ПХП-у. Изворни код Пагекит-а се налази на ГитХуб-у. Овај водич ће вам показати како да инсталирате

Како инсталирати ПироЦМС на Убунту 16.04

Како инсталирати ПироЦМС на Убунту 16.04

Користите другачији систем? ПироЦМС је ЦМС отвореног кода написан у ПХП-у. ПироЦМС изворни код се налази на ГитХуб-у. У овом водичу добро прошетајте кроз цео

Како инсталирати Субрион 4.1 ЦМС на ФрееБСД 11 ФАМП ВПС

Како инсталирати Субрион 4.1 ЦМС на ФрееБСД 11 ФАМП ВПС

Користите другачији систем? Субрион 4.1 ЦМС је моћан и флексибилан систем за управљање садржајем отвореног кода (ЦМС) који доноси интуитиван и јасан садржај

Како инсталирати Бацкдроп ЦМС 1.8.0 на Дебиан 9 ЛАМП ВПС

Како инсталирати Бацкдроп ЦМС 1.8.0 на Дебиан 9 ЛАМП ВПС

Користите другачији систем? Бацкдроп ЦМС 1.8.0 је једноставан и флексибилан, прилагођен мобилним уређајима, бесплатан и отворени систем за управљање садржајем (ЦМС) који нам омогућава

Како инсталирати Роадиз ЦМС на Дебиан 9

Како инсталирати Роадиз ЦМС на Дебиан 9

Користите другачији систем? Увод Роадиз је модеран ЦМС дизајниран за руковање многим врстама услуга. Засновано на Симфони компонентама и Доцтрине ОРМ, тј

Инсталирање Мицровебер-а на Дебиан 9

Инсталирање Мицровебер-а на Дебиан 9

Користите другачији систем? Мицровебер је ЦМС и онлајн продавница отвореног кода. Мицровебер изворни код се налази на ГитХуб-у. Овај водич ће вам показати

Како инсталирати Грав ЦМС на Федора 28

Како инсталирати Грав ЦМС на Федора 28

Користите другачији систем? Грав је ЦМС отвореног кода са равним датотекама написан у ПХП-у. Грав изворни код је јавно хостован на ГитХуб-у. Овај водич ће вам показати како т

Како инсталирати Грав ЦМС на Дебиан 9

Како инсталирати Грав ЦМС на Дебиан 9

Користите другачији систем? Грав је ЦМС отвореног кода са равним датотекама написан у ПХП-у. Грав изворни код је јавно хостован на ГитХуб-у. Овај водич ће вам показати како т

Како инсталирати Аутомад ЦМС на ЦентОС 7

Како инсталирати Аутомад ЦМС на ЦентОС 7

Користите другачији систем? Аутомад је систем за управљање садржајем заснован на датотекама отвореног кода (ЦМС) и механизам за шаблоне написан у ПХП-у. Аутомад изворни код и

Како инсталирати Рането на Убунту 17.10

Како инсталирати Рането на Убунту 17.10

Рането је бесплатна база знања отвореног кода, изграђена на Ноде.јс која је лака за подешавање и коришћење, као и за администрацију. Категорије и странице ар

Како инсталирати Тхелиа 2.3 на Убунту 16.04

Како инсталирати Тхелиа 2.3 на Убунту 16.04

Користите другачији систем? Тхелиа је алатка отвореног кода за креирање веб локација за е-пословање и управљање онлајн садржајем написаним у ПХП-у. Тхелиа изворни код и

Како инсталирати Оцтобер 1.0 ЦМС на Дебиан 9 ЛАМП ВПС

Како инсталирати Оцтобер 1.0 ЦМС на Дебиан 9 ЛАМП ВПС

Користите другачији систем? Октобар 1.0 ЦМС је једноставан и поуздан, бесплатан и отворени систем за управљање садржајем (ЦМС) изграђен на Ларавел оквиру

Како инсталирати ИмпрессПагес ЦМС 5.0 на Убунту 16.04 ЛАМП ВПС

Како инсталирати ИмпрессПагес ЦМС 5.0 на Убунту 16.04 ЛАМП ВПС

Користите другачији систем? ИмпрессПагес ЦМС 5.0 је једноставан и ефикасан, бесплатан и отвореног кода, прилагођен кориснику, заснован на МВЦ-у, систем за управљање садржајем (ЦМС)

Како инсталирати ЦМС Маде Симпле 2.2 на Дебиан 9 ЛАМП ВПС

Како инсталирати ЦМС Маде Симпле 2.2 на Дебиан 9 ЛАМП ВПС

Користите другачији систем? ЦМС Маде Симпле 2.2 је флексибилан и проширив, бесплатан и отворени систем за управљање садржајем (ЦМС) интелигентно дизајниран да б

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више