Strider je bezplatný a open-source server pro nepřetržitou integraci a nasazení napsaný v Node.JS, JavaScript a používá MongoDB k ukládání dat. Strider přichází se spoustou pluginů, které lze použít k přidání různých funkcí do aplikace.
V tomto tutoriálu vysvětlíme, jak nainstalovat Strider na server Ubuntu 18.04.
Požadavky
- Server se systémem Ubuntu 18.04.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Začínáme
Před spuštěním se doporučuje aktualizovat balíčky na nejnovější verzi. Všechny balíčky můžete aktualizovat spuštěním následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile jsou všechny balíčky aktualizovány, restartujte systém, aby se změny projevily.
Dále nainstalujte balíček curl a git pomocí následujícího příkazu:
apt-get install curl git -y
Po instalaci všech požadovaných balíčků můžete přejít k dalšímu kroku.
Instalovat Node.js
Dále budete muset nainstalovat Node.js a další požadované balíčky na váš server.
Ve výchozím nastavení není Node.js k dispozici ve výchozím úložišti Ubuntu 18.04. Budete tedy muset do svého systému přidat úložiště Node.js. Úložiště můžete přidat pomocí následujícího příkazu:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Jakmile je úložiště přidáno, aktualizujte úložiště a nainstalujte Node.js pomocí následujícího příkazu:
apt-get install nodejs node-gyp -y
Po instalaci Node.js zkontrolujte verzi Node.js a NPM pomocí následujícího příkazu:
node -v
Měli byste vidět následující výstup:
v12.6.0
npm -v
Měli byste vidět následující výstup:
6.9.0
Instalace a konfigurace MongoDB
Strider používá MongoDB jako podpůrný obchod. Takže budete muset nainstalovat MongoDB do vašeho systému.
Nejprve importujte veřejný klíč GPG pro MongoDB pomocí následujícího příkazu:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Dále přidejte úložiště MongoDB pomocí následujícího příkazu:
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list
Měli byste vidět následující výstup:
Executing: /tmp/apt-key-gpghome.mmTr2ifzC1/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 gpg: key 68818C72E52529D4: public key "MongoDB 4.0 Release Signing Key <[email protected]>" imported gpg: Total number processed: 1 gpg: imported: 1
Dále aktualizujte úložiště a nainstalujte MongoDB pomocí následujícího příkazu:
apt-get update -y
apt-get install mongodb-org -y
Po dokončení instalace spusťte službu MongoDB a povolte její spuštění po restartu systému pomocí následujícího příkazu:
systemctl start mongod
systemctl enable mongod
Stav MongoDB můžete také zkontrolovat pomocí následujícího příkazu:
systemctl status mongod
Měli byste vidět následující výstup:
? mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled) Active: active (running) since Sat 2019-07-13 05:24:41 UTC; 5s ago Docs: https://docs.mongodb.org/manual Main PID: 13619 (mongod) CGroup: /system.slice/mongod.service ??13619 /usr/bin/mongod --config /etc/mongod.conf Jul 13 05:24:41 ubuntu1804 systemd[1]: Started MongoDB Database Server.
Dále budete muset nastavit MongoDB pro ověřování.
Chcete-li tak učinit, otevřete prostředí MongoDB pomocí následujícího příkazu:
mongo
Měli byste vidět následující výstup:
MongoDB shell version v4.0.10 connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb Implicit session: session { "id" : UUID("e3edd538-03c4-469a-8c8c-227a16d214d0") } MongoDB server version: 4.0.10 Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see http://docs.mongodb.org/ Questions? Try the support group http://groups.google.com/group/mongodb-user Server has startup warnings: 2019-07-13T05:24:46.255+0000 I STORAGE [initandlisten] 2019-07-13T05:24:46.255+0000 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2019-07-13T05:24:46.256+0000 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem 2019-07-13T05:24:48.774+0000 I CONTROL [initandlisten] 2019-07-13T05:24:48.774+0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database. 2019-07-13T05:24:48.774+0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted. 2019-07-13T05:24:48.775+0000 I CONTROL [initandlisten] --- Enable MongoDB's free cloud-based monitoring service, which will then receive and display metrics about your deployment (disk utilization, CPU, operation statistics, etc). The monitoring data will be available on a MongoDB website with a unique URL accessible to you and anyone you share the URL with. MongoDB may use this information to make product improvements and to suggest MongoDB products and deployment options to you. To enable free monitoring, run the following command: db.enableFreeMonitoring() To permanently disable this reminder, run the following command: db.disableFreeMonitoring() ---
Dále změňte databázi na admin a vytvořte uživatele admin pomocí následujícího příkazu:
>use admin
db.createUser( { user: "admin", pwd: "adminpassword", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } )
Dále ukončete prostředí MongoDB pomocí následujícího příkazu:
> exit
Dále otevřete konfigurační soubor MongoDB a povolte ověřování pomocí následujícího příkazu:
nano /etc/mongod.conf
Proveďte následující změny:
security: authorization: enabled
Uložte a zavřete soubor. Poté restartujte službu MongoDB a použijte změny konfigurace pomocí následujícího příkazu:
systemctl restart mongod
Instalovat Strider
Nejprve si stáhněte nejnovější verzi Strider pomocí následujícího příkazu:
cd /opt
git clone https://github.com/Strider-CD/strider.git
Dále nainstalujte požadované závislosti pomocí následujícího příkazu:
cd strider
npm install
Dále budete muset vytvořit nového uživatele strider a přiřadit ho k databázi strider.
Chcete-li tak učinit, otevřete prostředí MongoDB pomocí následujícího příkazu:
mongo
Dále ověřte svou relaci MongoDB s uživatelem správce:
use admin
db.auth("admin", "adminpassword" )
Dále vytvořte databázového uživatele a přiřaďte jej strider názvu databáze:
use strider
db.createUser({user: "strider", pwd: "password", roles: [{role: "dbOwner", db: "strider"}]})
Dále ukončete prostředí MongoDB a vytvořte uživatele správce pro Strider pomocí následujícího příkazu:
cd /opt/strider
DB_URI="mongodb://strider:[email protected]:27017/strider" node bin/strider addUser
Zadejte všechny požadované informace, jak je uvedeno níže:
Connecting to MongoDB URL: mongodb://strider:[email protected]:27017/strider Enter email []: [email protected] Enter password []: **** Is admin? (y/n) [n]y Email: [email protected] Password: admin isAdmin: y OK? (y/n) [y]y User created successfully! Enjoy.
Instalace a konfigurace PM2
Dále budete muset nainstalovat PM2, abyste mohli spravovat proces Node.js. Nejprve nainstalujte PM2 s npm, jak je znázorněno níže:
npm install pm2 -g
Dále vytvořte nový konfigurační soubor pro PM2 pomocí následujícího příkazu:
cd /opt/strider
nano ecosystem.config.js
Přidejte následující řádky:
module.exports = { apps : [{ name : "strider", script : "npm", args : "start", env: { "NODE_ENV": "production", "DB_URI": "mongodb://strider:[email protected]:27017/strider", "SERVER_NAME": "http://your-server-ip:3000", "HOST": "0.0.0.0", "PORT": "3000" } }] }
Po dokončení uložte a zavřete soubor. Poté spusťte aplikaci pomocí následujícího příkazu:
pm2 start ecosystem.config.js
Měli byste vidět následující výstup:
------------- __/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____ _\/\\\/////////\\\_\/\\\\\\________/\\\\\\__/\\\///////\\\___ _\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__ _\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___ _\/\\\/////////____\/\\\__\///\\\/___\/\\\________/\\\//_____ _\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________ _\/\\\_____________\/\\\_____________\/\\\___/\\\/___________ _\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_ _\///______________\///______________\///__\///////////////__ Runtime Edition PM2 is a Production Process Manager for Node.js applications with a built-in Load Balancer. Start and Daemonize any application: $ pm2 start app.js Load Balance 4 instances of api.js: $ pm2 start api.js -i 4 Monitor in production: $ pm2 monitor Make pm2 auto-boot at server restart: $ pm2 startup To go further checkout: http://pm2.io/ ------------- [PM2] Spawning PM2 daemon with pm2_home=/root/.pm2 [PM2] PM2 Successfully daemonized [PM2][WARN] Applications strider not running, starting... [PM2] App [strider] launched (1 instances) ?????????????????????????????????????????????????????????????????????????????????????????????????????????? ? App name ? id ? version ? mode ? pid ? status ? restart ? uptime ? cpu ? mem ? user ? watching ? ?????????????????????????????????????????????????????????????????????????????????????????????????????????? ? strider ? 0 ? N/A ? fork ? 21502 ? online ? 0 ? 0s ? 0% ? 25.6 MB ? root ? disabled ? ?????????????????????????????????????????????????????????????????????????????????????????????????????????? Use `pm2 show <id|name>` to get more details about an app, použijte `pm2 show
Dále povolte automatické spouštění PM2 po restartování systému pomocí následujícího příkazu:
pm2 startup
Po dokončení můžete přejít k dalšímu kroku.
Přístup k Strider
Strider je nyní nainstalován a nakonfigurován, je čas otevřít Strider z webového prohlížeče.
Otevřete webový prohlížeč a zadejte adresu URL http://ip-vaseho-serveru:3000. Budete přesměrováni na přihlašovací stránku Strider, jak je uvedeno níže:
Nyní zadejte své uživatelské jméno a heslo správce, které jste vytvořili dříve, a klikněte na Přihlásit knoflík. Po úspěšném přihlášení byste měli vidět následující stránku:
Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali Strider na serveru Ubuntu 18.04. V případě jakýchkoliv dotazů se mě neváhejte zeptat. Další informace naleznete v oficiální dokumentaci na adrese Strider Doc