Jenkins在/etc/default/Jenkins不工作中更改



我在Ubuntu 20.04 LTS上运行Jenkins,我想更改端口或用户Jenkins的运行方式,但对/etc/default/Jenkins文件的更改不会在重新启动服务后更改端口。

服务仍然以以下方式启动:

/usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080

当/etc/default/jenkins文件读取:时

[...]
# port for HTTP connector (default 8080; disable with -1)
HTTP_PORT=8081

# servlet context, important if you want to use apache proxying
PREFIX=/$NAME
# arguments to pass to jenkins.
# full list available from java -jar jenkins.war --help
# --javaHome=$JAVA_HOME
# --httpListenAddress=$HTTP_HOST (default 0.0.0.0)
# --httpPort=$HTTP_PORT (default 8080; disable with -1)
# --httpsPort=$HTTP_PORT
# --argumentsRealm.passwd.$ADMIN_USER=[password]
# --argumentsRealm.roles.$ADMIN_USER=admin
# --webroot=~/.jenkins/war
# --prefix=$PREFIX
JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpPort=$HTTP_PORT"

我检查了两台不同的Ubuntu 20.04 LTS机器,它们都有相同的问题。有人知道我做错了什么吗?

在jenkins 2.332.1.之后。。不再使用/etc/default/jenkins。詹金斯现在配置了systemd。可以选中systemctl cat jenkins查看选项和systemctl edit jenkins来修改它。

你可以更改端口。

[Service]
Environment="JENKINS_PORT=8081"

更新的java内存和java参数环境=";JENKINS_OPTS=";

Environment="JENKINS_OPTS=-Xmx2048m"

更新/etc/systemd/system/jenkins.service.d/override.conf并运行systemctl daemon-reload

这里也有同样的问题。今天我刚刚将jenkins升级到v2.332.1(在Ubuntu 20.04.1 LTS上(,我稍微修改了/etc/default/jenkins-更新了java内存和java args:

...
# arguments to pass to java
JAVA_MEMORY="-Xmx2048m"
# Allow graphs etc. to work even when an X server is present
JAVA_ARGS="${JAVA_MEMORY} -Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP="sandbox allow-scripts allow-same-origin; default-src 'none'; img-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self'; font-src 'self'; media-src 'self'""
...

但是在重新启动服务之后;systemctl restart jenkins";,它不使用新的args。看起来/etc/default/jenkins只是被忽略了

jenkins  1774584       1 42 19:07 ?        00:07:14 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080

最新更新