• Docker 容器中搭建 nexus npm私库


    1,版本

      dockers :1.13.1   ;nexus 3

    2,安装

      docker pull liumiaocn/nexus

    3,启动

    项目详细
    Nexus UI 8081
    private repo 8082
    proxy repo 8083
    URL http://192.168.20.71:8081/

      docker run -d -p 8081:8081 -p 8082:8082 -p 8083:8083 --name nexus liumiaocn/nexus 

      [root@master ~]# docker ps -a
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      f3ef3fa410a4 liumiaocn/nexus "bin/nexus run" 24 hours ago Up 21 hours 0.0.0.0:8081-8083->8081-8083/tcp nexus

    4,登录

      URL:  http://192.168.20.71:8081/

      用户名:admin  密码:admin123  (默认)

      

    5,配置

      

    仓库类型

    具体仓库类型主要分为hosted/proxy/group三种。具体含义如下:

    项目详细说明
    hosted 本地存储,提供本地私库功能
    proxy 提供代理其他仓库的类型
    group 组类型,可以组合多个仓库为一个地址提供服务

    创建blob

    创建一个blob用于存放npm相关数据。

    项目详细说明
    Type File
    Name npm-repo-blob
    PATH /nexus-data/blobs/npm-repo-blob

    建议实际项目中各个仓库根据具体情况决定是否要分别创建blob进行对应,此处进行演示就通篇使用一个blob

    创建priavete仓库

    创建一个Hosted的仓库作为private仓库,用于管理非npm社区的第三方包或者自己开发的内容。具体设定信息如下:

    项目详细说明
    类型 npm(hosted)
    Name npm-repo-hosted
    Blob store npm-repo-blob

    其余Default设定即可 

    创建proxy仓库

    创建一个proxy仓库,具体设定信息如下:

    项目详细说明
    类型 npm(proxy)
    Name npm-repo-proxy
    Remote Storage https://registry.npmjs.org
    Blob store npm-repo-blob

    其余Default设定即可

    创建group仓库

    创建一个group仓库,具体设定信息如下:

    项目详细说明
    类型 npm(group)
    Name npm-repo-group
    Blob store npm-repo-blob
    Member repositories npm-repo-hosted
    Member repositories npm-repo-proxy

    6,本地npm配置,验证版本

      安装版本: node v10.9.0  npm 6.2.0

      理论上来说,只要官方的tar.gz的文件名称格式不变,只需要改变脚本中的如下部分即可

      其他版本参考地址:https://nodejs.org/en/download/current/   

      [root@master ~]# npm -v
      6.2.0
      [root@master ~]# node -v
      v10.9.0

    7,注意事项

      国内tb地址:registry=https://registry.npm.taobao.org

      默认配置查看:npm config list -l

      临时修改源地址:npm install --registry=http://192.168.20.71:8081/repository/npm-repo-proxy/

      永久修改:npm confige set registry=http://192.168.20.71:8081/repository/npm-repo-proxy/

      npm 和 cnpm 命令相同,使用cnpm时默认使用tb源。

    参考地址:

    https://blog.csdn.net/liumiaocn/article/details/78510679

    https://www.centos.bz/2018/03/%E5%9C%A8-centos-7-%E5%B9%B3%E5%8F%B0%E4%BD%BF%E7%94%A8-cnpmjs-org-%E6%90%AD%E5%BB%BA-npm-%E7%A7%81%E6%9C%89%E4%BB%93%E5%82%A8/

    #安装脚本
    #!/bin/sh
    
    usage(){
      echo "Usage: $0 [node-xxx.tar.gz]"
      echo "       node-xx.tar.gz: specified file will be used. Default will download directly"
      echo
    }
    
    INSTALL_FLAG="NET"
    FILE_SPECIFIED=$1
    
    if [ $# -eq 1 ]; then
      if [ ! -f ${FILE_SPECIFIED} ]; then
        echo "File ${FILE_SPECIFIED} does not exist"
        usage
        exit 1
      else
        INSTALL_FLAG="LOCAL"
      fi
    fi
    
    FILE_VERSION=10.9.0
    FILE_TAR_GZ=node-v${FILE_VERSION}-linux-x64
    DOWNLOAD_URL="https://nodejs.org/dist/v${FILE_VERSION}/${FILE_TAR_GZ}.tar.gz"
    
    DIR_INSTALL=/usr/local/npm
    
    date
    echo "##Install Step 1: download binary file ..."
    date
    if [ _"LOCAL" = _"$INSTALL_FLAG" ]; then
      echo "  Install by using local tar.gz file specified, downloading is skipped..."
    else
      cd /tmp
      wget ${DOWNLOAD_URL}
    fi
    
    date
    ls ${FILE_TAR_GZ}.tar.gz
    echo
    
    echo "##Install Step 2: tar xvpf to unzip file ..."
    date
    mkdir -p /usr/local/npm
    cd /usr/local/npm
    tar xvpf /tmp/${FILE_TAR_GZ}.tar.gz
    mv node* node
    pwd
    ls
    date
    echo
    
    
    echo "##Install Step 3: create link file"
    date
    ln -s /usr/local/npm/node/bin/npm /usr/local/bin/npm
    ln -s /usr/local/npm/node/bin/node /usr/local/bin/node
    
    echo
    
    
    echo "VERSION CONFORM:"
    npm -v
    node -v
  • 相关阅读:
    Cocos开发中Visual Studio下libcurl库开发环境设置
    Cocos2d-x数据持久化-修改数据
    Cocos2d-x数据持久化-查询数据
    Cocos2d-x中SQLite数据库管理工具
    Cocos2d-x中创建SQLite数据库
    Visual Studio下SQLite数据库开发环境设置
    spring01
    String类的常用方法
    基本数据类型的包装类和随机数
    枚举类的使用
  • 原文地址:https://www.cnblogs.com/fuhai0815/p/9591979.html
Copyright © 2020-2023  润新知