云原生集成開發(fā)環(huán)境——TitanIDE
通過網(wǎng)頁在任何地方更安全、更高效地編碼2023-03-22
795
前言
出于自身隱私保護需要,不想把自己的代碼開源到包管理區(qū),但是又急需一套完整的包管工具來管理越來越多的組件、模塊和項目。其中 npm yarn bower 都是前端用得比較多的包管理工具。但隨著 commonjs 的日益規(guī)范,npm 更是成為了大多數(shù)前端人員的選擇。而 TitanIDE 作為一個完善成熟的在線 IDE 工具,自然也是可以滿足內(nèi)部開發(fā)人員的需要,構(gòu)建一個私有倉庫來使用的。
其中 Sinopia 是一個部署簡易的可以實現(xiàn)github倉儲私有化的npm組件。
如圖所示:
客戶端發(fā)起npm請求后,發(fā)送到服務(wù)器,當請求到sinopia后,他會先進行權(quán)限驗證(如果設(shè)置),通過驗證之后就在本地文件系統(tǒng)中尋找對應(yīng)的npm包,如果不存在則向上游鏈接(uplinks)配置的地址發(fā)請求。
為什么選擇 Sinopia?
? 不需要同步拉取npm庫,占用大量硬盤空間;
? 安裝配置簡單,不需要數(shù)據(jù)庫的配合;
? 支持配置上游 registry 配置,一次拉取即緩存;
? 支持 pm2 守護進程管理自動負載均衡。
新建項目
首先我們需要在 TitanIDE 中新建一個項目,這里也可以是其他的模板,sinopia 需要用到 node 環(huán)境,我們提供的官方模板都安裝了該環(huán)境。
Sinopia 的安裝與啟動
以下是啟動后的頁面:
創(chuàng)建 Sinopia 賬戶
Sinopia 的使用
在啟動 Sinopia 之后會監(jiān)聽一個指定端口,通過我們的設(shè)置可以將它把地址暴露到外面訪問,這里我們需要把使用子域名勾選上。
這時你的開發(fā)組成員就可以使用這個源地址去拉取推送這些 npm 包了,這里先對源進行設(shè)置。
發(fā)布 npm 包
使用 NPM 包
我們在上個步驟中推送了 [email protected] 的包,這時候我們來試試,然后再安裝一個該私有倉庫中不存在的 NPM 包 moment 看是否也能正常安裝。
很顯然我們得到了正確的結(jié)果,一個是部署在 NPM 私有倉庫的 test 包,一個是從上游 NPM 源安裝的 moment,那么只要我們的這個項目一直在 TitanIDE 中運行,它就可以一直被公司內(nèi)部的開發(fā)人員所使用。
總結(jié)
TitanIDE 它不僅僅是一個在線 IDE,還是一個具備便捷編寫代碼、快速部署應(yīng)用、隔離開發(fā)環(huán)境、分類管理項目的工具,另外它的擴展性可以讓你實現(xiàn)很多便于開發(fā)的工具鏈,并且能和其他人員共享使用。