作為新時(shí)代的前端,我們現(xiàn)在很多的項(xiàng)目都已經(jīng)使用npm作為包管理器了,我們會(huì)把一些通用組件發(fā)布到npm,但是有時(shí)候一些組件涉及到業(yè)務(wù)或者安全方面的,我們不希望把包發(fā)布到所有人都能看到的npm上,這時(shí)候我們就需要有一個(gè)私有的npm資源庫(kù)。這里我們選用sinopia來(lái)搭建我們自己的npm,然后利用docker來(lái)進(jìn)行打包和部署.
首先我們找到了這個(gè)項(xiàng)目https://github.com/kfatehi/docker-sinopia,這是別人創(chuàng)建的一個(gè)打包sinopia的docker build,我們把它c(diǎn)lone下來(lái),然后修改一下配置,適合我們的場(chǎng)景
git clone https://github.com/kfatehi/docker-sinopia.git
然后我們修改里面的config.yaml文件,這個(gè)文件在docker啟動(dòng)起來(lái)的時(shí)候會(huì)生成真正的配置文件
uplinks: npmjs: url: https://registry.npmjs.org/
我們把這里的url改成http://r.cnpmjs.org,因?yàn)樵趪?guó)內(nèi)直接使用npmjs.org會(huì)很卡,而且很容易丟包,造成安裝失敗
修改完折后執(zhí)行docker build -t jokcy/sinopia .命令,打包成image,這個(gè)過(guò)程會(huì)比較慢,依然是因?yàn)榫W(wǎng)絡(luò)問(wèn)題
打包完了之后我們可以傳到docker hub上,這樣我們可以在我們的服務(wù)器上直接通過(guò)
docker run --name sinopia -d -p 4873:4873 jokcy/sinopia:latest
來(lái)進(jìn)行啟動(dòng)docker,但是還是網(wǎng)絡(luò)問(wèn)題,我們打包上傳的過(guò)程可以說(shuō)是蝸牛一般,反正我傳了一天都沒(méi)有傳上去。
當(dāng)然我們還是有別的辦法的,通過(guò)
docker save -o ~/docker_images/sinopia jokcy/sinopia
命令把我們的image打包成一個(gè)文件,然后上傳到我們的服務(wù)器上,再通過(guò)
docker load -i
在服務(wù)器上load一下這個(gè)image,然后就可以run了
當(dāng)然以上修改配置、build的步驟你可以直接在服務(wù)器上執(zhí)行,這樣就省去打包上傳的過(guò)程了
docker很好用,同時(shí)加上docker hub這樣的生態(tài),會(huì)節(jié)省我們很多時(shí)間。
然而我們節(jié)省的時(shí)間都花在網(wǎng)絡(luò)上來(lái)......╮(╯▽╰)╭
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/26556.html
摘要:本文介紹如何使用搭建私有倉(cāng)庫(kù),以及使用時(shí)如何映射到本地目錄,方便簡(jiǎn)單對(duì)倉(cāng)庫(kù)進(jìn)行各種操作。其次,創(chuàng)建目錄,并添加的配置文件。當(dāng)需要把某個(gè)項(xiàng)目發(fā)布到私有庫(kù)時(shí),直接。使用包名,即可安裝私有包了。本文介紹如何使用 verdaccio 搭建私有npm倉(cāng)庫(kù),以及使用 docker 時(shí)如何映射到本地目錄,方便簡(jiǎn)單對(duì)倉(cāng)庫(kù)進(jìn)行各種操作。系統(tǒng)環(huán)境是 Linux。 verdaccio verdacci...
摘要:安裝號(hào)稱是世界上最流行的私服管理軟件可以搭建幾乎目前所有常見(jiàn)的倉(cāng)庫(kù)如等更是增加了對(duì)倉(cāng)庫(kù)的支持應(yīng)該是搭建私服的唯一選擇有兩個(gè)版本和其中版本是免費(fèi)專業(yè)版需要收費(fèi)對(duì)于日常的倉(cāng)庫(kù)管理已經(jīng)足夠用支持二進(jìn)制文件安裝和安裝這里選擇安裝簡(jiǎn)單方便運(yùn)行以下命令 安裝 Nexus號(hào)稱是世界上最流行的私服管理軟件(The worlds most popular repository),可以搭建幾乎目前所有常見(jiàn)...
摘要:前端開發(fā)過(guò)程中,少不了自己封裝一些通用的包,但又不想放在公共的平臺(tái),所以搭建一個(gè)私有的倉(cāng)庫(kù)是很有必要的。在這里簡(jiǎn)單介紹如何使用在環(huán)境下的配置。輕量級(jí)私有代理注冊(cè)表。加上,那就真的無(wú)敵方便了,搭建一個(gè)私有倉(cāng)庫(kù)輕輕松松幾分鐘搞定。前端開發(fā)過(guò)程中,少不了自己封裝一些通用的包,但又不想放在公共的平臺(tái),所以搭建一個(gè)npm私有的倉(cāng)庫(kù)是很有必要的。 在這里簡(jiǎn)單介紹如何使用 verdoccio 在docke...
摘要:本文章用于描述如何從零開始進(jìn)行阿里云倉(cāng)庫(kù)的搭建,以及過(guò)程中遇到的相關(guān)問(wèn)題。涉及的內(nèi)容包括,,,,。目標(biāo)硬盤掛載阿里云額外購(gòu)買的硬盤服務(wù),需要僅掛載后才可以正常使用。域名代理免費(fèi)代理的域名通過(guò)阿里云域名解析暴露到外網(wǎng)。 本文章用于描述如何從零開始進(jìn)行阿里云倉(cāng)庫(kù)的搭建,以及過(guò)程中遇到的相關(guān)問(wèn)題。涉及的內(nèi)容包括Docker,Nginx,Nexus,Gitlab,Https。 背景 需要搭建一...
摘要:以便對(duì)整個(gè)持續(xù)集成印象加深。配置完各環(huán)境發(fā)布腳本后,則可以使用構(gòu)建發(fā)起進(jìn)行觸發(fā)環(huán)境準(zhǔn)備。并會(huì)在遠(yuǎn)程環(huán)境上存放多次發(fā)布的版本,用于回退和切換服務(wù)停用。進(jìn)行等操作,停止原本運(yùn)行的服務(wù)切換啟用。 該文章用于建立一個(gè)小型的基于Walle的持續(xù)集成工具。解決java,react,angular項(xiàng)目的編譯發(fā)布。以便對(duì)整個(gè)持續(xù)集成印象加深。官方網(wǎng)站:https://walle-web.io/ 適用...
閱讀 2393·2021-11-16 11:51
閱讀 3591·2021-09-26 10:14
閱讀 2034·2021-09-22 15:58
閱讀 1151·2019-08-30 15:52
閱讀 2082·2019-08-30 15:43
閱讀 2677·2019-08-30 13:46
閱讀 979·2019-08-30 13:10
閱讀 1133·2019-08-29 18:32