前回、せっかくリバースプロキシの設定を行ったので、新しいwebサイトを運用してみることにした。

そこで、gitbucketというgithubライクなgitのリモートリポジトリ管理ソフトを動かすことにした。

この比較サイトにあるように、githubライクなツールとして有名なGitLabがあるが、リソースをバカ食いするようなので、個人でちびちび使う用途には向きそうにない。そこで、今回はリソース消費が少なく、簡単に動かせるgitbucketを使うことにした。

GitBucket のインストール

GitBucketをインストールといっても、Githubのリリースページからwarファイルを一つ落としてきて、javaで走らせるだけである。

$ java -jar gitbucket.war

あとは、wikiにあるように、オプションをいろいろつければ終わり。ものすごく簡単。

自動起動したければ、systemdのサービスを作っておくといいだろう。私は、/opt/gitbucketに必要なファイルと起動スクリプトを詰めて、以下のサービスファイルを作った。

# vim /etc/systemd/system/gitbucket.service

[Unit]
Description=Run gitbucket server
After=network-online.target local-fs.target
ConditionPathExists=/opt/gitbucket/bin

[Service]
ExecStart=/opt/gitbucket/bin/autostart.sh
Restart=yes
Type=simple

[Install]
WantedBy=multi-user.target
# vim /opt/gitbucket/bin/autostart.sh

#!/bin/sh
java -jar /opt/gitbucket/gitbucket.war --port=8081 --gitbucket.home=/your/gitbucket/data ==temp_dir=/your/gitbucket/tmp/dir

Nginxによるリバースプロキシ

wikiを参考に、nginxのserverを設定した。

# vim /etc/nginx/sites-available/gitbucket

server {
    listen   80; # The default is 80 but this here if you want to change it.
    server_name gitbucket.example.com;
    
    location / {
        proxy_pass              http://localhost:8080;
        proxy_set_header        Host $host;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_connect_timeout   150;
        proxy_send_timeout      100;
        proxy_read_timeout      100;
        proxy_buffers           4 32k;
        client_max_body_size    500m; # Big number is we can post big commits.
        client_body_buffer_size 128k;
    }
}

あとは、MyDNSのDDNS設定と内向きのDNSのBindのホスト設定にgitbucketを追加すれば、完成だ。

ssl通信したかったんだけど、tomcatを使わないとだめみたいで、面倒になったので、通常のhttpで我慢することにする。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください