Introducció
Requisits
Pas 1: instal·leu Node.js i NPM
Pas 2: instal·leu Git i node-gyp
Pas 3: instal·leu MongoDB
Pas 4: configureu l'autenticació de MongoDB
Pas 5: instal·leu Strider
Pas 6: Gestioneu el procés Node.js amb PM2
Introducció
Strider CD és una plataforma de desplegament continu de codi obert. L'aplicació està escrita en Node.js i utilitza MongoDB com a backend d'emmagatzematge. Strider està recolzat per molts connectors que afegeixen diverses funcions a l'aplicació.
Requisits
- Instància nova de Vultr Ubuntu 18.04 amb almenys 1 GB de RAM.
- Usuari no root amb privilegis sudo .
Assegureu-vos que el vostre sistema estigui actualitzat.
sudo apt-get update && sudo apt-get upgrade -y
Pas 1: instal·leu Node.js i NPM
Nodesource proporciona binaris preconstruïts per a Node.js, que es poden instal·lar directament mitjançant el gestor de paquets del sistema operatiu. Configureu el dipòsit de Nodesource.
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
Instal·leu Node.js.
sudo apt-get install -y nodejs
Node.js també instal·la NPM juntament amb ell. Assegureu-vos que Node.js i NPM s'han instal·lat correctament.
strider@vultr:~$ node -v
v10.15.3
strider@vultr:~$ npm -v
6.4.1
Pas 2: instal·leu Git i node-gyp
Git ve preinstal·lat a la majoria de casos de Vultr. Tanmateix, podeu assegurar-vos que estigui instal·lat i actualitzat.
sudo apt-get install -y git
Install node-gyp, que és una eina de creació de complements nativa de Node.js.
sudo npm install -g node-gyp
Pas 3: instal·leu MongoDB
Importeu la clau GPG pública de MongoDB per assegurar-vos que s'instal·lin paquets sense alteracions.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Afegeix un fitxer de repositori MongoDB.
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
Actualitzeu la memòria cau del dipòsit del sistema i instal·leu la darrera MongoDB.
sudo apt-get update
sudo apt-get install -y mongodb-org
Inicieu MongoDB i activeu-lo perquè s'iniciï automàticament en el moment de l'arrencada.
sudo systemctl start mongod
sudo systemctl enable mongod
Pas 4: configureu l'autenticació de MongoDB
Obriu l'intèrpret d'ordres MongoDB executant l' mongoordre. Veureu la següent sortida.
strider@vultr:~/strider$ mongo
MongoDB shell version v4.0.8
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("a06b2797-6f58-43e1-8a41-c6401edb5083") }
MongoDB server version: 4.0.8
Welcome to the MongoDB shell.
...
Canvia a la adminbase de dades.
use admin
Creeu un usuari administrador. Assegureu-vos de substituir el nom d'usuari admini la contrasenya StrongPasswordper la vostra elecció preferida.
db.createUser(
{
user: "admin",
pwd: "StrongPassword",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
Sortiu de l'intèrpret d'ordres de Mongo prement CTRL+ C.
Obriu el fitxer de configuració.
sudo nano /etc/mongod.conf
Busca la línia amb la paraula comentada #security:i substitueix-la pel text següent.
security:
authorization: "enabled"
Deseu el fitxer i sortiu de l'editor. Reinicieu el servidor MongoDB.
sudo systemctl restart mongod
Pas 5: instal·leu Strider
Clonar el dipòsit Strider des de Github.
cd ~
git clone https://github.com/Strider-CD/strider.git
Instal·leu les dependències de Node.js.
cd ~/strider
npm install
Inicieu sessió al shell de Mongo una vegada més per crear una base de dades per a Strider.
mongo
Autentiqueu la vostra sessió de Mongo amb les credencials que vau crear anteriorment.
use admin
db.auth("admin", "StrongPassword" )
Creeu un nou usuari de base de dades per a Strider i assigneu-lo al nom de la base de dades strider. Assegureu-vos de canviar la contrasenya striderpwa l'ordre següent.
use strider
db.createUser({user: "strider", pwd: "striderpw", roles: [{role: "dbOwner", db: "strider"}]})
Sortiu de l'intèrpret d'ordres de Mongo prement CTRL+ C.
Creeu un usuari administrador per a Strider executant l'ordre següent.
DB_URI="mongodb://strider:striderpw@localhost:27017/strider" node bin/strider addUser
Proporcioneu la informació necessària que demana el guió. Se us demanarà la vostra adreça de correu electrònic i una nova contrasenya.
strider@vultr:~/strider$ DB_URI="mongodb://strider:striderpw@localhost:27017/strider" node bin/strider addUser
Connecting to MongoDB URL: mongodb://strider:striderpw@localhost:27017/strider
Enter email []: vultr@example.com
Enter password []: ****
Is admin? (y/n) [n]y
Email: vultr@example.com
Password: ****
isAdmin: y
OK? (y/n) [y]y
User created successfully! Enjoy.
Pas 6: Gestioneu el procés Node.js amb PM2
Instal·leu PM2 mitjançant NPM.
sudo npm install pm2 -g
Creeu un fitxer de configuració PM2 per a la vostra aplicació Strider.
cd ~/strider && nano ecosystem.config.js
Omple el fitxer amb la configuració següent. Assegureu-vos de substituir l'IP d'exemple 203.0.113.1per l'adreça IP real de la vostra instància Vultr.
module.exports = {
apps : [{
name : "strider",
script : "npm",
args : "start",
env: {
"NODE_ENV": "production",
"DB_URI": "mongodb://strider:striderpw@localhost:27017/strider",
"SERVER_NAME": "http://203.0.113.1:3000",
"HOST": "0.0.0.0",
"PORT": "3000"
}
}]
}
Inicieu la vostra aplicació.
pm2 start ecosystem.config.js
Per assegurar-vos que la vostra instància Strider s'iniciï automàticament després de reiniciar, executeu l'ordre següent.
pm2 startup
Obriu el vostre navegador i navegueu fins a http://203.0.113.1:3000on 203.0.113.1és la vostra adreça IP de Vultr real. Inicieu la sessió amb l'usuari administrador que heu creat per a Stride.