ubuntuにGitBucketを導入してssh接続する


OS

一応、私の動作環境です.

ubuntu 16.04.1 LTS

1. GitBucket を動かす

GitBucket の動作確認まで.

java8 以上を入れる

$ sudo apt-get install default-jre 
$ sudo apt-get install default-jdk

gitbucket.war を取得

GitBucket の release ページ で一番新しいやつを入れる.

$ wget https://github.com/gitbucket/gitbucket/releases/download/4.7.1/gitbucket.war

gitbucket 動作確認

$ java -jar gitbucket.war

実行すると、 http://[hostname]:8080/ で確認することができる.

2. サーブレットコンテナ Tomcat で GitBucket を動かす

Tomcat の導入

Apache Tomcat の 8.5.8 を入れる.

$ wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-8/v8.5.8/bin/apache-tomcat-8.5.8.tar.gz
$ tar zxvf apache-tomcat-8.5.8.tar.gz

gitbucket.war を Tomcat に入れる

$ mv gitbucket.war apache-tomcat-8.5.8/webapps/

Tomcat 起動

$ ~/apache-tomcat-8.5.8/bin/startup.sh

ちなみに終了は $ shutdown.sh.
実行すると、 http://[hostname]:8080/gitbucket で確認することができる.

3. ssh で GitBucket にアクセスする.

GitBucket に root でログインする

デフォルトの場合
id: root
pass: root

設定画面へ

右上アイコンから System administration をクリック.
サイドバーから System Settings を選択

Base URL の設定

Base URL の項目に入力する.
http://[hostname]:8080/gitbucket

SSH の有効化

SSH accessEnable SSH access to git repository にチェックを入れる.

SSH Host, SSH Port について

SSHでアクセスするときに下のようになる.

ssh://git@[SSH Host]:[SSH Port]/[User]/[repository name].git

SSH Host は好きな名前で大丈夫.(たぶん
SSH Port はデフォルト値で大丈夫.
実はこのときすでにSSHに関する設定はすべて完了しているため、何らかの設定をする必要はない.

4. ローカルの git の設定

ssh-keygen によるカギの作成等は割愛.

ssh/config について

ssh/config は以下のように設定する.

Host gitbucket
  User # ユーザー名
  Port 29418
  Hostname # ホスト名
  IdentitiesOnly yes 
  IdentityFile 秘密鍵の場所
設定名 内容
Host SSH Host の値
User GitBucket のユーザー名
Port SSH Port の値
HostName ホスト名(IPアドレスなど)
IdentitiesOnly ファイルに格納された秘密鍵のみを使用

ssh/config に関して詳しくは日本語マニュアル SSH_CONFIG

ssh 接続テスト

$ ssh -T [Host]
GitBucket の AA が見れたら成功.

参考Web

githubの複数アカウントにSSH接続するための設定手順
Ubuntu 16.04でGitBucketインストール+ssh接続
SSH接続の手順