概要
私は、IT勉強としてコードリーディングをよくやる。
今の世の中、GitHubに実に1億以上のリポジトリが存在し教材の宝庫である。
ただ読むだけでは無く、動かし、コメントを追加し
ときには動作を変えながら試行錯誤で学んでいく。
さて、このような場合に、(あくまで学習用に)ソースコードに直接編集するのだが
それを、Gitで管理したいと思った。
GitHubのアカウントを持ってはいるものの、オリジナルソースは完全に
オリジナルをコーディングしている方のライセンスだし
自分Gitに登録するのは、なんとなくはばかられる。
そこで、自分学習用の完全ローカルな
redmine-GitBucket環境
を作ろうということで用意した。
その手順で、一部苦労したのでその点も踏まえて投稿することにした。
利用環境
>
Windows10 20H2
Ubuntu 20.10
Tomcat 9.0.41
bitnami-redmine-4.1.1
>
動作環境概略イメージ
セットアップ手順
単体で動作まで
■JDKのインストール
>
sudo apt-get install default-jre
sudo apt-get install default-jdk
■GitBucket の release ページ で一番新しいやつを入れる.(2020/12/20時点)
>
wget https://github.com/gitbucket/gitbucket/releases/download/4.34.0/gitbucket.war
■単体動作確認
>
java -jar gitbucket.war
ホスト側から
http://192.168.x.x:8080/
Tomcatで動作させる
■Tomcatのインストール最新(2020/12/20時点) 9.0.41
>
wget https://ftp.kddi-research.jp/infosystems/apache/tomcat/tomcat-9/v9.0.41/bin/apache-tomcat-9.0.41.tar.gz
>
tar zxvf apache-tomcat-9.0.41.tar.gz
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
mv apache-tomcat-9.0.41.tar.gz /tmp/
cd /tmp
sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-9.0.41.tar.gz -C /opt/tomcat --strip-components=1
cd /opt/tomcat
sudo chgrp -R tomcat /opt/tomcat
・tomcat グループに conf ディレクトリとそのすべてのコンテンツへの読み取りアクセス権と、ディレクトリ自体への実行アクセス権を付与
>
sudo chmod -R g+r conf
sudo chmod g+x conf
・tomcatユーザーを webapps、 work 、 temp、および logs ディレクトリの所有者にする。
>
sudo chown -R tomcat webapps/ work/ temp/ logs/
・systemdサービスファイルを作成
>
sudo vim /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
#これを追加すること!!!
Environment=GITBUCKET_HOME =/opt/tomcat/.gitbucket
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
・スタート
>
sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl status tomcat
・gitbucket.war を Tomcat に入れる
>
sudo mv gitbucket.war /opt/tomcat/webapps/
・Tomcatがブート時に自動的に起動するようにする。
>
sudo systemctl enable tomcat
■注意点
Caused by: java.io.IOException: Directory '/opt/tomcat/.gitbucket' could not be created
というエラーが出たら、当該フォルダに、tomcatユーザーにアクセス権を与えること
以上