FreeBSD 11.2にGitbucketをインストールします。
Qiitaを検索するとtomcatを使った記事が何個かありましたが、
Gitbucketはtomcatのインストール無しで起動できるのでtomcat無しで構築します。
(ちなみにMySQL無しでもH2databaseで使えます)
環境
| ソフトウェア | バージョン |
|---|---|---|
| FreeBSD | 11.2 |
| MySQL | 5.7.24 |
| Gitbucket | 4.29.0 |
最初はMySQL8で試みたがgitbucketの起動時に下記のエラーが出力されて無理だったのでMySQL5.7にしました
java.sql.SQLException: (conn=13) Failed to add the foreign key constraint. Missing index for constraint 'IDX_ISSUE_COMMENT_FK0' in the referenced table 'issue'
pkg を使う準備と必要な pkg をインストール
OSを素でインストールした直後からの手順です。全部rootで作業しています。
# pkg update
# pkg install -y openjdk8 mysql57-server ca_root_nss
ca_root_nss は fetch で gitbucket.war をダウンロードする時に必要(https)
MySQLのインストール&起動&rootユーザのパスワード設定
# sysrc mysql_enable="YES"
# /usr/local/etc/rc.d/mysql-server start
# mysqladmin password 'tekito-pass' -u root -p`tail -1 /root/.mysql_secret`
MySQLのgitbucket用DB&ユーザ作成
# mysql -u root -p'tekito-pass'
mysql> CREATE DATABASE gitbucket;
mysql> CREATE USER 'gitbucket_user'@'127.0.0.1' IDENTIFIED BY 'gggppp';
mysql> GRANT ALL ON gitbucket.* TO 'gitbucket_user'@'127.0.0.1' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
GitbucketのDB用設定ファイルを作成
# mkdir -p /home/gitbucket
# cat /home/gitbucket/database.conf
db {
url = "jdbc:mysql://127.0.0.1/gitbucket?useUnicode=true&characterEncoding=utf8"
user = "gitbucket_user"
password = "gggppp"
}
Gitbucketのダウンロード
# fetch -o /home/gitbucket/gitbucket.war https://github.com/gitbucket/gitbucket/releases/download/4.29.0/gitbucket.war
Gitbucketの起動
# /usr/local/bin/java -jar /home/gitbucket/gitbucket.war --port=8080 --gitbucket.home=/home/gitbucket/
これでWebブラウザから下記を開けばGitbucketが使えます
http://サーバのIPアドレス:8080/
※ユーザー:root、パスワード:rootでログイン可能
おわりに
実運用する人はgitbucket用のユーザーや起動用スクリプトなどを作成したほうが良いので下記を参考に...
https://blog.bixr.com/2014/11/795/