/etc/default/jenkins 中的 Jenkins 更改不起作用

Jenkins changes in /etc/default/jenkins not working

我是 运行 Jenkins Ubuntu 20.04 LTS,我想更改端口或 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 升级到 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”重启服务后,它并没有使用新的参数。似乎 /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

詹金斯 2.332.1 之后.. /etc/default/jenkins 不再使用。 jenkins 现在配置了 systemd。 您可以检查 systemctl cat jenkins 以查看选项 并 systemctl edit jenkins 对其进行修改..

您可以更改端口。

[Service]
Environment="JENKINS_PORT=8081"

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

Environment="JENKINS_OPTS=-Xmx2048m"