使用sinopia五步快速完成本地npm搭建

为什么要搭建私有npm?

不知道大家在安装npm包的时候有没有出现过下载速度慢和下载异常的情况,反正是我经常遇到! 这也是cnpm这类国内镜像出现的原因,但是毕竟还是在使用在使用别人的服务,如果有条件搭建自己的npm包管理服务器的话,还是有诸多好处的:

1、下载依赖速度够快

2、不会因为npm官方镜像挂掉而影响开发

3、私有模块管理

今天看到白大神部署了我们公司的本地npm私服,终于有幸认识到sinopia!一款可以快速搭建本地npm镜像的服务器: https://github.com/rlidwka/sinopia 。

Quick Start

第一步,安装 sinopia

$ npm install -g sinopia

第二步,启动 sinopia

$ sinopia

sinopia启动之后可以看到配置文件在 C:\Users\Administrator\AppData\Roaming\sinopia\config.xml,

本地默认服务器地址是 http://localhost:4873/,访问一下:

第三步,创建新用户

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

第四步,发布npm包

$ npm publish

接下来就是发布资源包到服务器了,我们创建一个繁星基类库的包文件:

{
"name": "fx.fx",
"version": "1.0.0",
"main": "fx.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "gary gao",
"license": "ISC",
"description": "繁星基类库fx.js \r 安装方法:npm install fx.fx",
"readme": "繁星基类库fx.js \r\n安装方法:npm install fx.fx \r\n",
"readmeFilename": "README.md",
"_id": "fx.fx@1.0.0",
"_from": "fx.fx@"
}

用户登录成功之后就可以发布新包了:

第五步,安装npm包

$ npm install fx.fx

我们现在看看是否能安装成功:至此,已经完成私有npm的搭建,接下来就是维护的事情啦。

【转】使用sinopia五步快速完成本地npm搭建的更多相关文章

  1. 【翻译】五步快速使用LINQPad尝鲜StreamInsight

    StreamInsight  学习地址:http://www.cnblogs.com/StreamInsight/archive/2011/10/26/StreamInsight-Query-Seri ...

  2. PC-飞起来!我的Windows XP——五步快速优化Windows XP

    虽然Microsoft的 Vista已经发售了快一年,但国内大部分系统用户仍使用着目前堪称完美的Windows XP.与以往的Windows操作系统一样,新安装的Windows XP可能还不在最佳状态 ...

  3. HTML5离线Web应用实战:五步创建成功

    [IT168 技术]HTML5近十年来发展得如火如荼,在HTML 5平台上,视频,音频,图象,动画,以及同电脑的交互都被标准化.HTML功能越来越丰富,支持图片上传拖拽.支持localstorage. ...

  4. 软件工程 Coding.net代码托管平台 Git初学者的使用总结 五步完成 程序,文件,文件夹的Git

    一.前言 第一次用git相关的命令行,我使用的是Coding.net代码托管平台.Coding.net 自主打造的基于 Git 的代码托管平台,提供高性能的远端仓库,还有保护分支,历史版本分屏对比. ...

  5. C语言程序设计入门学习五步曲(转发)

    笔者在从事教学的过程中,听到同学抱怨最多的一句话是:老师,上课我也能听懂,书上的例题也能看明白,可是到自己动手做编程时,却不知道如何下手.发生这种现象的原因有三个: 一.所谓的看懂听明白,只是很肤浅的 ...

  6. 五步搞定Android开发环境部署

    引言   在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入 Android浪潮的朋友们,为了确保大家能顺利完成开发 ...

  7. 五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程

      在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭 ...

  8. Ajax学习(三)——XMLHttpRequest对象的五步使使用方法

        Ajax的核心技术是XMLHttpRequest对象,它能够在不向server提交整个页面的情况下.实现局部更新网页.通过这个对象,Ajax能够像桌面应用程序那样仅仅与server进行数据层的 ...

  9. Kaggle初学者五步入门指南,七大诀窍助你享受竞赛

    Kaggle 是一个流行的数据科学竞赛平台,已被谷歌收购,参阅<业界 | 谷歌云官方正式宣布收购数据科学社区 Kaggle>.作为一个竞赛平台,Kaggle 对于初学者来说可能有些难度.毕 ...

随机推荐

  1. ajax系列之用jQuery的ajax方法向服务器发出get和post请求

    打算写个ajax系列的博文,主要是写给自己看,学习下ajax的相关知识和用法,以更好的在工作中使用ajax. 假设有个网站A,它有一个简单的输入用户名的页面,界面上有两个输入框,第一个输入框包含在一个 ...

  2. java类构造器的理解

    子类不能继承父类的构造器(构造方法或者构造函数),但是父类的构造器带有参数的,则必须在子类的构造器中显式地通过super关键字调用父类的构造器并配以适当的当属列表. 如果父类有无参构造器,则在子类的构 ...

  3. Debian 8 安装BtSync

    声明,此方法是Btsync的官网resilio提供的方法 传送门:https://help.getsync.com/hc/en-us/articles/206178924 第一,在如下文件中添加: 1 ...

  4. Linux 下安裝 Java SE Development Kit(JDK)並配置環境變量

    下載頁面:http://www.oracle.com/technetwork/java/javase/archive-139210.html 打開“Java SE 7”,再打開“Java SE Dev ...

  5. button 自动刷新当前页面

    button请始终为按钮规定 type 属性.Internet Explorer 的默认类型是 "button",而其他浏览器中(包括 W3C 规范)的默认值是 "sub ...

  6. python3 列表 函数

    python3中list的所有函数 list是有序的,元素个数无限的,元素类型多样的,可变的 增加 # 'append', 增加对象# 'insert', 指定位置增加# 'extend', 增加可迭 ...

  7. fiddler还是浏览器的问题

    当我在浏览器里输入http://localhost/infomanage/price?cityid=1&cateid=246&timer=3 后端接收的参数是timer的时候,浏览器会 ...

  8. swift3 UIColor扩展

    //返回一个RGB颜色 class func getColor(r:CGFloat,g:CGFloat,b:CGFloat,l:CGFloat = 1) ->UIColor{ let color ...

  9. Chapter 2 Open Book——35

    Mr. Banner called the class to order then, and I turned with relief to listen. Banner先生让大家安静听他说,然后我静 ...

  10. shell-改变分隔符

    转化为换行符: oldIFS=${IFS}; IFS=$'\n'; 命令; IFS=${oldIFS};