Linux (CentOS 7) で GitBucket を動かす
開発サーバーにGitBucketを入れたので、その手順をメモする。
入れたものは下記のとおり。
製品 | バージョン | 参照先 |
---|---|---|
JDK | 8u101-linux-x64 | Java SE Development Kit 8 - Downloads |
Tomcat | 8.5.5 | Apache Tomcat® - Apache Tomcat 8 Software Downloads |
GitBucket | 4.4 | Release 4.4 · gitbucket/gitbucket · GitHub |
それぞれの手順を順に記す。
JDK
TomcatとGitBucketを動かすためにJDKを入れる。
Oracleのダウンロードページから、現在最新版の8u101をダウンロードする。
手元のLinuxは64bitなので、linux-x64を。
RPMの方が楽なのでjdk-8u101-linux-x64.rpmをダウンロード。
ユーザー作成
まずはTomcatを動かすためのユーザー tomcat を作る。
useradd -s /sbin/nologin tomcat
Tomcatのインストール
ダウンロードサイトからTomcatのtar.gzファイルをダウンロードし、適当なフォルダに展開する。
tar xvzf apache-tomcat-8.5.5.tar.gz
展開したファイルを /usr/local に移動する。
mv apache-tomcat-8.5.5 /usr/local
所有者を先ほど作成したtomcatに変更する。
cd /usr/local chown -R tomcat:tomcat apache-tomcat-8.5.5
ln -s apache-tomcat-8.5.5 tomcat
環境変数を設定
/etc/profileに環境変数 CATALINA_HOME を設定する。
/etc/profile をエディタ開いて、下記を追加。
export CATALINA_HOME=/usr/local/tomcat
Tomcatをデーモンとして動かす
サーバーなのでサーバー起動時に自動で立ち上がって欲しいからデーモンとして動かす。
Tomcatには jsvc というデーモン化ツールがあるので、それをセットアップして使う。
まずはTomcatのインストールフォルダのbinに移動。
cd /usr/local/tomcat/bin
jsvcのアーカイブを展開。
tar xvzf commons-daemon-native.tar.gz
展開後のフォルダに移動。
cd commons-daemon-1.0.15-native-src/unix
Makeファイルを生成。
./configure
makeを実行。
make
出来たjsvcをコピー。
cp jsvc ../..
ここまででデーモン起動用のシェルが作成されるので、試しに起動してみる。
cd /usr/local/tomcat/bin ./daemon.sh start
ブラウザで http://localhost:8080/ にアクセスする。
リモートの環境ならlocalhostではなく対象のIPアドレスなりを入力すること。
もし実行環境のファイアーウォールが原因でアクセスできない場合は8080ポートを空ける等、適宜対応を。
firewall-cmd --zone=public --add-port=8080/tcp --permanent firewall-cmd --reload
起動用のスクリプトを /usr/lib/systemd/system/tomcat.service に作成する。
/usr/lib/systemd/system/tomcat.service をエディタで新規作成する。
内容は下記のとおり。
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking PIDFile=/var/run/tomcat.pid Environment=CATALINA_PID=/var/run/tomcat.pid Environment=JAVA_HOME=/usr/java/default Environment=CATALINA_HOME=/usr/local/tomcat Environment=CATALINA_BASE=/usr/local/tomcat Environment=CATALINA_OPTS= ExecStart=/usr/local/tomcat/bin/jsvc \ -Dcatalina.home=${CATALINA_HOME} \ -Dcatalina.base=${CATALINA_BASE} \ -cp ${CATALINA_HOME}/bin/commons-daemon.jar:${CATALINA_HOME}/bin/bootstrap.jar:${CATALINA_HOME}/bin/tomcat-juli.jar \ -user tomcat \ -java-home ${JAVA_HOME} \ -pidfile /var/run/tomcat.pid \ -errfile SYSLOG \ -outfile SYSLOG \ $CATALINA_OPTS \ org.apache.catalina.startup.Bootstrap ExecStop=/usr/local/tomcat/jsvc \ -pidfile /var/run/tomcat.pid \ -stop \ org.apache.catalina.startup.Bootstrap [Install] WantedBy=multi-user.target ||< サービス登録をする。 >|sh| systemctl enable tomcat.service
GitBucket
最後にGitBucketを入れる。
GitBucketのWARファイルをダウンロードし、Tomcat の webapps フォルダにコピーする。
cp gitbucket.war /usr/local/tomcat/webapps
ホットデプロイされていないようなら Tomcat を再起動する。
systemctl restart tomcat
ブラウザで http://localhost:8080/gitbucket/ にアクセスする。
GitBucketのトップ画面が出てきたらOK。