搭建私有npm构建JSSDK

搭建私有npm

常见的有 cnpm\ verdaccio
我们这里采用 Verdaccio

环境准备
  • CentOS (Linux 系列)
  • yum | apt | wge …
  • Nodejs
  • npm
  • Verdaccio
1. 安装Nodejs & npm
yum install -y nodejs npm
2. 安装 Verdaccio
npm install verdaccio -g
3. 启动 Verdaccio
# verdaccio 可直接启动 
verdaccio

启动之后会看到如下👇🏻

warn --- config file  - /root/verdaccio/config.yaml
(node:22955) Warning: Verdaccio doesn't need superuser privileges. don't run it under root
(Use `node --trace-warnings ...` to show where the warning was created)
(node:22955) Warning: Verdaccio doesn't need superuser privileges. don't run it under root
 warn --- "crypt" algorithm is deprecated consider switch to "bcrypt". Read more: https://github.com/verdaccio/monorepo/pull/580
 info --- plugin successfully loaded: verdaccio-htpasswd
 info --- plugin successfully loaded: verdaccio-audit
 warn --- http address - http://localhost:4873/ - verdaccio/5.13.0

启动成功了 !

  • 配置文件:config file - /root/verdaccio/config.yaml

  • 访问路径 http://localhost:4873/


我们可以通过配置文件来改变默认端口

具体参考文档 👉🏻 link

  • 这个时候我们已经可以访问到了
初始页面

20220621144203.jpg

但是这时候 终端不能断,所以我们要守护进程

守护进程

使用 pm2 守护进程 或者 直接 nohup 来进程常驻

npm install pm2 -g

or

nohup verdaccio >/root/verdaccio/verdaccio.log 2>&1 &
  • ps: 还需要去开启 verdaccio 对应端口的安全组

发布一个测试包
touch .npmrc
vim .npmrc

next

registry = "http://47.114.102.165:20010/"

操作说明 依据初始页面的说明

.npmrc 配置文件的优先级
  • 项目配置文件: /project/.npmrc
  • 用户配置文件:~/.npmrc
  • 全局配置文件:$PREFIX/etc/npmrc
  • npm 内置配置文件 /path/to/npm/npmrc

Rollup 构建SDK

rollup.js logo

Rollup

Rollup 是一个 JavaScript 模块打包器,可以将小块代码编译成大块复杂的代码,例如 library 或应用程序。Rollup 对代码模块使用新的标准化格式,这些标准都包含在 JavaScript 的 ES6 版本中,而不是以前的特殊解决方案,如 CommonJS 和 AMD。ES6 模块可以使你自由、无缝地使用你最喜爱的 library 中那些最有用独立函数,而你的项目不必携带其他未使用的代码。ES6 模块最终还是要由浏览器原生实现,但当前 Rollup 可以使你提前体验。

link - Rollup


Flow 👇🏻

  1. 打包构建
  2. 加载 额外资源 ( resolve )
  3. 转译 ES module
  4. Babel
  5. 输出 压缩、移除 console 等
  6. 发布脚本

本文旨在 Rollup 的构建过程介绍,和业务无关

install 化环境依赖

yarn add -D rollup @rollup/plugin-commonjs @rollup/plugin-node-resolve
  • rollup

  • @rollup/plugin-commonjs // 转译

  • @rollup/plugin-node-resolve // 加载依赖

rollup.config.js
import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';
import babel from '@rollup/plugin-babel'; // 转换babel
import {
    terser } from 'rollup-plugin-terser' // 压缩代码
import pkg from './package.json';

export default [
  {
   
    input: 'src/index.js',
    external: ['ms'],
    output: [
      {
    file: `${
     process.cwd()}/dis
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值