第一步:安装Erlang环境

首先,安装必要的库

yum install build-essential

yum install libncurses5-dev

yum install libssl-dev

yum install m4

yum install unixodbc unixodbc-dev

yum install freeglut3-dev libwxgtk2.8-dev

yum install xsltproc

yum install fop

yum install tk8.5

yum install ncurses-devel

yum install zip

yum install libicu-devel

编译安装Erlang环境

tar –zxvf otp_src_R16B.tar.gz

cd otp_src_R16B

./configure

make

make install

验证是否安装成功

输入erl

第二步:安装CouchDB

解压编译安装CouchDB

tar –zxvf  apache-couchdb-1.5.0.tar.gz

cd apache-couchdb-1.5.0

make & make install

CouchDB的安装还需要依赖Mozilla的SpiderMonkey来执行一些javascript代码

wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz

tar –zxvf  js185-1.0.0

autoconf-2.13

./configure

make

make install

配置环境变量

export LD_LIBRARY_PATH=/usr/local/lib

启动CouchDB

./couchdb &

curl –I http://127.0.0.1:5984/

第三步:搭建NPM仓库

  1. 创建NPM数据库。首先,我们需要调用CouchDB的接口为创建一个数据库,之后所有的模块包文件将作为保存在这个数据库中。

curl –X PUT http://127.0.0.1:5984/registry

  1. 获取NPM仓库源代码。相关命令如下:

git clone https://github.com/isaacs/npmjs.org.git

cd npmjs.org

  1. 获取安装工具。

sudo npm install couchapp –g

npm install couchapp

npm install semver

  1. 装在NPM仓库代码到CouchDB中

couchapp push registery/app.js http://127.0.0.1:5984/registry

Preparing.

Serializing.

PUT http://127.0.0.1:5984/registry/_design/scratch

Finished push. 1-4dd18325b8d8c5e60d….

couchapp push www/app.js http://127.0.0.1:5984/registry

PUT http://127.0.0.1:5984/registry/_design/ui

  1. 配合NPM客户端。任意需要从本地NPM仓库进行操作的命令,只要加入—registry=http://127.0.0.1:5984/registry/_design/scratch/_rewrite即可。

npm install plusplus –registry=http://127.0.0.1:5984/registry/_design/scratch/_rewrite

为了解决命令行过长不容易牢记的问题,可以使用如下方法:

npm config set registry http://127.0.0.1:5984/registry/_design/scratch/_rewrite

这个方法的一个问题在于,如果经常需要在官方仓库和本地仓库切换,那就比较麻烦。为此,我们可以利用bash中的alias功能来解决这个问题。在~/.profile文件的结尾处添加如下这行代码:

alias lnpm=’npm –registry=http://127.0.0.1:5984/registry/_design/scratch/_rewrite’

重新启动命令行,npm操作的是官方仓库,lnpm操作的则是本地仓库。其余参数和命名均相同。

第四步:应用

  1. 镜像仓库
  1. 私有模块应用
  1. 纯私有仓库

搭建自己的npm仓库的更多相关文章

  1. 深入浅出Node.js (附录D) - 搭建局域NPM仓库

    D.1 NPM仓库的安装 D.1.1 安装Erlang和CouchDB D.1.2 搭建NPM仓库 D.2 高阶应用 D.2.1 镜像仓库 D.2.2 私有模块应用 D.2.3 纯私有仓库 D.3 总 ...

  2. 使用cnpm搭建私有NPM仓库 发布npm包

    关于如何使用cnpm搭建私有的npm仓库看这里→ http://blog.fens.me/nodejs-cnpm-npm/ 我本人还没有机会真正实践操作过,公司的npm仓库是我老大搭建的,我这里仅仅记 ...

  3. 使用cnpm搭建企业内部私有NPM仓库

    cnpm是企业内部搭建npm镜像和私有npm仓库的开源方案.它同时解决了现有npm架构的一些问题. 为什么企业需要私有NPM 主要有如下理由: 确保npm服务快速.稳定:对于企业来说,上线生产系统的时 ...

  4. 使用Sinopia搭建私有npm仓库

    使用Sinopia搭建私有npm仓库 在用npm装包的时候,每次都要下载一大堆,慢且不说,npm还老被墙,所以就想到在公司内部搭建npm仓库镜像.大概看了几个,觉得Sinopia最简单也好用,所以就使 ...

  5. 私有 npm 仓库的搭建

    cnpm 是企业内部搭建 npm 镜像和私有 npm 仓库的开源方案,当企业业务逻辑相关的模块可能不适合开源.这部分私有的模块就可以放在私有 npm 仓库中来管理和维护. 以下为搭建私有 npm 的详 ...

  6. 私有化轻量级持续集成部署方案--07-私有NPM仓库-Verdaccio

    提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记 对于个人来说,私有NPM仓库 作用性基本很小,但是对于企业,私有NPM仓库 可以保护代码暴露,具有很大的意义. 也是 ...

  7. 基于vue的脚手架开发与发布到npm仓库

    什么是脚手架 在项目比较多而且杂的环境下,有时候我们想统一一下各个项目技术栈或者一些插件/组件的封装习惯,但是每次从零开发一个新项目的时候,总是会重复做一些类似于复制粘贴的工作,这是一个很头疼的事情, ...

  8. 搭建企业内部yum仓库(centos6+centos7+epel源)

    搭建自己的yum仓库,将自己制作好的rpm包,添加到自己的yum源中. yum仓库服务端配置如下 : 1. 创建yum仓库目录 mkdir -p /data/yum_data/cd /data/yum ...

  9. 在Dropbox上搭建私有的Git仓库的教程

    导读 Git版本控制系统需要一个服务器端,而GitHub上要想创建私有的Git服务器端仓库则触及到收费项目,于是这里我们利用Dropbox的免费空间,来看一下在Dropbox上搭建私有的Git仓库的教 ...

随机推荐

  1. 移动端上下滑动事件之--坑爹的touch.js

    原文   http://blog.csdn.net/minidrupal/article/details/39611605 移动端页面的盛行,微信的便利的页面推广等等,让越来越多的css3效果和htm ...

  2. 房间WIFI信号不好怎么办?——无线路由桥接(WDS)

    背景 1.无线路由在客厅,房间的WIFI信号很差,只有1-2格,虽说是100M的网速,但是从客厅到房间要经过3道墙!电脑的无线接收功能一般都很一般,网速不好理所当然. 2.弄一根网线从客厅连接起来很傻 ...

  3. 浏览器配置工具.bat

    在Web安装的ActiveX控件,默认安装在C:\WINDOWS\Downloaded Program Files目录下,但是有时候由于Internet Explorer的安全设置,会阻止Active ...

  4. Python_selenium中类函数模块的简单介绍

    Python_selenium中类函数模块的简单介绍 一.demo1.py的代码如下所示 #coding:utf-8 class ClassA(object): string = "这是一个 ...

  5. Http服务器实现文件上传与下载(四)

    一.引言 欢迎大家来到和我一起编写Http服务器实现文件的上传和下载,现在我稍微回顾一下之前我说的,第一.二章说明说明了整体的HTTP走向,第三章实现底层的网络编程.接着这一章我想给大家讲的是请求获取 ...

  6. Sql Server 数据库用Transact-SQL语句创建链接服务器

    1.在查询编辑器中,输入以下 Transact-SQL 命令以便链接到名为 SRVR002\ACCTG 的 SQL Server 实例: USE [master] GO EXEC master.dbo ...

  7. EF 更新操作 lambda解释+=

    我曾写过一个EF批量更新.删除的博客,后来操作的过程中经常遇到更新字段,但是要在原来的基础上计算的情况,我就先去获取一遍数据然后再计算,最后再去更新,显然这个操作是很复杂的 var guest = d ...

  8. window下搭建python开发环境

    搭建一个python开发环境比较简单,所以就稍微记录一下. 1.下载python然后安装 2.配置环境变量 3.在eclipse添加PyDev插件 1.下载python 官网:https://www. ...

  9. 创建超小的Golang docker 镜像

    原文: http://colobu.com/2015/10/12/create-minimal-golang-docker-images/ 本文对于创建超小的镜像非常有用 Docker是PaaS供应商 ...

  10. druid

    实时分析型数据库 Druid | Interactive Analytics at Scale http://druid.io/ Druid is primarily used to store, q ...