私有npm安装

私有npm安装(verdaccio管理)

环境

centos7.3
机器ip:192.168.1.103

查询node是否安装

node -v
npm -v

未安装

检测c++环境

gcc –v
g++ -v

未安装c++环境

yum install gcc
yum install gcc-c++

安装node

cd /opt/software
wget http://nodejs.org/dist/v8.7.0/node-v8.7.0-linux-x64.tar.gz
tar -zxvf node-v8.7.0-linux-x64.tar.gz
vim /etc/profile

文件末尾追加

#node
export NODE_HOME=/opt/software/node-v8.7.0-linux-x64
export PATH=$PATH:$NODE_HOME/bin

加载配置文件

source /etc/profile

将目录软链接到全局环境下(命令后面的/usr/local/bin/node是固定的)

ln -s /opt/software/node-v8.7.0-linux-x64/bin/node /usr/local/bin/node
ln -s /opt/software/node-v8.7.0-linux-x64/bin/npm /usr/local/bin/npm

再次测试node -v以及npm -v

安装verdaccio进行npm仓库管理

安装verdaccio

npm install -g verdaccio --unsafe-perm

运行程序

verdaccio

运行成功后 ctrl c 结束(目的是第一次运行创建一个默认的配置文件,文件位置在运行过程中体现)
在这里插入图片描述

安装pm2托管verdaccio

npm install -g pm2 --unsafe-perm

编辑verdaccio的配置文件

vim /root/.config/verdaccio/config.yaml

在文件末尾追加

# 监听的端口 ,重点, 不配置这个,只能本机能访问
listen: 0.0.0.0:4849

附带配置文件相关解释

# 存储NPM包的路径
storage: /Users/luckytien/.local/share/verdaccio/storage
auth:
htpasswd:
#保存用户账户、密码等信息文件
file: ./htpasswd
# 允许注册的最大用户数, 默认是无限制
# 如果是-1, 禁止注册
#max_users: 1000
# 我们可以访问已知的其他存储库列表,用于请求资源不存在,根据此处配置地址请求其他服务器
uplinks:
npmjs:
url: https://registry.npmjs.org/ //默认为npm官网,可以在此修改成其他源地址
# 配置权限管理
packages:
‘@*/*’:
# 范围包
access: $all // 用户对匹配的项目进行安装
publish: $authenticated // 用户对匹配的项目进行发布
‘*’:
# 允许所有用户(包括没有验证的用户)读取和发布所有包
# 可以指定用户名/组名(取决于你的插件)
# 3个关键字: “$all”, “$anonymous”, “$authenticated”
# $all表示所有人
# $anonymous表示匿名者
# $authenticated表示只通过验证的人可以执行对应操作
access: $all
# 允许所有已知用户发布包(默认任何人都可以注册)
publish: $authenticated
# 如果本地没有可用的私有包,代理会请求’npmjs’仓库
proxy: npmjs
# 日志设置
logs:
- {type: stdout, format: pretty, level: http}
#- {type: file, path: verdaccio.log, level: info}

用pm2启动verdaccio

pm2 start verdaccio

使用

添加用户

执行npm adduser --registry http://192.168.1.103:4849
依次输入用户名、密码、邮箱即可添加新用户

登录

命令行执行npm login --registry=http://192.168.1.103:4849
输入用户名密码邮箱进行登录

上传库在项目根目录创建README文件其中填写好改库的相关描述

在项目根目录执行npm init生产package.json(期间填写相关描述信息)
执行完成后进行登录
登陆后在项目根目录执行npm publish --registry=http:// 192.168.1.103:4849上传库

安装库

在新项目中生成package.json后在项目中执行npm install {模块名} --registry=http:// 192.168.1.103:4849

你可能感兴趣的:(linux部署安装)