首页 > 代码库 > centos6.5 64位下安装私有npm

centos6.5 64位下安装私有npm

搭建自己的私有npm库

1.安装Couchdb

[root@npm_private ~]# yum install wget
[root@npm_private ~]# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@npm_private ~]# rpm -ivh --test epel-release-6-8.noarch.rpm
[root@npm_private ~]# rpm -ivh epel-release-6-8.noarch.rpm
[root@npm_private ~]# yum --enablerepo=epel info couchdb
[root@npm_private ~]# yum install couchdb
[root@npm_private ~]# vi /etc/couchdb/local.ini
    [httpd]
    port = 5984
    bind_address = 127.0.0.1 (改为自己的IP地址)
[root@npm_private ~]#  /etc/init.d/couchdb start
[root@npm_private ~]# /etc/init.d/couchdb status
couchdb (pid  1329) 正在运行...
[root@npm_private ~]# service iptables stop

2.Couchdb追加用户

打开管理画面:http://your-ip-address:5984/_utils/
点击画面右下角的“Fix this”,创建用户。admin/admin

3.创建npm数据库

[root@npm_private ~]# curl -X PUT http://admin:admin@ipaddress:5984/registry
{“ok”:true}

4.配置npm用数据库

[root@npm_private ~]# vi /etc/couchdb/local.ini
[couch_httpd_auth]
public_fields = appdotnet, avatar, avatarMedium, avatarLarge, date, email, fields, freenode, fullname, github, homepage, name, roles, twitter, type, _id, _rev
users_db_public = true

[httpd]
secure_rewrites = false

[couchdb]
delayed_commits = false

5.安装git和node

[root@npm_private ~]# yum install git
[root@npm_private ~]# yum installl npm
[root@npm_private ~]# rpm --import https://fedoraproject.org/static/0608B895.txt
[root@npm_private ~]# rpm -Uvh http://download-i2.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
[root@npm_private ~]# yum install nodejs npm --enablerepo=epel

6.安装 npm-registry-couchapp

[root@npm_private ~]# git clone git://github.com/npm/npm-registry-couchapp
[root@npm_private ~]# cd npm-registry-couchapp/
[root@npm_private npm-registry-couchapp]# npm install
[root@npm_private npm-registry-couchapp]# npm start --npm-registry-couchapp:couch=http://admin:admin@ipaddress:5984/registry
[root@npm_private npm-registry-couchapp]# npm run load --npm-registry-couchapp:couch=http://admin:admin@10.2.3.245:5984/registry

7.同步官方npm库

[root@npm_private npm-registry-couchapp]# curl -X POST http://admin:admin@ipaddress:5984/_replicate -d ‘{"source":"http://isaacs.iriscouch.com/registry/", "target":"registry", "create_target":true}‘ -H "Content-Type: application/json"

8.在本地定义.npmrc

loglevel = "info"
always-auth = true
registry = http://admin:admin@ipaddress:5984/registry/_design/scratch/_rewrite

9. 在本地发布私有npm包

http://oschina.net/shanhe/blog/280441