本教程适用于centos

安装之前

检查nodejs

假设没安装nodejs依照下面步骤安装

$ su -
$ yum install openssl-devel
$ cd /usr/local/src
$ wget http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz
$ tar zxvf node-v0.10.29.tar.gz
$ cd node-v0.10.29
$ ./configure
$ make
$ make install

查一下版本,看有没有成功安装:

$ node -v
v0.10.29

检查git

假设没安装,请依照下面步骤安装

$ sudo yum -y install git

開始安装bower私库

STEP 1 安装 git 和 git-deamon

$ sudo yum install -y git git-daemon

STEP 2 安装 private-bower

$ sudo npm install -g private-bower

STEP 3 设置 private-bower

$ sudo su -
$ cd /data
$ mkdir private-bower
$ vim /data/private-bower-config.json

将下面内容粘贴进去:

{
"port": 5678,
"registryFile": "./private-bower/bowerRepository.json",
"disablePublic": false,
"publicRegistry": "http://bower.herokuapp.com/packages/",
"repositoryCache": {
"git": {
"enabled": true,
"cacheDirectory": "./private-bower/gitRepoCache",
"host": "<bower server ip>",
"port": 6789
},
"svn": {
"enabled": true,
"cacheDirectory": "./private-bower/svnRepoCache",
"host": "<span style="font-family: Arial, Helvetica, sans-serif;"><bower server ip></span><span style="font-family: Arial, Helvetica, sans-serif;">",</span>
"port": 7891
}
},
"log4js" : {
"enabled": true,
"configPath" : "./private-bower/log4js.conf.json"
}
}

当中的 <bower server ip> 换成你server在外部看起来的ip,由于假设有人已经用过这个库,比方 jquery,再次使用private-bower会让client直接连接server的6789port去获取缓存,所以这个host是给client识别用的

$ vim /data/private-bower/log4js.conf.json
{
"appenders": [
{
"type": "dateFile",
"filename": "./private-bower/private-bower.log",
"pattern": "-yyyy-MM-dd",
"alwaysIncludePattern": false
},
{
"type": "console"
}
],
"replaceConsole": true
}

启动 private-bower

$ sudo su -
$ cd /data
$ private-bower --config ./private-bower-config.json
[2014-06-30 10:00:22.481] [INFO] console - [bower] Refreshing public packages...
[2014-06-30 10:00:22.512] [INFO] console - [bower] Bower server started on port 5678
[2014-06-30 10:00:22.538] [INFO] console - [bower] Starting git cache server
[2014-06-30 10:00:22.543] [INFO] console - [bower] Starting svn cache server
[2014-06-30 10:01:09.167] [INFO] console - [bower] Loaded public packages

确保 private-bower 正常启动:

打开一个新窗体来訪问:

$ lynx http://localhost:5678/

会显示:

   

   Fork me on GitHub





Private Bower





   ____________________

   Docs Public Packages

   Private Bower service is down

   No private packages registered read docs about how to register packages.

   Loading Packages...





{{ package.name }}





   hits: {{ package.hits }}

   {{ package.repo }}





Created by





   BarnaToth





Barna Tóth





假设是这样。就安装完成了

client測试

$ sudo su -
$ npm install -g bower
$ su - wlsuser
$ bower help
$ vim .bowerrc
{ "registry": "http://<your private repository ip>:5678" }
$ cd <testdir>
$ bower install jquery

有用命令

删除库

使用 POST 方式发送json到 removePackage 路径


bower-server:5678/removePackage

{ "name": "package-name" }

清除本地bower缓存

$ bower cache clean

怎样建立一个bower私库的更多相关文章

  1. Docker version 1.12.5建立registry私库

    sudo docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry :前面的是宿主机的地址(/opt/da ...

  2. DevOps - 项目私库 - Nexus Repository

    相关链接 Sonatype官网:https://www.sonatype.com Products: Nexus Repository OSS2.x & 3.x Documentation:  ...

  3. maven私库nexus2.11.4迁移升级到nexus3.12.0

    nexus简介 nexus是一个强大的maven仓库管理器,它极大的简化了本地内部仓库的维护和外部仓库的访问. nexus是一套开箱即用的系统不需要数据库,它使用文件系统加Lucene来组织数据 .n ...

  4. Windows下用Codeblocks建立一个最简单的DLL动态链接库

    转自:http://blog.csdn.net/wangwei_cq/article/details/8187576 来源:http://hi.baidu.com/hellosim/item/9ae4 ...

  5. OSG入门即osgEarth建立一个地球的详细步骤

    OSG入门即osgEarth建立一个地球的详细步骤 转:http://blog.csdn.net/xiaol_deng/article/details/9246291 最近在学习有关osg的知识,刚开 ...

  6. APICloud支持Atom编辑器,并建立开发工具核心库

    APICloud支持Atom编辑器开发工具 APICloud始终坚持多开发工具支持策略,开发者无论使用Sublime Text3.Eclipse还是Webstorm,都可以在APICloud平台中找到 ...

  7. Protel99se教程一:建立一个数据库文件

    学习Protel99 SE的第一步,是建立一个DDB文件,也就是说,使用protel99se进行电路图和PCB设计,以及其它的数据,都存放在一个统一的DDB数据库中的 一.打开protel 99se后 ...

  8. jQuery UI 是建立在 jQuery JavaScript 库上的一组用户界面交互、特效、小部件及主题

    jQuery UI 是建立在 jQuery JavaScript 库上的一组用户界面交互.特效.小部件及主题.无论您是创建高度交互的 Web 应用程序还是仅仅向窗体控件添加一个日期选择器,jQuery ...

  9. ROS学习记录(四)————怎样建立一个package包?

    功能包是什么? 英文表述package,我可没有在炫英文啊,我的英文很烂的,只是在提醒大家,在ROS系统中,这个词使用的频率非常之高,你必须记住它,要不就没法正确的看懂信息.言归正传,package是 ...

随机推荐

  1. 循环结构中break、continue、return和exit的区别

    1. break break语句的使用场合主要是switch语句和循环结构.在循环结构中使用break语句,如果执行了break语句,那么就退出循环,接着执行循环结构下面的第一条语句.如果在多重嵌套循 ...

  2. CentOS 6.5(64bit)安装GCC4.8.2+Qt5.2.1(替换GCC的链接库)

    截至目前,Qt的最新版本为5.2.1,CentOS的版本为6.5,GCC的版本为4.8.2,经过一番尝试,终于将Qt开发环境安装到了CentOS(64 bit)中,整个过程中有几个需要注意的地方,在这 ...

  3. 部署一个class文件

    只发布一个class文件找到项目工作空间/target/class..根据项目结构找到修改的java文件编译的class文件比如RegexUtils.class使用SecureFXPortable将文 ...

  4. 55. 略谈Lotus Notes的与众不同及系列文章至此的总结

    在二十多年的悠久历史里,Lotus Notes发展出一整套独特的概念.技术和思维.由于它早期惊人的领先时代和后续发展中同样惊人的忠于传统,这位软件领域的寿星在如今发展更新速度远超往日和技术愈趋公开互通 ...

  5. 基于visual Studio2013解决C语言竞赛题之0404循环求和

      题目 解决代码及点评 这道题考验for循环和一个简单的算法 因为每次累加的值有规律,后面一次累加是前面一次累加的两倍 所以可以用简单的循环,计算累加项和累加结果 /************ ...

  6. android linearlayout imageview置顶摆放

    在练习android时,想在Linearlayout内放一图片,使其图片置顶,预期效果是这样的: 但xml代码imageview写成这样后, <ImageView android:layout_ ...

  7. 探索Android中的Parcel机制(上)

    一.先从Serialize说起 我们都知道JAVA中的Serialize机制,译成串行化.序列化……,其作用是能将数据对象存入字节流其中,在须要时又一次生成对象.主要应用是利用外部存储设备保存对象状态 ...

  8. 循环调用修正sic86 2改后的(除了第一年有点诡异,其他年份可以正常修复)

    create or replace procedure rebuild_sic86_wyl(pi_aac001 in number, po_fhz out varchar2, po_msg out v ...

  9. Ural 1149 - Sinus Dances

    Let An = sin(1–sin(2+sin(3–sin(4+…sin(n))…)Let Sn = (…(A1+n)A2+n–1)A3+…+2)An+1For given N print SN I ...

  10. iOS- 三步快速集成社交化分享工具ShareSDK

    http://www.cnblogs.com/qingche/p/3727559.html 1.前言 作为现在App里必不可少的用户分享需要,社交化分享显然是我们开发app里较为常用的. 最近因为公司 ...