文档章节

在亚马逊AWS上建立Git服务器

a
 aulphar
发布于 2014/02/21 14:48
字数 981
阅读 715
收藏 0

本文可以算是前文用亚马逊的云(AWS)免费建立wordpress blog的一个延续,在上文的基础上我们可以建立一个属于自己的git服务器。这里介绍的方法会用到gitolite和gitlist,gitolite是一个git的用户管理层,方便的管理用户和git repository,而gitlist是一个方便从网页查看git reposito的工具。本文假设你对git有基本的了解,并且基于提到的前文已经假设好了环境

在EC2上安装配置gitolite (sudo su)

cd /tmp
# 准备key文件,或者使用你现有的key文件
ssh-keygen -t rsa
cp id_rsa.pub /tmp/your-name.pub

# install packages 安装工具
sudo apt-get install git gitolite git-daemon-run
# create git user 创建git用户
sudo adduser --system --shell /bin/bash --gecos 'git version control' --group --disabled-password --home /home/git git
sudo su - git
cd /home/git
echo "PATH=$HOME/bin:$PATH" > .bashrc
# gl-setup gitolite初始化
gl-setup /tmp/your-name.pub
# 执行上面命令后gitolite会让选择熟悉的编辑器你修改配置文件,打开配置后座如下修改
	$REPO_UMASK = 0022;

至此gitolite安装完毕,建议

配置你工作机上的~/.ssh/config文件

以方便连接
config文件如下

Host 你喜欢的名字,如gs
Hostname 亚马逊PUBLIC DNS
User git
IdentityFile C:/Users/test/.ssh/id_rsa #你的私钥路径
#PreferredAuthentications publickey

在工作机上管理gitolite

这样你就可以在你的工作机上进行连接了,现在clone管理目录
git clone git@gs:gitolite-admin.git
编辑conf/gitolite.conf可以添加repository

repo    anothertest
        RW+     =   @all

添加用户只需将的公钥添加到keydir就可以了,如果用户有多个公钥,如工作机一个,笔记本一个,可以在keydir下添加目录然后添加key如为tom添加 laptop/tom.pub和workspace/tom.pub即可
修改完成之后commit并push回主机相应的repositoy和user了

在EC2上配置gitlist

用git来管理repository和user很方便,但如果你的老板要查看git上的提交就不那么方便了(:P),通过安装gitlist网页查看就会方便很多
gitlist.org 上下载最新版并完成配置

cd /tmp
wget https://s3.amazonaws.com/gitlist/gitlist-0.4.0.tar.gz
tar -zxf gitlist-0.4.0.tar.gz
mv gitlist /sites/
cd /sites/gitlist
mv config.ini-example config.ini
edit config.ini
    repositories[] = '/data/git/repositories/'
    hidden[] = '/data/git/repositories/gitolite-admin.git' #建议添加,管理目录不必被网页查看
mkdir cache #必须手动添加
chown -Rh www-data:www-data /sites/gitlist

创建site的nginx配置/etc/nginx/sites-available/gitlist

server {
	listen 80;
	server_name gitlist;
	keepalive_timeout 70;

	access_log /var/log/nginx/gitlist-access.log;
	error_log /var/log/nginx/gitlist-error.log;

	root /sites/gitlist;
	index index.php;
	location ~ /include {
	deny all;
	return 403;
	}

	location ~ ^/api/(tickets|tasks)(.*)$ {
	try_files $uri $uri/ /api/http.php;
	}

	location ~ ^/scp/ajax.php/(.*)$ {
	try_files $uri $uri/ /scp/ajax.php;
	}

	location / {
	index index.php;
	try_files $uri $uri/ /index.php?$args;
	}

	location ~ \.php$ {
	fastcgi_split_path_info ^(.+\.php)(/.+)$;
	include fastcgi_params;
	fastcgi_pass unix:/var/run/php5-admin.sock;
	#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	}
}

如果你此处用的fastcgi_pass是之前用过的那不需要额外的设置,如果没有那需要建立

cd /etc/php5/fpm/pool.d/
cp www.conf gitlist.conf
edit gitlist.conf
    name ->gitlist
    listen ->nginx config 中的

然后重启php5-fpm 和nginx访问你的地址就可以见到gitlist页面了
如果你在第一步设置配置是没有问题,那网页应该就可以正常显示了,如果那时设置的不对那么
编辑 /home/git/.gitolite.rc找到$REPO_UMASK改成0022然后手动设置已有的文件权限 chmod -R 755 /home/git应该就可以了

参考


本文转载自:http://aulphar.me/2014/02/21/%e5%9c%a8%e4%ba%9a%e9%a9%ac%e9%80%8aaws%e4%b8%8a%e5%bb%ba%e7%ab%8bgi...

a
粉丝 3
博文 2
码字总数 0
作品 0
南京
私信 提问
AWS CEO谈下一个软件革命:无服务器计算

  【IT168 资讯】在云技术的新潮热门趋势中,人们最不愿意看到任何具有误导性的术语,但“无服务器”计算却吸引了越来越多寻找进入云计算企业的目光。   无服务器是指一种创建云应用程序...

it168网站
2017/11/30
0
0
AWS DevOps实践:一年5000万次部署是怎样一种概念?

本文根据张孝峰老师在〖Gdevops 2017全球敏捷运维峰会广州站〗现场演讲内容整理而成。 (点击底部“链接”获取张孝峰演讲完整PPT) 讲师介绍 今天将跟大家分享一下亚马逊AWS在DevOps方向的一...

张孝峰
2017/12/28
0
0
亚马逊推AWS云应用商店:IT巨头大力支持

【IT168 资讯】据国外媒体报道,亚马逊网络服务(Amazon Web Service,以下简称“AWS”)近日推出了一个名为AWS Marketplace的云计算应用商店,用户可以直接在其中购买多家顶级企业推出的软件和...

eNet硅谷动力
2012/04/24
0
0
甲骨文推出新一代云计算基础设施,挑战亚马逊 AWS

美国时间9月18日,甲骨文(以下称 Oracle)公司的联合创始人兼首席技术官 Larry Ellison 在旧金山举办的 Oracle 2016 全球大会上正式推出 Oracle 的第二代云计算基础设施。该基础设施方便第三...

玄学酱
2018/05/15
0
0
亚马逊开放AWS云平台商店 众巨头齐支持

【IT168 资讯】北京时间4月20日消息,据国外媒体报道,亚马逊网络服务(Amazon Web Service,以下简称“AWS”)周四推出了一个名为AWS Marketplace的云计算应用商店,用户可以直接在其中购买多...

作者:腾讯
2012/04/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

每天AC系列(一):三数之和

1 题目 LeetCode第15题,难度中等,题目描述: 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答...

Blueeeeeee
42分钟前
56
0
OSChina 周四乱弹 —— 水果你们都没吃全

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @ 莱布妮子:分享五月天的单曲《温柔》@小小编辑 @cIouddyy @clouddyy 《温柔》- 五月天 手机党少年们想听歌,请使劲儿戳(这里) @FalconChe...

小小编辑
今天
99
1
聚合支付网站被黑客攻击 导致数据库被篡改的防御办法

2020春节即将来临,收到新聚合支付平台网站客户的求助电话给我们Sinesafe,反映支付订单状态被修改由原先未支付修改为已支付,导致商户那边直接发货给此订单会员了,商户和平台的损失较大,很多码...

网站安全
昨天
63
0
MySQL-基于SELECT查询的UPDATE查询

我需要检查(从同一张表)基于日期时间的两个事件之间是否存在关联。 一组数据将包含某些事件的结束日期时间,另一组数据将包含其他事件的开始日期时间。 如果第一个事件在第二个事件之前完成...

javail
昨天
70
0
将PostgreSQL数据库复制到另一台服务器

我正在将生产PostgreSQL数据库复制到开发服务器。 什么是最快,最简单的方法? #1楼 pg_dump the_db_name > the_backup.sql 然后将备份复制到您的开发服务器,并使用以下命令进行还原: ps...

技术盛宴
昨天
130
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部