はじめに

こんにちは株式会社TIELECのタカシユウトです。この記事では定番CI/CDツールJenkinsの起動、停止、再起動の方法について紹介します。

Jenkinsの停止、起動、再起動ってあまりやることではないと思うのでやり方を忘れがちだと思います。また、やり方も何通りかあってどういうときにどういう操作を行えばいいのかわからなくなりませんか?

この記事ではこういったJenkinsの起動、停止、再起動のやり方を整理しました。Jenkinsの操作に悩んでいるという方、ぜひこちらの記事をご覧ください。

【2026年1月 更新】 最新の認証方法(APIトークン)やsystemdに関する情報を追加しました。

Jenkins の起動、停止、再起動方法まとめ

Jenkinsの起動、停止、再起動の方法は次のパターンに分類されます。

また、Jenkinsの停止、再起動を行う際の動作は複数のモードがあります。これらの情報についてまとめていきます。

停止、再起動のモード

Jenkinsの停止、再起動を行う際のモードは全部で6種類あります。

認証方法について(重要)

Jenkins をリモート操作する際の認証方法について、セキュリティ上の重要な変更があります。

API トークンの使用(推奨)

パスワードを直接コマンドに記述する方法は非推奨です。 以下の理由から、API トークンの使用が強く推奨されています:

API トークンの取得方法

  1. Jenkinsにログイン
  2. 画面右上の自分のユーザー名をクリック
  3. 「設定」(Configure) をクリック
  4. 「APIトークン」セクションで「Add new Token」をクリック
  5. トークン名を入力して「Generate」をクリック
  6. 生成されたトークンをコピー(一度しか表示されないので注意

認証方法の種類

Jenkins CLI や API を使う場合、以下の認証方法が利用できます:

1. API トークンを直接指定

-auth USERNAME:API_TOKEN

2. 環境変数を使用

export JENKINS_USER_ID=username
export JENKINS_API_TOKEN=your_api_token

3. SSH 公開鍵認証(デフォルトでは無効、設定が必要)

この記事では、以降のコマンド例で API トークンを使用します。

起動、停止、再起動の実行パターン

Jenkins 環境での操作

Unix-based 環境の場合

Ubuntu や Fedora などの環境の場合は以下のやり方で操作を行えます。

注意: Jenkins 2.335 および 2.332.1 以降、パッケージは systemd で構成されています(古い System V init から移行)。

ここで説明する操作はJenkinsを強制的に停止、起動、再起動させたい場合に使います。もし、現在実行中のJenkinsジョブが完了するのを待ちたい場合は後述するURLやAPIから quietDown または safeRestart を実行するようにしましょう。

start
sudo systemctl start jenkins
stop
sudo systemctl stop jenkins
restart
sudo systemctl restart jenkins
status(状態確認)
sudo systemctl status jenkins

Jenkins が正常に動作しているか確認できます。

トラブルシューティング

ログを確認する場合:

sudo journalctl -u jenkins.service

リアルタイムでログを監視する場合:

sudo journalctl -u jenkins.service -f

Windows 環境の場合

もし、JenkinsをWindowsサーバーにセットアップしている場合は2通りのやり方があります。

  1. Jenkins をWindowsのサービスに登録している場合はそこで操作可能です。
  2. コマンドから操作することもでき、次のコマンドで操作できます。
stop
C:\Program Files (x86)\Jenkins>jenkins.exe stop
start
C:\Program Files (x86)\Jenkins>jenkins.exe start
restart
C:\Program Files (x86)\Jenkins>jenkins.exe restart

Jenkins 画面での操作

Jenkinsに管理者でログインしURLを叩くことで停止や再起動を行うことができます。

exit
[🔗 http://<jenkins.server>/exit](http://<jenkins.server>/exit)
safe exit
[🔗 http://<jenkins.server>/safeExit](http://<jenkins.server>/safeExit)
quiet down
[🔗 http://<jenkins.server>/quietDown](http://<jenkins.server>/quietDown)
cancel quiet down
[🔗 http://<jenkins.server>/cancelQuietDown](http://<jenkins.server>/cancelQuietDown)
restart
[🔗 http://<jenkins.server>/restart](http://<jenkins.server>/restart)
safe restart
[🔗 http://<jenkins.server>/safeRestart](http://<jenkins.server>/safeRestart)
停止・起動中の画面

enter image description here

URLを開くと上記のような画面が開くので はい を押すとJenkinsに処理のリクエストが投げられます。

enter image description here

上記のような画面が開く場合は Retry using Post を押すとJenkinsに処理のリクエストが投げられます。

enter image description here

シャットダウン時は画面上にこのように表示されます。

enter image description here

再起動実行後はしばらくこの画面で待機してください。再起動完了後に画面が再読み込みされます。

Jenkins のリモート操作

セキュリティ警告: 以下の例では API トークンを使用しています。実際の運用では、環境変数に格納するか、認証情報ファイルを使用してください。

RemoteAPI (wget)

wget コマンドを使って停止する場合は以下のようになります。

注意: <user> にはユーザー名、<api-token> には取得した API トークンを指定してください。

exit
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/exit
safe exit
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/safeExit
quiet down
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/quietDown
cancel quiet down
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/cancelQuietDown
restart
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/restart
safe restart
wget --user=<user> --password=<api-token> --post-data='' http://<jenkins.server>/safeRestart

RemoteAPI (curl)

curl コマンドを使って停止する場合は以下のようになります(推奨)。

exit
curl -X POST -u <user>:<api-token> http://<jenkins.server>/exit
safe exit
curl -X POST -u <user>:<api-token> http://<jenkins.server>/safeExit
quiet down
curl -X POST -u <user>:<api-token> http://<jenkins.server>/quietDown
cancel quiet down
curl -X POST -u <user>:<api-token> http://<jenkins.server>/cancelQuietDown
restart
curl -X POST -u <user>:<api-token> http://<jenkins.server>/restart
safe restart
curl -X POST -u <user>:<api-token> http://<jenkins.server>/safeRestart

Jenkins CLI

Jenkins CLI を使っても同様のことが行えます。

認証方法1: -auth パラメータを使用

java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> <command>

認証方法2: 環境変数を使用

export JENKINS_USER_ID=<user>
export JENKINS_API_TOKEN=<api-token>
java -jar jenkins-cli.jar -s http://<jenkins-server>/ <command>
exit
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> shutdown
safe exit
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> safe-shutdown
quiet down
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> quiet-down
cancel quiet down
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> cancel-quiet-down
restart
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> restart
safe restart
java -jar jenkins-cli.jar -s http://<jenkins-server>/ -auth <user>:<api-token> safe-restart

まとめ

いかがでしたでしょうか。改めて内容をまとめます。

Jenkinsの起動、停止、再起動の方法は次のパターンに分類されます:

また、Jenkinsの停止、再起動を行う際の動作は通常モードとsafeモードがあるので状況によって使い分けましょう。

セキュリティのポイント:

参考ページ

おすすめ書籍

[📦 商品リンク: moshimo-book-jenkins-jissen]

[📦 商品リンク: moshimo-book-server-infra]

もっと深く学びたい方へ

この記事で、Jenkinsの起動・停止・再起動のやり方は理解できたと思います。

でも、実際の運用では「なぜこの操作が必要になったのか」「どういう状況でどの方法を選ぶべきか」という判断が求められます。

より深い理解のために、こちらの記事もおすすめです:

/ja/tech/sre/jenkins-efs-metadata-iops-issue/

/ja/tech/sre/decsar-method/