Kuinka asentaa Strapi-sovellusliittymä Ubuntu 16.04: een

Strapi on Node.js-sisällönhallintakehys, joka on omistettu sovellusliittymien luomiseen. Puolivälissä Node.js-kehyksen ja päättömän CMS: n välillä, se on suunniteltu rakentamaan sovellusliittymiä muutamassa sekunnissa viikkojen sijasta sisäänrakennettujen ominaisuuksiensa ansiosta: hallintapaneeli, todennus- ja käyttöoikeuksien hallinta, sisällönhallinta, API-generaattori jne.

Strapi-projektin isännöinti on tärkeä tehtävä sekä kehitys- että tuotantovaiheessa. Kehittäjänä olet kuitenkin todennäköisesti enemmän JavaScriptin asiantuntija kuin DevOps. Älä huoli, tämä artikkeli on täällä auttamassa sinua.

Tässä opetusohjelmassa opit ottamaan käyttöön Strapi v3 -projektin tuotantoon puhtaalla Ubuntu-palvelimella.

edellytykset

Tarvitset ensinnäkin seuraavan puhtaan Ubuntu 16.04 -palvelimen, joka on määritetty siihen asennetulla gitillä, jolla ei ole pääkäyttäjällä sudo-oikeudet.

Asenna Node.js

Strapi-sovellus ei ole muuta kuin Node.js-sovellus. Se vaatii tietysti Node.js (8 tai uudempi).

Suorita seuraavat komennot asentaaksesi Node.js:

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

Tarkista, että Solmu on asennettu onnistuneesti:

$ solmu -v

Sen pitäisi tulostaa v9.x.x.

Asenna MongoDB

Strapi käyttää MongoDB: tä oletus tietokantajärjestelmänä. Paitsi jos päätät käyttää toista tietokantajärjestelmää tai isännöidä MongoDB-tietokantaa toisella palvelimella tai palvelulla (mitä me voimakkaasti suosittelemme), sinun on asennettava MongoDB Ubuntu-palvelimeen.

Tuo julkinen avain:

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

Luo luettelotiedosto:

$ 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

Lataa paikallinen paketitietokanta uudelleen:

$ sudo apt-get -päivitys

Asenna MongoDB-paketit:

$ sudo apt-get install -y mongodb-org

Käynnistä MongoDB:

$ sudo service mongod start

Jos sinulla on ongelmia täällä, katso MongoDB-dokumentaatiota.

Huomaa: MongoDB on oletuksena pääsy automaattisesti ulkopuolelta portin 27017 kautta. Suosittelemme, että rajoitat pääsyä säätämällä palomuurisääntöjä.

Asenna projekti

Node.js ja MongoDB on asennettu. On aika tuoda Strapi-projektimme.

Siirry käyttäjän kotihakemistoon ja kloonaa Strapi-projekti GitHub (tai GitLab, BitBucket ...) -varastosta.

Klooni projekti:

$ cd ~ $ git -klooni https://github.com/strapi/sample-strapi-app

Korvaa yllä oleva URL-osoite projektisi osoitteella, paitsi jos haluat saada puhtaan Strapi-sovelluksen.

Huomaa: Jos projektisi isännöi yksityisessä arkistossa, päätelaite saattaa pyytää käyttäjätiedot (sähköposti ja salasana).

Asenna riippuvuudet:

$ cd-näyte-strapi-app $ npm install --production

Käynnistä palvelin varmistaaksesi, että kaikki menee hyvin:

$ NODE_ENV = tuotannon npm aloitus

Huomaa: NODE_ENV = tuotanto ilmoittaa Strapille, että sovellus toimii tuotantotilassa. Huomioon otetut konfiguraatiotiedostot sijaitsevat konfiguraatiossa / ympäristöissä / tuotannossa.

Strapi-sovellusliittymäsi pitäisi olla käytettävissä seuraavalla URL-osoitteella: http: // yourIP: 1337.

Pysäytä sitten palvelin ajamalla ctrl + c.

Asenna PM2

Kuten olet ehkä huomannut, jos lopetat npm-käynnistyskomentosarjan tai poistut SSH-yhteydestä, Node.js-prosessi pysähtyy. Tämä on melko ärsyttävää. Haluamme myös, että sovellus käynnistetään automaattisesti uudelleen, jos se kaatuu.

Tässä kohtaa pelataan PM2, Node.js: n tosiasiallinen prosessinhallinta.

Asenna PM2:

$ npm asenna pm2 -g

Huomaa: Jos sinulla on npm-käyttöoikeusongelmia, vaihda käyttöoikeudet npm-oletushakemistoon tai käytä sudo-painiketta.

Käynnistä Strapi-palvelin:

$ NODE_ENV = tuotanto pm2 start server.js - name api

Strapi-sovellusliittymäsi pitäisi olla käytettävissä seuraavalla URL-osoitteella: http: // yourIP: 1337.

Luettelo prosessit:

pm2 dollarin luettelo

Tarkista lokit seuraavasti, jotta voit varmistaa, että sovellusliittymäsi toimii oikein:

pm2 dollaria kirjaa api

Paina crtl + c poistuaksesi lokitiedot.

Huomaa: tutustu PM2-ohjeisiin edistyneemmän käytön suhteen.

Asenna nginx

Sovelluksesi on nyt asennettuna porttiin 1337. Jotta se olisi käytettävissä Web-portissa (80), sinun on asennettava käänteinen välityspalvelin.

Tässä opetusohjelmassa aiomme käyttää nginx: tunnetuin HTTP ja käänteinen välityspalvelin.

Asenna se:

$ sudo apt-get-päivitys $ sudo apt-get install -y nginx

Avaa päämääritystiedosto:

$ sudo nano / etc / nginx / site-available / default

Korvaa seuraavaksi sijainnin / direktiivin sisältö seuraavasti:

proxy_pass http: // localhost: 1337;
proxy_http_version 1.1;
proxy_set_header Päivitä $ http_upgrade;
proxy_set_header Yhteyden 'päivitys';
proxy_set_header Host $ host;
proxy_cache_bypass $ http_upgrade;

Käynnistä nginx uudelleen:

$ sudo systemctl käynnistä uudelleen nginx

Tässä vaiheessa Strapi-sovellusliittymäsi pitäisi olla käytettävissä seuraavalla URL-osoitteella: http: // omaIP.

johtopäätös

Onnittelut, olet asentanut Strapi-sovelluksen onnistuneesti puhtaalle Ubuntu-palvelimelle!

Tämä opetusohjelma kattaa Strapi-sovelluksen käyttöönoton perusosat. Suosittelemme, että otat seuraavat seikat huomioon: turvallisuus (avoimet portit, IP-rajoitukset jne.), SSL, automaattinen skaalaus jne.

Jotta elämästäsi olisi entistä helpompaa, julkaisimme täydellisen bash-komentosarjan ympäristön asettamiseksi. Tämä komentosarja asentaa Node.js, Strapi, PM2, MongoDB ja nginx (määritetty oikein). Kokeile sitä suorittamalla seuraava komento: wget -qO - https://strapi.io/install.sh | sudo -E bash && source ~ / .bashrc puhtaalla Ubuntu-palvelimella. Sen suorittamisen jälkeen sinun on tehtävä vain omat Strapi-projektisi tai luoda uusi CLI: n avulla.

Seuraavien viikkojen aikana julkaistaan ​​muita artikkeleita, jotka liittyvät Strapi API -sovellusten käyttöönottoon: Asenna Strapi Herokulle, mlab: n käyttö Strapilla, Strapin käyttäminen Dockerilla, Strapi-sovellusliittymän seuranta Keymetricsillä jne.

Mitä oppaita haluaisit seuraavaksi?

Alun perin julkaistu osoitteessa blog.strapi.io 31. tammikuuta 2018.