亚马逊服务器配置php,在亚马逊AWS上建立Git服务器

本文可以算是前文用亚马逊的云(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应该就可以了

参考

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值