Strider adalah Continuous Integration &Deployment Server gratis dan open-source yang ditulis dalam Node.JS, JavaScript dan menggunakan MongoDB untuk menyimpan datanya. Strider hadir dengan banyak plugin yang dapat digunakan untuk menambahkan berbagai fitur ke dalam aplikasi.
Dalam tutorial ini, kami akan menjelaskan cara menginstal Strider di server Ubuntu 18.04.
Persyaratan
- Server yang menjalankan Ubuntu 18.04.
- Kata sandi root dikonfigurasi di server Anda.
Memulai
Sebelum memulai, disarankan untuk memperbarui paket Anda ke versi terbaru. Anda dapat memperbarui semua paket dengan menjalankan perintah berikut:
apt-get update -y
apt-get upgrade -y
Setelah semua paket diperbarui, mulai ulang sistem Anda untuk menerapkan perubahan.
Selanjutnya, instal paket curl dan git dengan perintah berikut:
apt-get install curl git -y
Setelah semua paket yang diperlukan diinstal, Anda dapat melanjutkan ke langkah berikutnya.
Instal Node.js
Selanjutnya, Anda perlu menginstal Node.js dan paket lain yang diperlukan ke server Anda.
Secara default, Node.js tidak tersedia di repositori default Ubuntu 18.04. Jadi, Anda perlu menambahkan repositori Node.js ke sistem Anda. Anda dapat menambahkan repositori dengan perintah berikut:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Setelah repositori ditambahkan, perbarui repositori dan instal Node.js dengan perintah berikut:
apt-get install nodejs node-gyp -y
Setelah menginstal Node.js periksa versi Node.js dan NPM dengan perintah berikut:
node -v
Anda akan melihat output berikut:
v12.6.0
npm -v
Anda akan melihat output berikut:
6.9.0
Instal dan Konfigurasi MongoDB
Strider menggunakan MongoDB sebagai backing store. Jadi, Anda perlu menginstal MongoDB ke sistem Anda.
Pertama, impor kunci publik GPG untuk MongoDB dengan perintah berikut:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Selanjutnya, tambahkan repositori MongoDB dengan perintah berikut:
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
Anda akan melihat Output berikut:
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
Selanjutnya, perbarui repositori dan instal MongoDB dengan perintah berikut:
apt-get update -y
apt-get install mongodb-org -y
Setelah instalasi selesai, mulai layanan MongoDB dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:
systemctl start mongod
systemctl enable mongod
Anda juga dapat memeriksa status MongoDB dengan perintah berikut:
systemctl status mongod
Anda akan melihat output berikut:
? 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.
Selanjutnya, Anda perlu mengatur MongoDB untuk otentikasi.
Untuk melakukannya, buka shell MongoDB dengan perintah berikut:
mongo
Anda akan melihat output berikut:
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() ---
Selanjutnya ubah database menjadi admin dan buat user admin dengan perintah berikut:
>use admin
db.createUser( { user: "admin", pwd: "adminpassword", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } )
Selanjutnya, keluar dari shell MongoDB dengan perintah berikut:
> exit
Selanjutnya, buka file konfigurasi MongoDB dan aktifkan otentikasi dengan perintah berikut:
nano /etc/mongod.conf
Lakukan perubahan berikut:
security: authorization: enabled
Simpan dan tutup file. Kemudian, restart layanan MongoDB untuk menerapkan perubahan konfigurasi dengan perintah berikut:
systemctl restart mongod
Instal Strider
Pertama, unduh Strider versi terbaru dengan perintah berikut:
cd /opt
git clone https://github.com/Strider-CD/strider.git
Selanjutnya, instal dependensi yang diperlukan dengan perintah berikut:
cd strider
npm install
Selanjutnya, Anda perlu membuat pengguna strider baru dan menetapkannya ke database strider.
Untuk melakukannya, buka shell MongoDB dengan perintah berikut:
mongo
Selanjutnya, autentikasi sesi MongoDB Anda dengan pengguna admin:
use admin
db.auth("admin", "adminpassword" )
Selanjutnya, buat pengguna database dan tetapkan ke strider nama database:
use strider
db.createUser({user: "strider", pwd: "password", roles: [{role: "dbOwner", db: "strider"}]})
Selanjutnya, keluar dari shell MongoDB dan buat pengguna admin untuk Strider dengan perintah berikut:
cd /opt/strider
DB_URI="mongodb://strider:[email protected]:27017/strider" node bin/strider addUser
Berikan semua informasi yang diperlukan seperti yang ditunjukkan di bawah ini:
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.
Instal dan Konfigurasi PM2
Selanjutnya, Anda perlu menginstal PM2 untuk mengelola proses Node.js. Pertama, instal PM2 dengan npm seperti gambar di bawah ini:
npm install pm2 -g
Selanjutnya, buat file konfigurasi baru untuk PM2 dengan perintah berikut:
cd /opt/strider
nano ecosystem.config.js
Tambahkan baris berikut:
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" } }] }
Simpan dan tutup file, ketika Anda selesai. Kemudian, jalankan aplikasi dengan perintah berikut:
pm2 start ecosystem.config.js
Anda akan melihat output berikut:
------------- __/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____ _\/\\\/////////\\\_\/\\\\\\________/\\\\\\__/\\\///////\\\___ _\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__ _\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___ _\/\\\/////////____\/\\\__\///\\\/___\/\\\________/\\\//_____ _\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________ _\/\\\_____________\/\\\_____________\/\\\___/\\\/___________ _\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_ _\///______________\///______________\///__\///////////////__ 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
Selanjutnya, aktifkan PM2 untuk memulai secara otomatis setelah sistem reboot dengan perintah berikut:
pm2 startup
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Akses Strider
Strider sudah terinstal dan terkonfigurasi, saatnya mengakses Strider dari web browser.
Buka browser web Anda dan ketik URL http://your-server-ip:3000. Anda akan diarahkan ke halaman login Strider seperti yang ditunjukkan di bawah ini:
Sekarang, berikan nama pengguna dan kata sandi admin Anda yang telah Anda buat sebelumnya dan klik tombol Masuk tombol. Setelah berhasil login, Anda akan melihat halaman berikut:
Selamat! Anda telah berhasil menginstal dan mengkonfigurasi Strider di server Ubuntu 18.04. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan. Untuk informasi lebih lanjut, Anda dapat mengunjungi dokumentasi resmi di Strider Doc