18

我在 Linux 上的特定用户下有工作 /.jenkins 文件夹。我想与另一个用户一起启动 Jenkins,但重新使用另一个用户的 .jenkins 文件夹。我怎样才能做到这一点?詹金斯提供了一些说明,但我不明白:)

4

7 回答 7

38

我认为这可以帮助你。

JENKINS_HOME设置指向文件夹的环境变量.jenkins并运行 Jenkins 命令。


外壳应该像

export JENKINS_HOME=/usr/jhon/.jenkins

java -jar jenkins.war


批次应该像

  SET JENKINS_HOME=C:\users\jhon\.jenkins

 java -jar jenkins.war


应该Powershell

[Environment]::SetEnvironmentVariable("JENKINS_HOME", "${PWD}\.jenkins")
java -jar jenkins.war

这会将您的主目录设置为current-working-directory + './jenkins'

于 2013-01-04T06:55:11.777 回答
12

以下是您的选择:

a) 假设您将 Jenkins 部署到 Tomcat 中,您可以执行以下操作:

在你的 catalina.home/conf/localhost/jenkins.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="/home/enomad/projects/jenkins/jenkins-master/war/target/jenkins" path="" reloadable="true">
 <Environment name="JENKINS_HOME" value="/home/enomad/projects/jenkins-home"
         type="java.lang.String" override="false"/>
</Context>

b) 您可以导出 JENKINS_HOME=toWhateveryouwant,正如 Harsha 在上一篇文章中提到的那样

c)您可以扩展您的JAVA_OPTS参数并添加-DJENKINS_HOME= /path/to/jenkins_home/ 如下所述:Jenkins Mailing list

祝你好运!

于 2013-01-04T10:08:24.123 回答
2

我使用 jenkins 1.639 作为部署在 tomcat 7.0.67 上的战争。我的 JENKINS_HOME 设置为 /home/hims/jenkins

这是我的 /tomcat/bin 目录下的 setenv.sh 文件的入口

出口 CATALINA_OPTS="-DJENKINS_HOME=/home/hims/jenkins"

我希望这有帮助。

于 2016-03-22T07:19:03.657 回答
1

由于某些奇怪的原因,Jenkins 没有使用我设置的 JENKINS_HOME 环境变量。

我在tomcat启动脚本(/etc/init.d/tomcat)中添加了这一行。

    $export JENKINS_HOME=/path/to/jenkins_home/

现在 jenkins 指向新的 jenkins 主页 :) 这将非常有用,尤其是当您在云上安装 jenkins 时。(在 Ec2 或桉树实例上)

参考:https ://wiki.jenkins-ci.org/display/JENKINS/Tomcat

于 2013-11-08T07:16:16.453 回答
1

或者您可以修改 .bashrc 以便在每次启动控制台时设置环境变量,也就是说,如果您使用 bash 启动 Jenkins。

于 2015-08-12T10:35:55.477 回答
1

在 Tomcat 5 中,您可以修改 tomcat.conf 并添加路径:

导出 JAVA_OPTS="-DJENKINS_HOME=/home/jenkins"

重启詹金斯。

于 2016-08-04T15:00:30.780 回答
0

通常,您需要为这些文件设置新用户可以访问的权限。

请参阅此处:如何以不同的用户身份运行 jenkins -
特别是SagarPeter Tran的答案。

干杯

于 2013-01-03T12:56:13.693 回答