Skip to content

Instantly share code, notes, and snippets.

@makotot
Created December 18, 2012 14:51
Show Gist options
  • Save makotot/4328649 to your computer and use it in GitHub Desktop.
Save makotot/4328649 to your computer and use it in GitHub Desktop.
gitolite on AWS EC2 ubuntu instance

AWS

security group

  • aws management consoleでセキュリティグループを作成
  • inboundでHTTPを選択(0.0.0.0/0のままで)
  • inboundでSSHを選択(0.0.0.0/0のままで。自分のIPに変更したら、そのIPからしかアクセスできない)

instance

  • classic wizardを選択
  • Ubuntuを選択

Elastic IP(固定IP)

  • Elastic IPsをクリックしてAllocate New Address。Yes, allocate。
  • 生成されたIPを右クリックして、Associate。

ここまででmanagement consoleでの設定は完了。

ssh

scp

  • winscpをインストール。
  • port:22でユーザ:ubuntuでSSH同様にppkを使ってログイン。

ssh

まず

$ sudo apt-get update

でアップデート。

LAMP環境構築するならtasksel。

$ sudo apt-get install tasksel
  • git
$ sudo apt-get install git-core git-doc
$ git config –global user.name “your name here”
$ git config –global user.email “your email here”
  • gitolite

id_rsa.pubを生成しておく。それを任意のusername.pubでwinscpを使い/tmpにおく。

グループをつくり、ユーザをつくる。

$ sudo addgroup gitolite
$ sudo adduser --disabled-password --home /home/gitolite --ingroup gitolite gitoltite

gitoliteをインストール。

$ sudo apt-get –y install gitolite

gitwebでのアクセス用にwww-dataをgitoliteグループに追加。

$ sudo usermod -a -G gitolite www-data
$ sudo service apache2 restart

ユーザをgitoliteに切り替える。

$ sudo su – gitolite

/tmpにおいておいたpublickeyでgitoliteのセットアップ。

$ gl-setup /tmp/username.pub

.gitolite.rcを編集して$REPO_UMASKの値を以下に変更。

$REPO_UMASK = 0027;

以下の権限も変更してgitoliteからもとのユーザに戻る。

$ chmod g+r /home/gitolite/projects.list
$ chmod –R g+rx /home/gitolite/repositories
$ exit

ここまで完了したらローカルPCでgitolite-adminをcloneする。

$ cd hoge
$ git clone gitolite@elasticIP:gitolite-admin.git

cloneできたら、conf/gitolite.confを編集。

repo    gitolite-admin
RW+     =   id_rsa

repo    testing
RW+     =   @all
testing "Owner" = "Test repo"

編集したらコミット。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment