1. ホーム
  2. jenkins

[解決済み] Jenkinsのログインタイムアウトを増加させる

2023-03-08 06:45:24

質問

Jenkins がユーザーをログアウトさせるまでのタイムアウト時間を長くする方法をご存知の方はいらっしゃいますか? 私はそれを1日くらいに上げたいと思っています。

私は一日中jenkinsに出入りして仕事をしていますが、ジョブの実行の間にログアウトされ続けています。 このフラストレーションに加え、'ログインしたまま' チェックボックスも機能していないようです。

どのように解決するのですか?

JenkinsはJettyを使用しており Jettyのデフォルトのタイムアウトは30分です . これは認証の設定とは無関係で、私はActive Directoryを使用していますが、それでもタイムアウトに影響を与えるのはこの設定です。

タイムアウトをオーバーライドするには、引数として --sessionTimeout=<minutes> をJenkinsのinitスクリプトに渡すか、あるいは -DsessionTimeout=<minutes> を .war ファイルに追加します。例えば

# Set the session timeout to 1 week
$ java -jar jenkins.war --sessionTimeout=10080

あるいは、Jenkinsの <jenkinsHome>/.jenkins/war/WEB-INF/web.xml を編集して、明示的に設定することを追加します。

<session-config>
  <!-- one hour -->
  <session-timeout>60</session-timeout>
</session-config>

によると オラクルのドキュメントによると によると、これを 0 に設定すると、タイムアウトを完全に無効にすることができます。

タイムアウトの現在の値を知るには、Jenkinsで提供されているGroovyコンソールを使用します。

import org.kohsuke.stapler.Stapler;
Stapler.getCurrentRequest().getSession().getMaxInactiveInterval() / 60

私のインスタンスでは、これは Result: 30 .