はじめに
こんにちは株式会社TIELECのタカシユウトです。この記事では定番CI/CDツールJenkinsの起動、停止、再起動の方法について紹介します。
Jenkinsの停止、起動、再起動ってあまりやることではないと思うのでやり方を忘れがちだと思います。また、やり方も何通りかあってどういうときにどういう操作を行えばいいのかわからなくなりませんか?
この記事ではこういったJenkinsの起動、停止、再起動のやり方を整理しました。Jenkinsの操作に悩んでいるという方、ぜひこちらの記事をご覧ください。
【2026年1月 更新】 最新の認証方法(APIトークン)やsystemdに関する情報を追加しました。
Jenkins の起動、停止、再起動方法まとめ
Jenkinsの起動、停止、再起動の方法は次のパターンに分類されます。
- Jenkins 環境での操作
- Linux や Windows にインストールされているJenkinsを直接操作します。
- Jenkins 画面での操作
- Jenkinsにログインして操作を行います。
- Jenkins のリモート操作
- APIやCLIを通じてリモートから操作します。
また、Jenkinsの停止、再起動を行う際の動作は複数のモードがあります。これらの情報についてまとめていきます。
停止、再起動のモード
Jenkinsの停止、再起動を行う際のモードは全部で6種類あります。
- exit (shutdown) - Jenkinsの停止を行います。
- safeExit (safeShutdown) - JenkinsをQuietモードにして、既存のビルドが完了するのを待ってから、Jenkinsをシャットダウンします。
- quietDown - 再起動に備えてJenkinsをQuietモードにします。このモードではJenkinsはビルドを開始しません。
- cancelQuietDown - 「quietDown」をキャンセルします。
- restart - Jenkinsの再起動を実行します。
- safeRestart - JenkinsをQuietモードにして、既存のビルドが完了するのを待ってから、Jenkinsを再起動します。
認証方法について(重要)
Jenkins をリモート操作する際の認証方法について、セキュリティ上の重要な変更があります。
API トークンの使用(推奨)
パスワードを直接コマンドに記述する方法は非推奨です。 以下の理由から、API トークンの使用が強く推奨されています:
- コマンド履歴にパスワードが残るリスク
- パスワードの再利用による被害拡大のリスク
- セキュリティ監査の観点からの問題
API トークンの取得方法
- Jenkinsにログイン
- 画面右上の自分のユーザー名をクリック
- 「設定」(Configure) をクリック
- 「APIトークン」セクションで「Add new Token」をクリック
- トークン名を入力して「Generate」をクリック
- 生成されたトークンをコピー(一度しか表示されないので注意)
認証方法の種類
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通りのやり方があります。
- Jenkins をWindowsのサービスに登録している場合はそこで操作可能です。
- コマンドから操作することもでき、次のコマンドで操作できます。
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)
停止・起動中の画面

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

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

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

再起動実行後はしばらくこの画面で待機してください。再起動完了後に画面が再読み込みされます。
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 環境での操作
- Linux や Windows にインストールされているJenkinsを直接操作します。
- Linux では systemd(
systemctl)を使用します。
- Jenkins 画面での操作
- Jenkinsにログインして操作を行います。
- Jenkins のリモート操作
- APIやCLIを通じてリモートから操作します。
- API トークンを使用してください(パスワードは非推奨)。
また、Jenkinsの停止、再起動を行う際の動作は通常モードとsafeモードがあるので状況によって使い分けましょう。
セキュリティのポイント:
- パスワードを直接コマンドに記述しない
- API トークンを使用する
- 環境変数や認証情報ファイルでトークンを管理する
参考ページ
- Managing systemd services - Jenkins
- Authenticating scripted clients - Jenkins
- How to Start, Stop or Restart your Instance? - CloudBees
- Jenkins CLI - Jenkins
おすすめ書籍
[📦 商品リンク: moshimo-book-jenkins-jissen]
[📦 商品リンク: moshimo-book-server-infra]
もっと深く学びたい方へ
この記事で、Jenkinsの起動・停止・再起動のやり方は理解できたと思います。
でも、実際の運用では「なぜこの操作が必要になったのか」「どういう状況でどの方法を選ぶべきか」という判断が求められます。
より深い理解のために、こちらの記事もおすすめです:
/ja/tech/sre/jenkins-efs-metadata-iops-issue/
/ja/tech/sre/decsar-method/