Jenkins を Mac にインストールして LAN内の PC から接続するまで
この記事でわかること
-
Mac に Jenkins をインストールして起動するまでの流れ
- パッケージからではなく、Homebrew を使う方法
- LAN内の 他のPCから Jenkins にアクセスするための設定
- 無償で使える Java (JDK) のインストール方法や変更方法
やりたいことのイメージ
- Jenkins による自動処理を MacBook や Mac mini 等で行いたい
- Mac をサーバとして、ローカルエリアネットワーク (LAN) 内で利用
Jenkins って何?
CI(継続的インテグレーション)を支援するオープンソース・ソフトウエア(OSS)の1つで、デファクトスタンダード。
CI とは、開発
⇒ビルド
⇒サーバ配備
⇒テスト
⇒リリース
、のような、開発〜リリースに至る一連の流れを自動的・高頻度に行い、手作業によるミスを回避し、問題(bug)を早期に発見することで、品質の向上と開発効率の向上を目指す手法のこと。
※ 上記のような CIとしてではなく、一連の処理を自動的に行う機能として使われるケースも多い
ざっくり、入れるものは以下
- Homebrew
- Java (JDK)
- Jenkins
検証環境
- MacBook Pro (13-inch, Mid 2010)
- macOS (Sierra) 10.12.6
インストールの流れ
Homebrew をインストール
インストール済みであればスキップ。
その場合は brew update
でアップデートしておくと良い。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 参考:Homebrew 公式サイト
- 必要に応じて Command Line Tools (CLT) for Xcode もインストール
- Homebrew インストールの流れで同時にインストールされるはず
- インストールされなければ、
xcode-select --install
でインストール
- インストール後、コマンドラインで
brew doctor
と打って、Your system is ready to brew.
と表示されればOK
Java (JDK) をインストール
インストール済みであればスキップ。
コマンドラインで java -version
と打って、バージョン等が表示されればインストール済み。
$ java -version
未インストールの場合、以下のダイアログが表示されるが、OK をクリックして終了する。(ここで紹介される Oracle の Java はインストールしない)
(インストール済みの場合の確認事項)
商用利用で Java (JDK) を無償利用したい場合、Mac に標準的にインストールされる Oracle JDK はサポート終了 or 有償サポートになっているので、Oracle JDK ではない事を確認しておく。
その場合を含め、JDK の確認やバージョンを変更したい場合は以下を参照。
⇒ JDK の確認・バージョン等を変更する場合(※ページ内リンク)
Java (AdoptOpenJDK) をインストール
Java (JDK) は、JavaAdoptOpenJDK 8 が 2023年9月までのサポートが確定しているのでオススメ。
参考:無償でJavaを商用使用する場合に検討すべき3つのJDK - Qiita
$ brew tap adoptopenjdk/openjdk
$ brew cask install adoptopenjdk8
途中、パスワードが求められた場合は Mac のパスワードを入力。
上記コマンドでインストール後、.bash_profile
に環境変数 JAVA_HOME
を設定し、パスを通す。
$ echo 'export JAVA_HOME=`/usr/libexec/java_home -v 1.8`' >> ~/.bash_profile
$ echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile
コマンドラインで java -version
と打って、AdoptOpenJDK のバージョンが表示されればOK。
$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.222-b10, mixed mode)
Jenkins をインストール
$ brew install jenkins
:
==> Summary
🍺 /usr/local/Cellar/jenkins/2.189: 7 files, 78MB, built in 1 minute 46 seconds
成功すると上記のような表示になる。
コマンドラインで jenkins --help
と打ち込んで、Jenkins のヘルプが表示されるのを確認しても良い。
Jenkins の初期設定
初期設定をするため、Jenkins を起動する。
$ jenkins
すると起動に関わるログが流れるが、途中で以下のようなログが出てくるはず。
*************************************************************
*************************************************************
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
abcdefghijklmnopqrstuvwxyz012345
This may also be found at: /Users/hoge/.jenkins/secrets/initialAdminPassword
*************************************************************
*************************************************************
*************************************************************
この時点で Jenkins は立ち上がっているので、インストールした Mac のブラウザから http://localhost:8080/
にアクセスする。
すると以下の画面が表示されるので、上記のターミナルに表示された文字列「abcdefghijklmnopqrstuvwxyz012345」(※この文字列は仮、実際はターミナル上に表示された文字列)を、Administrator password 欄に入力して、Continue をクリック。
※ もしパスワードが見つけられない場合、コマンドラインで cat /Users/{アカウント名}/.jenkins/secrets/initialAdminPassword
とすることでも確認できる。
![]() |
---|
次にプラグインのインストールの確認画面が出るので、左側のオススメセット(Install suggested plugins)をクリック。
![]() |
---|
しばらくインストール中の画面が表示されて…
![]() |
---|
管理ユーザーを作成する画面が表示されるので、項目を記入して Save and Continue をクリック。
![]() |
---|
次に URLの設定画面になるが、変更せずに Save and Finish をクリック。
![]() |
---|
もう1画面…!
Start using Jenkins をクリック。
![]() |
---|
で、無事に起動。
![]() |
---|
初期設定が終わったので、ここで 一旦 Jenkins を終了させる。
(先ほど Jenkins を起動したターミナル上で Ctrl-C
)
他の PC からアクセスできるように Jenkins を起動
設定ファイルの書き換え
Jenkins を起動する時に適用される設定ファイルを編集する。
以下は vi
を使う例だが、使い慣れているテキストエディタでも可。
$ vi /usr/local/Cellar/jenkins/{バージョン名}/homebrew.mxcl.jenkins.plist
以下の行を見つけて、Jenkins を起動する Mac のIPアドレス に書き換える。
<string>--httpListenAddress={IPアドレス}</string>
例:<string>--httpListenAddress=192.168.1.10</string>
もしIPアドレスが分からなければ、0.0.0.0
でもOK
Jenkins のバックグラウンド起動
初期設定時は jenkins
で起動したが、バックグラウンドで起動したいので、brew services
コマンドを使用する。
$ brew services start jenkins
先の例の場合、他の PC から http://192.168.1.10:8080/
で接続できる。
なお、Jenkins が起動しているかどうかは、以下のコマンドで確認可能。
#プロセスで確認する場合
$ ps aux | grep jenkins
#brewコマンドでも確認できる
$ brew services list
Jenkins の終了や再起動は以下で。
#Jenkins を終了する時
$ brew services stop jenkins
#Jenkins を再起動したい時
$ brew services restart jenkins
以上です。
補足:JDK の確認・バージョン等を変更する場合
コマンドラインで java -version
とすることで、JDK のバージョン等を確認できる。
$ java -version
java 11.0.1 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)
上記のようなバージョン表記の場合、Oracle の Java (JDK) であり、商用利用には有償ライセンス契約が必要になるので、無償&サポート期間の長い JavaAdoptOpenJDK 8 をインストールして切り替える。
$ brew tap adoptopenjdk/openjdk
$ brew cask install adoptopenjdk8
上記コマンドでインストール後、現在インストールされている Java を /usr/libexec/java_home -V
で確認する。(※ V は大文字)
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
11.0.1, x86_64: "Java SE 11.0.1" /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
1.8.0_222, x86_64: "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
この例の場合、Oracle の Java SE 11.0.1 と AdoptOpenJDK 8 の2つがインストールされている。
インストールした AdoptOpenJDK 8(ver. 1.8.0) に切り替えるため、~/.bash_profile
に環境変数 JAVA_HOME
を設定し、パスを通す。
(もちろん、既に ~/.bash_profile
に JAVA_HOME
や JAVA_HOMEへのパス
を通す設定があれば、該当箇所を書き換え)
$ echo 'export JAVA_HOME=`/usr/libexec/java_home -v 1.8`' >> ~/.bash_profile
$ echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile
インストール後、コマンドラインで java -version
と打って、OpenJDK のバージョン が表示されればOK。
$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.222-b10, mixed mode)
参考
Author And Source
この問題について(Jenkins を Mac にインストールして LAN内の PC から接続するまで), 我々は、より多くの情報をここで見つけました https://qiita.com/enuesutea/items/45527625362e5f3cc17b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .