成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

使用 docker + verdaccio 搭建npm私有倉庫

fantix / 3056人閱讀

摘要:本文介紹如何使用搭建私有倉庫,以及使用時(shí)如何映射到本地目錄,方便簡單對倉庫進(jìn)行各種操作。其次,創(chuàng)建目錄,并添加的配置文件。當(dāng)需要把某個(gè)項(xiàng)目發(fā)布到私有庫時(shí),直接。使用包名,即可安裝私有包了。

本文介紹如何使用 verdaccio 搭建私有npm倉庫,以及使用 docker 時(shí)如何映射到本地目錄,方便簡單對倉庫進(jìn)行各種操作。系統(tǒng)環(huán)境是 Linux。

verdaccio

verdaccio 是一個(gè)開源的輕量的私有 npm proxy registry (npm 代理資源庫),安裝使用都非常方便。
forked自 [email protected]

安裝

使用 npm / yarn 進(jìn)行全局安裝

  • Node.js v12+

  • npm 4.x+ 或yarn

  • 全局安裝

    npm install -g verdaccioyarn global add verdaccio
  • 啟動(dòng)

    verdaccio或者使用 pm2 start verdaccio

    使用瀏覽器訪問web服務(wù),端口號4873,http://0.0.0.0:4873,訪問成功就可以了。

使用 docker 鏡像安裝

  • 安裝 docker,略

  • docker 下安裝 verdaccio 鏡像
    使用如下命令即可:

    docker pull verdaccio/verdaccio

    安裝鏡像成功:

  • 運(yùn)行 verdaccio,使用 docker 命令運(yùn)行鏡像,創(chuàng)建 verdaccio 容器

    // 名稱verdaccio, 端口 4873docker run -it --name verdaccio -p 4873:4873 verdaccio/verdaccio

    啟動(dòng)容器成功:

    啟動(dòng)成功以后,實(shí)際上就可以在瀏覽器訪問了,http://0.0.0.0:4873。
    接下來先介紹幾個(gè)操作容器的 docker 命令。

  • docker 操作容器的部分命令

    新建并啟動(dòng):docker run CONTAINER
    啟動(dòng)停止的容器:docker start CONTAINER_ID
    查看容器:docker container ls (docker ps)
    停止容器:docker stop CONTAINER_ID
    刪除容器:docker rm CONTAINER_ID

  • 映射本地目錄

    首先,創(chuàng)建 /home/verdaccio 目錄,以下在該目錄下操作。
    其次,創(chuàng)建 conf 目錄,并添加 verdaccioconfig.yaml 配置文件。
    接著處理映射目錄,一般有以下兩種方式:

    1. 直接映射本地目錄,啟動(dòng) verdaccio

      docker run -it --name verdaccio -p 4873:4873 -v /home/verdaccio/storage:/verdaccio/storage -v /home/verdaccio/conf:/verdaccio/conf -v /home/verdaccio/plugins:/verdaccio/plugins verdaccio/verdaccio

      -v:容器目錄映射到本地目錄

    2. 或者使用 docker-compose 啟動(dòng)
      添加 docker-compose.yml 文件,使用 docker-compose up 命令啟動(dòng)

      version: "3"services:  verdaccio:    image: verdaccio/verdaccio    container_name: "verdaccio"    network--mode: "bridge"    environment:      - VERDACCIO_PORT=4873    ports:      - "4873:4873"    volumes:      - "/home/verdaccio/storage:/verdaccio/storage"      - "/home/verdaccio/conf:/verdaccio/conf"      - "/home/verdaccio/plugins:/verdaccio/plugins"    network_mode: "bridge"

    注意: 本地目錄 /home/verdaccio/storage 需要設(shè)置權(quán)限,不然會因?yàn)闄?quán)限問題而導(dǎo)致操作失敗。

    chown -R 10001:65533 /home/verdaccio/storage

    本地目錄映射成功后,會簡化很多操作,比如:
    /home/verdaccio 目錄下會創(chuàng)建 storage 目錄,如果發(fā)布了包,則在此目錄下的 data 中能找到對應(yīng)的包文件夾,可以查看所有上傳的npm包,此處也可以直接刪除該包;
    也會在 conf 映射到配置文件,方便我們需要時(shí)修改配置信息。

  • 拷貝 verdaccio 配置文件

    如果不想做本地目錄映射,也可以使用如下命令,拷貝出 verdaccio 鏡像的配置文件。
    docker cp:在容器和本地文件系統(tǒng)之間,拷貝文件或文件夾。

    docker cp verdaccio:/verdaccio/conf/config.yaml /home

私有庫部署成功

verdaccio 安裝啟動(dòng)成功后,就可以直接網(wǎng)絡(luò)訪問。
當(dāng)頁面出現(xiàn)下圖所示,就表示私有庫搭建成功,后續(xù)就可以進(jìn)行私有包的發(fā)布下載。

發(fā)布一個(gè)包

有了私有庫以后,就可以在其上發(fā)布 npm 包。
但初始化時(shí)需要先添加用戶,設(shè)置用戶名和密碼等,然后就可以直接發(fā)包了。

  • 添加用戶

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

    輸入用戶名、密碼和郵箱。

  • publish

    當(dāng)需要把某個(gè)項(xiàng)目發(fā)布到私有庫時(shí),直接 publish。

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

    發(fā)布成功后,刷新頁面,就能看到最新發(fā)布的包。

install

在項(xiàng)目目錄下增加 .npmrc 文件,指定倉庫地址。

registry=http://0.0.0.0:4873/

使用 npm install 包名,即可安裝私有包了。

verdaccio 配置文件解讀

常用配置如下:

  # 素有包的保存路徑  storage: /verdaccio/storage/data  # 插件的保存路徑  plugins: /verdaccio/plugins  # 通過web訪問  web:    title: Verdaccio  # 賬號密碼文件,初始不存在  auth:    htpasswd:      file: /verdaccio/storage/htpasswd      # max_users:1000      # 默認(rèn)1000,允許用戶注冊數(shù)量。為-1時(shí),不能通過 npm adduser 注冊,此時(shí)可以直接修改 file 文件添加用戶。  # 本地不存在時(shí),讀取倉庫的地址  uplinks:    npmjs:      url: https://registry.npmjs.org  # 對包的訪問操作權(quán)限,可以匹配某個(gè)具體項(xiàng)目,也可以通配  # access 訪問下載;publish 發(fā)布;unpublish 取消發(fā)布;  # proxy 對應(yīng)著uplinks名稱,本地不存在,去unplinks里取  # $all 表示所有人都可以執(zhí)行該操作  # $authenticated 已注冊賬戶可操作  # $anonymous 匿名用戶可操作  # 還可以明確指定 htpasswd 用戶表中的用戶,可以配置一個(gè)或多個(gè)。  packages:    "@*/*":      access: $all      publish: $authenticated      unpublish: $authenticated      proxy: npmjs    "**":      access: $all      publish: $authenticated      unpublish: $authenticated      proxy: npmjs  # 服務(wù)器相關(guān)  sever:    keepAliveTimeout: 60  middlewares:    audit:      enabled: true  # 日志設(shè)定  logs: { type: stdout, format: pretty, level: http }
?

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/123992.html

相關(guān)文章

  • npm私有倉庫 配置verdacciodocker環(huán)境

    摘要:前端開發(fā)過程中,少不了自己封裝一些通用的包,但又不想放在公共的平臺,所以搭建一個(gè)私有的倉庫是很有必要的。在這里簡單介紹如何使用在環(huán)境下的配置。輕量級私有代理注冊表。加上,那就真的無敵方便了,搭建一個(gè)私有倉庫輕輕松松幾分鐘搞定。前端開發(fā)過程中,少不了自己封裝一些通用的包,但又不想放在公共的平臺,所以搭建一個(gè)npm私有的倉庫是很有必要的。 在這里簡單介紹如何使用 verdoccio 在docke...

    vboy1010 評論0 收藏0
  • Docker之旅——實(shí)例: 使用verdaccio搭建私服npm(二)

    摘要:前言利用搭建私服工具提取碼步驟拉取鏡像步驟運(yùn)行鏡像,生成一個(gè)容器出現(xiàn)下面信息,表示成功步驟通過虛擬機(jī)地址端口進(jìn)行訪問步驟配置其他略發(fā)布包下載包 前言 利用Docker, verdaccio 搭建npm私服 工具: 1. Docker 2. verdaccio: A lightweight private npm proxy registry 3. xhsell: https://...

    forsigner 評論0 收藏0
  • verdaccio搭建npm私有

    Server server:all developers can have access to it, the server environment is windows. We need to use the npm command to install verdaccio, so we have to have a node environment. step1: install the no...

    ivan_qhz 評論0 收藏0
  • 搭建npm私庫(超簡單)

    摘要:原因我搭私庫的原因很簡單,目前正在開發(fā)一個(gè)組件庫,提供給公司內(nèi)部使用,我不想去注冊,也不想等待的審核,只想要有個(gè)倉庫快速測試發(fā)布自己的包。我一般會通過啟動(dòng),原因很簡單,關(guān)閉窗口后,服務(wù)不會停掉,并且能很好的管理我們啟動(dòng)的服務(wù)。 原因 我搭私庫的原因很簡單,目前正在開發(fā)一個(gè)組件庫,提供給公司內(nèi)部使用,我不想去注冊npm,也不想等待npm的審核,只想要有個(gè)倉庫快速測試發(fā)布自己的npm包。 ...

    xbynet 評論0 收藏0

發(fā)表評論

0條評論

fantix

|高級講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<