Vagrant で GitBucket を 立ち上げてみた
この記事は 2018年 8月 24日 に書かれた記事です。
自社サーバに アプリを インストールして 使うことが増えてきたので
まずは Vagrant で テスト運用してみようかと 思ったわけです
今回は GitBucket を 立ち上げてみたいと思います
docker で やればいいじゃん とか いろいろ有りそうですが 僕は 基本的に Vagrant を 使っていますね
docker って ボケッと 使ってると リビジョンが溜まっていたり コンテナ が 停止していなかったり 等
汚れていく イメージが強くて あまり好きになれないのですよね…
今回は そんな話ではなくて GitBucket ですよ!!
GitBucket
GitBucket
https://gitbucket.github.io/
Scala で 書かれており Javaの実行環境である JVM で動作します
有名所だと GitLab だと思うのですが
GitLab
https://about.gitlab.com/
ググってみると 機能豊富な分だけ スペックを要求する と あったので 今回は GitBucket を 採用しました
では 早速 Vagrant で 立ち上げてみましょう
Vagrantfile
VAGRANT_CONFIGURATION = "2" VAGRANT_NAME = "gitbucket" VAGRANT_NETWORK = "192.168.33.5" Vagrant.configure(VAGRANT_CONFIGURATION) do |config| config.vm.box = "centos/7" config.vm.hostname = VAGRANT_NAME config.vm.network "private_network", ip: VAGRANT_NETWORK config.vm.synced_folder "../script/", "/home/vagrant/script/", create: true, owner: 'vagrant', group: 'vagrant', mount_options: ['dmode=777,fmode=777'] config.vm.provider "virtualbox" do |vb| vb.name = VAGRANT_NAME end config.vm.provision "shell", :path => "setup.sh" end
setup.sh
echo '# SELinux disable ----------------------------------------------------------------------------------' setenforce 0 sed -i.bak "/SELINUX/s/enforcing/disabled/g" /etc/selinux/config echo '# yum ----------------------------------------------------------------------------------------------' yum -y upgrade echo '# mkdir ~/download ---------------------------------------------------------------------------------' mkdir -p ~/download/ cd ~/download/ # ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ echo '# apache java tomcat wget --------------------------------------------------------------------------' yum -y install httpd java-1.8.0-openjdk tomcat wget echo '# GitBucket ----------------------------------------------------------------------------------------' wget -P /usr/share/tomcat/webapps/ https://github.com/gitbucket/gitbucket/releases/download/4.27.0/gitbucket.war echo '# MariaDB 10.3 -------------------------------------------------------------------------------------' mkdir -p /etc/yum.repos.d/ touch /etc/yum.repos.d/mariadb.repo cat << EOS > /etc/yum.repos.d/mariadb.repo # MariaDB 10.3 CentOS repository list - created 2018-07-03 02:29 UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.3/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 EOS yum -y install MariaDB-server MariaDB-client echo '# git ----------------------------------------------------------------------------------------------' cd ~/download/ yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker wget https://www.kernel.org/pub/software/scm/git/git-2.18.0.tar.gz tar xzvf git-2.18.0.tar.gz cd git-2.18.0 make prefix=/usr/local all make prefix=/usr/local install cd ~/download/ # ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ echo '# apache restart -----------------------------------------------------------------------------------' systemctl enable httpd systemctl restart httpd echo '# tomcat restart -----------------------------------------------------------------------------------' systemctl enable tomcat systemctl restart tomcat
今回は apache openjdk tomcat という 構成で GitBucket を 動かしています
vagrant up
すると
GitBucket ローカル環境 (vagrant-hostsupdater 使用)
http://gitbucket:8080/gitbucket/
で アクセス することができます
感想
サクッと 環境を作ることができました
クラウドサービスを 使うまでもない 自分のPCでしか管理していない ファイル達を 管理して 使ってみようと思います
Git の 練習 にも 良いかもしれませんね!!