Инсталирање Ноде.јс
Инсталирање МонгоДБ-а
Инсталирање и подешавање Апацхе2
Инсталирање Метеор.јс и креирање наше основне апликације
Подешавање нашег Апацхе обрнутог проксија
Покретање сајта по први пут
Постављање наше веб странице за производњу
Управљање нашом апликацијом
Метеор.јс је опен-соурце, ЈаваСцрипт оквир написан са Ноде.јс на уму. Популаран је због свог погледа на прављење веб апликација у чистом ЈаваСцрипт-у. Метеор укључује фронт-енд ЈаваСцрипт подршку која ради у веб претраживачу, као и бацк-енд ЈаваСцрипт, који би радио на хост серверу. Веома се добро интегрише са предњим ЈаваСцрипт оквирима, као што су Реацт и Ангулар.јс, као и МонгоДБ, популарном НоСКЛ базом података. Неколико великих разлога да одаберете Метеор.јс су следећи:
Метеор.јс је оквир пуног стека. Дакле, уз њега добијате све што вам икада затреба: базу података, фронт енд, бацкенд. Метеор ради невероватан посао повезујући све заједно.
Брзина. Метеоров интуитивни систем пакета вам даје многе алате који ће вам можда требати да усавршите своју апликацију.
Има добру подршку од Метеор Девелопер Гроуп, као и од колега програмера који га користе. Лако ћете моћи да откријете све проблеме које имате и брзо их решите.
У овом водичу ћемо постићи следеће циљеве на Убунту 16.04:
Инсталирај Node.js, наше Јавасцрипт време извођења.
Инсталирај Meteor.js.
Инсталирај MongoDB, Метеорову базу података по избору.
Инсталирајте Apache, наш обрнути прокси по избору, и подесите наш домен ако је применљиво.
Тестирајте нашу веб страницу.
Подесите нашу веб страницу за производњу.
Инсталирање Ноде.јс
Прво ћете морати да инсталирате Ноде.јс, који је наш ЈаваСцрипт тумач и Метеорово језгро. То ће нам омогућити да покренемо Метеор и друге Ноде.јс апликације које ћемо можда имати у будућности. У овој ситуацији, ми ћемо инсталирати Ноде.јс 8. Да бисте започели преузимање, једноставно покрените следеће у свом терминалу.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Сачекајте да се преузимање и инсталација доврше.
Инсталирање МонгоДБ-а
Затим ћемо инсталирати нашу базу података: МонгоДБ. МонгоДБ је бесплатна, отвореног кода НоСКЛ база података докумената и Метеор-ова база података по избору. За своје документе користи формат сличан ЈСОН-у, за разлику од структурираних табела у традиционалној СКЛ бази података.
Увезите МонгоДБ јавни кључ који користи APT(Напредни терминал за паковање). Ово омогућава АПТ-у да верификује пакет; у овом случају, МонгоДБ.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Креирајте потребну датотеку листе за Убунту 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
Покрените инсталацију МонгоДБ-а и сачекајте да се инсталација заврши.
sudo apt update && sudo apt install mongodb-org -y
Отворите системд сервис за уређивање.
sudo nano /etc/systemd/system/mongodb.service
Копирајте и налепите следеће да бисте довршили услугу системд.
[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
Користите " Control-O" да сачувате и " Control-X" да изађете.
Покрените МонгоДБ системд услугу тако што ћете укуцати sudo systemctl start mongodbсвој терминал.
Да бисте проверили да ли је успешно покренут, откуцајте следеће.
sudo systemctl status mongodb
Видећете да је услуга активна.
Инсталирање и подешавање Апацхе2
Затим ћемо инсталирати Апацхе. Апацхе је бесплатни софтвер за веб сервер отвореног кода, који такође функционише као обрнути прокси, што ћемо користити у овом водичу. Обрнути прокси је потребан да повежете нашу Метеор.јс апликацију са port 80. Ноде.јс блокира покретање апликација на том порту без роот приступа. Апацхе се покреће rootаутоматски као и везује се за port 80, тако да нећемо морати да бринемо о томе када дође време да покренемо нашу веб локацију.
Инсталирајте Апацхе.
sudo apt update && sudo apt install apache2
Да бисмо омогућили приступ спољним веб портовима као што је port 80, морамо да конфигуришемо наш заштитни зид за Апацхе. Ово радимо преко UFW(некомпликованог заштитног зида).
sudo ufw allow 'Apache Full'
Ово ће омогућити приступ Apache Fullпрофилу " ". Ово нам даје долазни саобраћај до port 80, на чему ће наша апликација радити.
Инсталирање Метеор.јс и креирање наше основне апликације
Сада ћемо инсталирати наш веб оквир: Метеор.јс. Користићемо једноставну басх скрипту коју је обезбедио Метеор тим да бисмо је инсталирали.
curl https://install.meteor.com/ | sh
Сачекајте да се инсталација заврши. У основи, скрипта ради је да преузима Метеор са званичне веб странице и инсталира га глобално, тако да можемо да га користимо било где. Када се заврши, можемо креирати наш директориј апликација. Метеор има згодну малу алатку коју можемо да користимо за то, која се зове meteor create. Да бисте креирали директоријум апликације, откуцајте следеће.
meteor create <projectname>
Фасцикла ће бити креирана са наведеним именом ( <projectname>).
Подешавање нашег Апацхе обрнутог проксија
Сада када смо поставили директоријум апликација, можемо наставити са подешавањем нашег обрнутог проксија. Апацхе користи модул под називом mod_proxy, који имплементира проки за Апацхе.
sudo apt-get install libapache2-mod-proxy-html libxml2-dev -y
Ово ће инсталирати модул и учинити га доступним за Апацхе за употребу.
Затим ћемо морати да омогућимо све потребне модуле које Апацхе треба да покрене. То ћемо урадити са a2enmod, алатком која омогућава модуле за Апацхе. Ови модули ће нам омогућити да искористимо предности обрнутог проксија. Једноставно унесите ове команде у свој терминал.
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
Након тога, мораћемо да онемогућимо покретање подразумеване Апацхе локације, како бисмо могли да покренемо сопствену. У супротном, подразумевана Апацхе апликација ће заменити нашу. Да бисте онемогућили подразумевану локацију, једноставно покрените следеће.
sudo a2dissite 000-default
Сада ћемо креирати наш виртуелни хост фајл. Да бисте то урадили, само отворите уређивач текста.
sudo nano /etc/apache2/sites-available/<projectname>
Копирајте и налепите следеће.
<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: Каже Апацхе-у да се прикључи на порт 80, што је оно што желимо за нашу веб апликацију.
ProxyPass: ИП адреса сајта коју желите да проследите обрнутом проксију. Ово ће највероватније бити ИП вашег ВПС-а
ServerName: Име вашег сервера (подразумевано име је обично localhost).
Када завршите са конфигурисањем неопходних подешавања, користите „ Control-O“ да сачувате и „ Control-X„ да изађете.
Покретање сајта по први пут
Да бисте тестирали и уверили се да је веб локација покренута, откуцајте следеће у директоријум пројекта.
meteor
Видећете следећи излаз који показује да је ваша веб локација успешно почела.
=> App running at: http://localhost:3000/
Имајте на уму да Метеор подразумевано слуша port 3000.
Постављање наше веб странице за производњу
Да бисмо били сигурни да наша апликација може да настави да ради, користићемо системску услугу. Слично ономе што смо урадили изнад са МонгоДБ, ова системска услуга ће се побринути да се наша веб локација покрене кад год се наш систем покрене и да остане да ради. Такође ће поново покренути нашу апликацију, у случају да се сруши из било ког разлога. Да бисте подесили нашу системд услугу, унесите следеће у свој терминал.
sudo nano /etc/systemd/system/<projectname>.service
Ево како желите да изгледа ваш фајл.
[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
Напомена : Не заборавите да замените projectnameименом пројекта и yourusernameкорисничким именом ВПС-а.
Ево неколико кључних редова које треба да имате на уму.
WorkingDirectory: Именик ваше апликације.
Restart: Да ли да се поново покрене или не, примена се зауставља из било ког разлога.
User: Твоје корисничко име.
Environment=PWD: Идентично са WorkingDirectory.
Environment=PORT: Порт на коме ради ваша апликација. Подразумевано је 3000.
Сачувајте и затворите датотеку.
Сада ћемо омогућити и покренути услугу.
sudo systemctl enable <projectname>.service
Где <projectname>је назив сервисне датотеке коју смо креирали.
Затим ћемо започети услугу.
sudo systemctl start <projectname>.service
Ваша апликација ће почети. Да бисте проверили да ли је покренут, само покрените следеће.
sudo systemctl status <projectname>
Видећете да је активан, потврђујући да је услуга успешно покренута.
Затим ћемо проверити нашу веб страницу. У свом веб претраживачу по избору идите до своје ИП адресе.
http://your-server-ip/
Видећете екран са узорком Метеора, који потврђује да сте све урадили исправно.
Управљање нашом апликацијом
Сада када смо покренули нашу апликацију, мораћемо да управљамо њоме.
Поновно покретање апликације
sudo systemctl restart <projectname>
Заустављање апликације
sudo systemctl stop <projectname>
Преглед статуса апликације
sudo systemctl status <projectname>
Прегледање дневника
journalctl -u <projectname>
Сада сте успешно конфигурисали МонгоДБ, Апацхе и Метеор и креирали Метеор.јс веб сервер за производњу. Сада је остало на вама, да дизајнирате своју веб страницу на предњој и задњој страни. Имате приступ МонгоДБ-у за складиштење свих података који вам могу затребати и Ноде.јс, који нуди низ модула доступних преко Ноде Пацкаге Манагер-а ( NPM) за додатно јачање вашег позадинског дела. За више документације, слободно посетите Метеор локацију , где можете даље да научите како да прилагодите своју веб локацију по свом укусу. Такође, можете се обратити МонгоДБ документацији када се бавите операцијама базе података.