<font id="zqva1"></font>
<rt id="zqva1"></rt>
  • <tt id="zqva1"></tt>
    <cite id="zqva1"></cite>

    <cite id="zqva1"><noscript id="zqva1"></noscript></cite>
      <rp id="zqva1"><meter id="zqva1"></meter></rp>

        <cite id="zqva1"></cite>
          <b id="zqva1"></b>
          <rp id="zqva1"></rp>
          <cite id="zqva1"></cite>

          <rt id="zqva1"></rt>

        1. <rp id="zqva1"></rp>

          在5分鐘內搭建企業內部私有npm倉庫

          時間:?2017-12-19閱讀:?3177標簽:?npm

          下面通過三種方法來搭建公司私有npm倉庫,每種方式都有自己的優勢。

          Node.js >= 6.11.3,我的Node版本:node v8.2.1
          Linux or OSX,我的系統版本:CentOS Linux release 7.2.1511 (Core)


          一、安裝

          npm install -g --build-from-source cnpmjs.org cnpm sqlite3
          # 如果報錯或者警告通過下面方式安裝
          npm install -g --unsafe-perm --verbose --build-from-source cnpmjs.org cnpm sqlite3

          如果安裝不流暢通過下面形式安裝:

          npm install -g --build-from-source \
            --registry=https://registry.npm.taobao.org \
            --disturl=https://npm.taobao.org/mirrors/node \
            cnpmjs.org cnpm sqlite3

          如果報警告或者安裝錯誤,請添加參數--unsafe-perm --verbose


          啟動并配置服務

          管理員:myname,othername
          范圍:my-company-name,other-name
          默認端口:7001-registry, 7002-web

          啟動服務

          $ nohup cnpmjs.org start --admins='myname,othername' \
            --scopes='@my-company-name,@other-name' &


          設置注冊地址

          將cnpm默認注冊地址更改為私有注冊地址

          cnpm set registry http://localhost:7001

          登錄cnpm

          $ cnpm login
          Username: myname
          Password: ***
          Email: (this IS public) test@test.com

          包上傳到私有倉庫

          新建項目

          $ cd /tmp
          $ mkdir helloworld && cd helloworld
          $ cnpm init
          name: (helloworld) @my-company-name/helloworld
          version: (1.0.0)
          
          {
            "name": "@my-company-name/helloworld",
            "version": "1.0.0",
            "description": "my first scoped package",
            "main": "index.js",
            "scripts": {
              "test": "echo \"Error: no test specified\" && exit 1"
            },
            "author": "",
            "license": "ISC"
          }
          

          上傳到私有倉庫

          $ cnpm publish
          + @my-company-name/helloworld@1.0.0


          查看預覽包

          瀏覽器中預覽

          open http://localhost:7002/@my-company-name/helloworld

          使用cnpm預覽

          cnpm info
          


          二、安裝

          所有公共包都可直接使用cnpm安裝

          cnpm install hotkeys-js

          通過verdaccio搭建

          verdaccio 是一個輕量級的私有npm代理注冊。(sinopia fork)


          三、安裝

          # 使用 npm 安裝
          npm install -g npm
          
          # 使用 yarn 安裝
          yarn global add verdaccio

          啟動服務

          verdaccio >> verdaccio.log 2>&1 & # 后臺啟動并寫入日志
          
          # Verdaccio doesn't need superuser privileges. Don't run it under root.
          # warn --- config file  - /root/.config/verdaccio/config.yaml
          # warn --- http address - http://localhost:4873/ - verdaccio/2.3.6
          
          verdaccio --listen 4000 --config ./config.yaml # 指定配置啟動

          添加用戶/登錄

          npm adduser --registry  http://localhost:4873

          上傳私有包

          npm publish --registry http://localhost:4873

          本地配置注冊地址

          npm config list -l # 查看默認配置
          # 將默認地址 https://registry.npmjs.org/ 改成私有地址
          npm set registry http://localhost:4873
          # 如果您使用HTTPS,請添加適當的CA信息
          #(“null”表示從操作系統獲取CA列表)
          $ npm set ca null

          Git倉庫當私有npm

          這個方法得益于,npm提供的的豐富安裝方法。通過下面方法安裝:

          npm i -S git+ssh://git@git.showgold.cn:npm/hello.git
          
          npm install -S git+ssh://git@github.com:npm/npm.git#v1.0.27
          npm install -S git+ssh://git@github.com:npm/npm#semver:^5.0
          npm install -S git+https://isaacs@github.com/npm/npm.git
          npm install -S git://github.com/npm/npm.git#v1.0.27

          上面安裝需要注意:你的工程一定是在某一個組下面建立,方便管理,在生成你的包的時候package.json中的name一定要帶上范圍


          建立一個私有模塊

          # 假設你建立了一個Git倉庫,先克隆下來
          git clone http://git.your-inc.com/companyfe/hello-private.git
          
          # 生成 `package.json` 配置, 注意限定 `@scope` 范圍
          npm init --scope=companyfe
          # 提交到倉庫
          git push origin master

          將得到如下依賴,注意:

          name字段必須限定范圍,一般為 GitLab group 的名字, 例如 @companyfe, 那么 name 為: @companyfe/hello-private。
          private 設為 true 防止將私有模塊上傳到公網上去,需要手動設置一下。

          {
            "name": "@companyfe/hello-private",
            "version": "1.0.1",
            "description": "",
            "main": "index.js",
            "private":true,
            "scripts": {
              "test": "echo \"Error: no test specified\" && exit 1"
            },
            "author": "kenny wang <wowohoo@qq.com> (http://wangchujiang.com)",
            "license": "ISC"
          }

          安裝使用私有模塊

          跟安裝開源的模塊一樣, 使用 npm install 安裝依賴即可. 私有模塊會安裝在 @scope 的子文件夾中, 例如: node_modules/@companyfe/hello-private.

          # 基礎安裝
          npm i -S git+ssh://git@git.your-inc.com/companyfe/hello-private.git
          # 帶版本信息的,必須通過 git 打 tag
          npm i -S git+ssh://git@git.your-inc.com/companyfe/hello-private.git#v1.2.0

          將得到如下依賴

          {
            "name": "helloworld",
            "version": "1.0.0",
            "description": "",
            "main": "index.js",
            "scripts": {
              "test": "echo \"Error: no test specified\" && exit 1"
            },
            "dependencies": {
              "@companyfe/hello-private": "git+ssh://git@git.your-inc.com/companyfe/hello-private.git#v1.2.0"
            },
            "author": "kenny wang <wowohoo@qq.com> (http://wangchujiang.com)",
            "license": "ISC"
          }

          使用私有模塊

          var hello = require('@companyfe/hello-private');

          優劣勢

          不好的地方是,使用 npm update 是無法更新私有模塊,想更新只能重新安裝一次。好處是不用搭建服務。


          參考資料:Can I run my own private registry?
          來源:在5分鐘內搭建企業內部私有npm倉庫
          吐血推薦

          1.站長廣告聯盟: 整理了目前主流的廣告聯盟平臺,如果你有流量,可以作為參考選擇適合你的平臺點擊進入...

          2.休閑娛樂: 直播/交友    優惠券領取   網頁游戲   H5游戲

          鏈接: http://www.modern-decoration.com.cn/article/detial/257

          npm使用國內淘寶鏡像的方法

          npm的服務器在國外,拉取npm包的列表、下載包這個過程會比較緩慢。凡是包管理工具基本都有這個問題,例如maven、pip等,這些問題都可以通過配置鏡像來解決。阿里巴巴提供了maven庫,清華大學有pip源

          node和npm之間是什么關系?

          node.js是javascript的一種運行環境,是對Google V8引擎進行的封裝。是一個服務器端的javascript的解釋器。node和npm之間是包含關系,nodejs中含有npm,比如說你安裝好nodejs,你打開cmd輸入npm -v會發現npm的版本號,說明npm已經安裝好。

          封裝Vue組件并發布到npm(完美解決組件中的靜態文件引用)

          不少前端開發者學習到一定階段都會去封裝一些自己的組件并將其開源。筆者在學習過程中發現,發布的資源包基本分為兩類

          MAC升級Nodejs和Npm到最新版

          MAC升級Nodejs和Npm到最新版,第一步,先查看本機node.js版本:第二步,清除node.js的cache:第三步,安裝 n 工具,這個工具是專門用來管理node.js版本的,別懷疑這個工具的名字

          在生產環境中使你的 npm i 速度提升 50%

          對于一個前端應用,或者說是一個 Node 應用,在 CICD pipeline 中,無論是構建,測試,部署,其中必不可少的環節就是依賴安裝: npm i。npm i 不僅是必不可少的環節,而且很可能也是耗時最長的一個環節。

          解決 NPM 國內下載安裝第三方包慢的問題

          在使用 NPM 過程中,發現在國內下載安裝第三方包的速度比較慢的問題。使用淘寶的 NPM 鏡像(地址:https://npm.taobao.org/),可以解決這個問題。

          npm 和 yarn 你選哪個?

          每個團隊都必須在開發過程中做出各種決定。其中通常會涉及到 yarn,npm 或其它用于構建和打包 javascript 代碼的工具。一些開發人員渴望朝著某個方向前進

          npm view命令

          npm view輸出,如果僅輸出單個版本的單個字符串字段,則不會對它進行著色或加引號,從而可以將輸出傳遞給另一個命令。如果該字段是一個對象,則將其作為JavaScript對象文字輸出。

          node安裝好了npm怎么沒有反應?

          windows安裝完nodejs后做了相關環境變量配置后,cmd輸入npm沒反應就光標一直閃node是正常的。下面我們就來看一下出現這種情況的可能原因與解決方法。node安裝好了npm沒有反應的原因與解決方法如下:

          挑選 npm 模塊很費事?掌握這些技巧就能事半功倍!

          熟悉 Node 或前端 JavaScript 工作的同學都知道,社區中的可用模塊有數十萬之多。開發人員經常會提問或抱怨,比如說:在談到這些問題時,你通常會得到十個不同的答案。每個人都會向你推薦他最寶貝的模塊

          fly63.com版權所有,內容以共享、參考、研究為目的,不存在任何商業目的。其版權屬原作者所有,如有侵權,請與小編聯系!情況屬實本人將予以刪除!

          文章投稿關于web前端網站點搜索站長推薦網站地圖站長QQ:522607023

          小程序專欄: 土味情話心理測試腦筋急轉彎幽默笑話段子句子語錄成語大全

          国产精品高清视频免费 - 视频 - 在线观看 - 影视资讯 - 唯爱网