Tomcat7でJENKINS_HOMEを設定しますか?


9

UbuntuのTomcat7でJenkinsをセットアップしようとしています。Tomcat7をインストールして展開しjenkins.war、Jenkinsホームページをに表示しましたhttp://myhost:8080/jenkinsが、Jenkinsディレクトリをに作成しようとしていますが、/usr/share/tomcat7/.jenkinsセキュリティ上の理由からできません。私はすでにグループのアクセス許可を作成/srv/jenkinsして与えており、そのパスtomcat7に設定JENKINS_HOMEしたいと思います。私はそれをtomcat設定に追加しようとしました/etc/tomcat7/server.xml

<GlobalNamingResources>

  <Environment name="JENKINS_HOME" value="/srv/jenkins"
       type="java.lang.String" override="false"/>
  <!-- Default settings -->

また、自動的に作成されたコンテキストファイルに追加しようとしましたROOT/META-INF/context.xml$CATALINA_HOME/conf知る限りではありません)。

<Context path="/"
        antiResourceLocking="false" >
    <Environment name="JENKINS_HOME" value="/srv/jenkins/" type="java.lang.String"/>
</Context>

しかし、tomcat7を再起動した後でも、同じ結果が得られます(を使用しようとしました/usr/share/tomcat7/.jenkins)。

JENKINS_HOMETomcat7の環境変数をどこに設定する必要がありますか?

回答:


3

これは私が好むソリューションではありませんが、で/usr/share/tomcat7/bin/setenv.sh説明されているスクリプトを作成しましたcatalina.sh

#!
export JENKINS_HOME=/srv/jenkins

そしてもちろん、に実行権限を与えましたchmod ugo+x setenv.sh


3

に設定しました/etc/default/tomcat7。たとえば、次の行を追加します。

JENKINS_HOME=/srv/jenkins

1

私のjenkins-dataがバックアップされたファイルシステムに行くシンボリックリンクアプローチ。

[root@lx08 tomcat6]# ln -s /data01/jenkins .jenkins
[root@lx08 tomcat6]# ls -la
total 12
drwxrwxr-x    3 root root   4096 Dec 27 13:00 .
drwxr-xr-x. 181 root root   4096 Dec 27 11:28 ..
drwxr-xr-x    2 root root   4096 Dec 27 11:28 bin
lrwxrwxrwx    1 root tomcat   12 Dec 27 11:28 conf -> /etc/tomcat6
lrwxrwxrwx    1 root root     15 Dec 27 13:00 .jenkins -> /data01/jenkins
lrwxrwxrwx    1 root root     23 Dec 27 11:28 lib -> /usr/share/java/tomcat6
lrwxrwxrwx    1 root root     16 Dec 27 11:28 logs -> /var/log/tomcat6
lrwxrwxrwx    1 root root     23 Dec 27 11:28 temp -> /var/cache/tomcat6/temp
lrwxrwxrwx    1 root root     24 Dec 27 11:28 webapps -> /var/lib/tomcat6/webapps
lrwxrwxrwx    1 root root     23 Dec 27 11:28 work -> /var/cache/tomcat6/work
[root@lx08 tomcat6]# pwd
/usr/share/tomcat6

[root@lx08 tomcat6]# export JENKINS_HOME=http://localhost:8080/jenkins
[root@lx08 tomcat6]# java -jar /usr/share/tomcat6/webapps/jenkins/WEB-INF/lib/jenkins-core-1.495.jar  "TestJob" echo hello
hello

1

より簡単な方法は、Tomcatサーブレットのコンテキスト記述子($ CATALINA_HOME / conf / config.xml)を編集して、次の行を追加することです。

<Context ...>
  <Environment name="JENKINS_HOME" value="/path/to/jenkins_home/" type="java.lang.String"/>
</Context>

で閲覧https://wiki.jenkins-ci.org/display/JENKINS/Tomcat


0

私が読んだドキュメントと上記のいくつかの例によると、JenkinsはTomcatユーザーのホームディレクトリを使用して、そのフォルダーで.jenkinsを検索します。Tomcatユーザーのホームディレクトリが期待する値(/ opt / apache / tomcatなど)に設定されていることを確認し、そのフォルダーにJenkinsフォルダーが存在する場所を指す.jenkinsシンボリックリンクを作成します。

ln -s /path/to/jenkins_home /opt/apache/tomcat/.jenkins
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.