LoginSignup
7
10

More than 5 years have passed since last update.

GitとJenkinsをローカルサーバー(CentOS7)上に構築して連携してみる

Last updated at Posted at 2019-02-04

GitHubを利用せずに、ローカルのみでCI環境を構築するにあたって、ひとまず連携までしてみました。

構成

・Jenkinsサーバー(192.168.11.95)
 CentOS 7.6.1810
 Jenkins 2.150.2

・Gitサーバー(192.168.11.96)
 CentOS 7.6.1810
 git 1.8.3.1

環境設定

・Firewall,SELinux無効化

systemctl stop firewalld
systemctl disable firewalld
vi /etc/selinux/config ←「disabled」に変更

Gitサーバー構築

・gitインストール

yum -y install git

・初期設定

git config --global user.name <ユーザ名>
git config --global user.email <メールアドレス>
git config --list ←設定確認

・リモートリポジトリの作成

mkdir /var/lib/git
mkdir /var/lib/git/project.git
cd /var/lib/git/project.git
git --bare init
 ← リモートリポジトリ確認

・ローカルリポジトリの作成

mkdir /root/local
cd /root/local
git init
echo test > test #テスト用のファイルです
git add .
git commit -m "first commit"

・ローカルリポジトリにリモートリポジトリを追加

git remote add origin /var/lib/git/project.git

Jenkinsサーバー構築

・OpenJDKをインストール

yum -y install java-1.8.0-openjdk

・yumリポジトリ追加

yum -y install wget
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo

・RPMパッケージの公開鍵をインポート

rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

※インストールに使うJenkinsのRPMパッケージに問題がないか₍改ざんされてないか₎をチェックするために使用

・Jenkinsインストール

yum install jenkins

・起動設定

systemctl start jenkins
systemctl enable jenkins

・鍵の作成と配置

[root@jenkins ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
※全て空欄
[root@jenkins ~]# ssh-copy-id root@192.168.11.96 ←Gitサーバーへ配置

・接続確認

yum -y install git
git ls-remote -h ssh://root@192.168.11.96/var/lib/git/project.git 
※エラーが出力されなければOK

・秘密鍵確認

cat /root/.ssh/user_rsaid_rsa

・Jenkins初回ログイン用パスワードを確認

cat /var/lib/jenkins/secrets/initialAdminPassword

Jenkins初期設定(GUI)

・初回設定画面にアクセス
http://192.168.11.95:8080

・ログイン
テキストボックスに、確認した「initialAdminPassword」の内容を張り付け
キャプチャ1.PNG
・推奨プラグインをインストール
"Install suggested plugins”をクリック
キャプチャ2.PNG
・管理ユーザー作成
キャプチャ3.PNG

Jenkins Git連携

・設定画面へ進む
"新規Job作成"をクリック
キャプチャ4.PNG
・名前設定
適当な名前を入力し、"フリースタイル・プロジェクトのビルド"を選択し次へ
キャプチャ5.PNG
・Job設定
ソースコード管理にて、"Git"を選択
"追加"をクリックし、"Jenkins"を選択
キャプチャ7.PNG
キャプチャのように設定
※鍵は、上で確認した「/root/.ssh/user_rsaid_rsa」の中身
キャプチャ8.PNG
リポジトリURLに、接続確認を行った際の確認先のURLを入力
認証情報のプルダウンで、作成したものを選択
※赤字でエラーが出ないでキャプチャのようになれば成功
キャプチャ9.PNG
"ビルドするブランチ"を削除
キャプチャ10.PNG
”ビルド・トリガ"における、"定期的に実行"を選択し、スケジュールに"H/15 * * * *"と入力
※15分おきにビルド設定
"ビルド環境"における、"コンソール出力にタイムスタンプを追加する"を選択
キャプチャ11.PNG
画面最下部の"保存"をクリック
・Job稼働確認
"ビルド実行"をクリック
キャプチャ13.PNG
実行されたら履歴が現れるので、"#1"をクリック
キャプチャ14.PNG
"コンソール出力"をクリック
キャプチャ15.PNG
"SUCCESS"となっていることを確認
キャプチャ16.PNG

参考

・Git
Gitのインストールと初期設定
ベアリポジトリとノンベアリポジトリ

・Jenkins
Jenkinsをインストール
JenkinsとGitサーバーを連携してビルド環境を構築する。

7
10
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
10