🤵‍♂️

Jenkinsをローカル環境に構築してみる!

に公開

実現したいこと

Linuxマシン(VM)上にJenkinsをインストールしてローカル環境でCI/CD環境を構築すること。

環境

項目 バージョン
物理マシン OS macOS Sequoia バージョン15.3
ハイパーバイザ VMware Fusion プロフェッショナル バージョン 13.6.3
仮想マシン OS Ubuntu 24.04.2 LTS
仮想マシン CPU 2vCPU
仮想マシン Memory 4GB
Jenkins 2.502
OpenJDK 17.0.14

仮想マシンにJenkins、Javaをインストール

  • Jenkins、Javaをインストールします
#Jenkinsパッケージリポジトリを追加、パッケージをインストール
sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkins

#Java(JDK)のインストール
sudo apt update
sudo apt install fontconfig openjdk-17-jre
  • Jenkinsの自動起動を有効化した後、サービスを起動します
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins

active (running)の状態になっていれば起動完了です

Jenkinsにアクセス

  • Jenkinsの初期パスワードを確認します
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
  • 物理マシンのブラウザからhttp://<仮想マシンのIPアドレス>:8080にアクセスして初期パスワードを入力した後、初期設定をします
    • プラグイン:おすすめを選択
    • ユーザー名:Administrator
    • パスワード:*******
    • フルネーム:Administrator
    • メールアドレス:Administrator@example.com(ダミー可)
    • Jenkins URL:http://<仮想マシンのIPアドレス>:8080/

Jenkinsでジョブの動作確認

シェクルスクリプトを実行する簡単なビルドジョブを作成して実行します

  • Jenkinsにログインしてダッシュボードの新規ジョブ作成を押します
  • 新規ジョブ作成画面でジョブ名を入力
    フリースタイル・プロジェクトのビルドを選択してOKボタンを押します
    • ジョブ名:test-job-001
  • ジョブのConfigureページのBuild Stepsでビルド手順の追加からシェルの実行を選択
    任意のスクリプトを入力した後、Saveボタンを押します
pwd
whoami
ls
echo 'Hello World!'
  • 今回作成したジョブのページでビルド実行ボタンを押します
    しばらく経つとBuildsの枠の中にビルド結果が表示されるので#1を選択
    コンソール出力にFinished: SUCCESSが出力されていれば動作確認は完了です
コンソール出力
Started by user Administrator
Running as SYSTEM
Building in workspace /var/lib/jenkins/workspace/test-job-001
[test-job-001] $ /bin/sh -xe /tmp/jenkins14560710433094444548.sh
+ pwd
/var/lib/jenkins/workspace/test-job-001
+ whoami
jenkins
+ ls
+ echo Hello World!
Hello World!
Finished: SUCCESS

まとめ

ローカル環境にJenkinsを構築して簡単なビルドジョブの動作確認まで出来ました!

Discussion