初始设置

大多数Je必威国际有限公司nkins配置更改可以通过Jenkins用户界面或通过配置为代码插件.有些配置值只能在Jenkins启动时修改。必威国际有限公司本节描述这些设置以及如何使用它们。

必威国际有限公司詹金斯参数

必威国际有限公司Jenkins初始化也可以通过作为参数传递的运行时参数来控制。命令行参数可以调整网络、安全性、监视和其他设置。

网络参数

必威国际有限公司Jenkins网络配置通常由命令行参数控制。组网配置参数如下:

表1。必威国际有限公司Jenkins网络命令行参数
命令行参数 描述

——httpPort = HTTP_PORT美元

使用标准在必威国际有限公司端口$HTTP_PORT上运行Jenkins监听器http协议。默认为8080端口。禁用(因为您正在使用https),使用端口-1.该选项不影响在Jenkins逻辑中生成的根URL (UI、入站代理文件等)。必威国际有限公司它由全局配置中指定的Jenkins URL必威国际有限公司定义。

——httpListenAddress = HTTP_HOST美元

绑定Jenk必威国际有限公司ins到由$HTTP_HOST表示的IP地址。默认是0.0.0.0 -即监听所有可用的接口。例如,为了只监听来自localhost的请求,你可以使用:——httpListenAddress = 127.0.0.1

——httpsPort = HTTPS_PORT美元

在端口$HTTPS_PORT上使用HTTPS协议。该选项不影响在Jenkins逻辑中生成的根URL (UI、入站代理文件等)。必威国际有限公司它由全局配置中指定的Jenkins URL必威国际有限公司定义。

——httpsListenAddress = HTTPS_HOST美元

绑定Jenk必威国际有限公司ins以监听由$HTTPS_HOST表示的IP地址上的HTTPS请求。

——http2Port = HTTP_PORT美元

在端口$HTTP_PORT上使用HTTP/2协议。该选项不影响在Jenkins逻辑中生成的根URL (UI、入站代理文件等)。必威国际有限公司它由全局配置中指定的Jenkins URL必威国际有限公司定义。

——http2ListenAddress = HTTPS_HOST美元

绑定Jenk必威国际有限公司ins以监听由$HTTPS_HOST表示的IP地址上的HTTP/2请求。

——prefix = $前缀

运行Jen必威国际有限公司kins以在URL的末尾包含$PREFIX。例如,设置——prefix =必威国际有限公司 / jenkins让詹金斯在必威国际有限公司http://myServer:8080/必威国际有限公司jenkins

——sessionTimeout = $超时

设置http会话超时值为$SESSION_TIMEOUT分钟。默认设置为webapp指定的值,然后设置为60分钟

其他参数

其他Jenk必威国际有限公司ins初始化配置也由命令行参数控制。其他配置参数是:

表2。必威国际有限公司Jenkins其他命令行参数
命令行参数 描述

——argumentsRealm.passwd。$ USER = $通过

为用户$ user指定密码。如果启必威国际有限公司用了Jenkins安全性,则必须以具有管理角色来配置Jenkins。必威国际有限公司

——argumentsRealm.roles。$ USER = admin

为用户$ user分配管理员角色。即使Jenkins中启用了安全性,用户也可以配必威国际有限公司置Jenkins。看到确保詹金斯必威国际有限公司为更多的信息。

——useJmx

启用Jetty Java管理扩展

必威国际有限公司Jenkins将所有命令行参数传递给Winstone servlet容器。有关Jenkins Winstone命令行参数必威国际有限公司的更多信息可从Winstone命令行参数参考

小心使用命令行参数
必威国际有限公司Jenkins忽略它不理解的命令行参数,而不是产生错误。在使用命令行参数时要小心,并确保拼写正确。例如,定义Jenkins管理用户所需的参数为必威国际有限公司——参数年代领域而不是——argumentRealm

必威国际有限公司詹金斯属性

一些Jen必威国际有限公司kins行为是用Java属性配置的。Java属性是从启动Jenkins的命令行设置的。必威国际有限公司属性赋值使用表单-DsomeName = someValue为值赋值someValue命名为someName.例如,分配值真正的一个属性testName,命令行参数为-DtestName = true

详见必威国际有限公司詹金斯属性为更多的信息。

配置HTTP

使用现有证书进行HTTPS

如果您正在使用内置的Winstone服务器必威国际有限公司设置Jenkins,并希望使用现有的HTTPS证书:

——httpPort=-1 \——httpsPort=443 \——httpkeystore =path/to/keystore \——httpkeystorepassword =keystorePassword

密钥存储库应该是JKS格式(由JDK 'keytool'创建),并且密钥存储库和目标密钥必须具有相同的密码。(将keystore参数放在特定于jenkins的参数之后似乎不起作用;必威国际有限公司它们要么不转发给Winstone,要么在未知参数后忽略它们。所以,要确保它们与工作区域相邻——httpsPort论点。)

如果您的密钥存储库包含多个证书(例如,您正在使用CA签名证书),Jenkins可能最终使用了一个不正确的证书。必威国际有限公司在这种情况下,你可以将keystore转换为PEM并使用以下命令行选项:

——httpPort=-1 \——httpsPort=443 \——httpsCertificate=path/to/cert \——httpsPrivateKey=path/to/privatekey

使用HTTP / 2

HTTP / 2协议允许web服务器通过流水线请求、多路复用请求减少加密连接的延迟,并允许服务器在某些情况下在接收客户端数据请求之前推送。Jenkins使用的Jetty服务器支持HTTP/必威国际有限公司2,增加了应用层协议协商(ALPN) TLS扩展。ALPN TLS扩展连接到特定的Jetty版本,根据Java版本有特定的要求。

Java 11、Java 8u252和更高版本

Java 11、Java 8更新252和更新252之后的Java 8版本可以通过安装Jetty ALPN Java服务器jar并将其作为Java命令行参数传递来运行ALPN TLS扩展。安装扩展的步骤是:

  • 通过在Jenkins启动日志中搜索字符串,确定Jenkins服务器中包含的Jetty版本必威国际有限公司org.eclipse.jetty.server.Server # doStart.例如:
    org.eclipse.jetty.server.Server # doStart: jetty-9.4.27.v20200227

  • 在“Manage Jenkins”的“System Information”页面找到Java版本,确认为Java 11或8u252(或更必威国际有限公司高版本)

  • 下载jetty-alpn-java-server版本号与捆绑在Jenkins版本中的Jetty版本相匹配必威国际有限公司

  • 将jetty-alpn-java-server.jar文件放在JVM可以访问的目录中

  • 添加——extraLibFolder = /道路/ /额外的/ lib /文件夹到以Jenkins开头的Java命令行参数必威国际有限公司

java——extraLibFolder=/opt/java/jetty-alpn-java-server-9.4.27.v20200227.jar \ -jar target/j必威国际有限公司enkins. jar战争\——http2Port = 9090

Java 8u242及更早版本

Java 8更新242和更早的版本可以通过安装相应的Jetty ALPN引导库来运行ALPN TLS扩展确切的OpenJDK版本你正在使用的Java引导类路径。安装扩展的步骤是:

  • 从“管理Jenkins”→“系统信息”页面确定运行Jenkins服务器的Jav必威国际有限公司a版本

  • 找到引导图书馆您的OpenJDK版本

  • 下载匹配alpn-boot.jar文件到JVM可访问的目录

  • 将alpn-boot.jar添加到JVM引导类路径-Xbootclasspath / p: /道路/ / alpn-boot.jar到以Jenkins开头的Java命令行参数必威国际有限公司

java -Xbootclasspath/p:/opt/java/alpn-boot-8.1.13.v20181017.jar \ -jar target/必威国际有限公司jenkins. jar:/opt/java/alpn-boot-8.1.13.v20181017.jar战争\——http2Port = 9090

使用Windows的HTTPS证书

这些说明使用Windows Server上的普通Jenkins必威国际有限公司安装。这些说明假定证书由证书颁发机构(如Digicert)签署。如果您正在制作自己的证书,请跳过步骤3、4和5。

这个过程利用Java的keytool。使用Javakeytool包含在Java安装中。

步骤1:在服务器上创建一个新的密钥存储库。这将在您的当前目录中放置一个'keystore'文件。

C:\>keytool -genkeypair -keysize 2048 -keyalg RSA -alias 必威国际有限公司jenkins -keystore keystore Enter keystore password: Re-enter new password: What is your first and last name?您的组织单位名称是什么?[未知]:A Unit你的组织名称是什么?你所在的城市或地区的名称是什么?你所在的州或省的名称是什么?这个单位的两个字母的国家代码是什么?[未知]:US Is CN=server.example.com, OU=A单位,O=A公司,L=A市,ST=A州,C=US对吗?输入的密钥密码(如果与密钥库密码相同则返回):必威国际有限公司

步骤2:验证已创建密钥存储库(您的指纹会有所不同)

C:\>keytool -list -keystore keystore输入keystore密码:keystore类型:JKS keystore提供者:SUN Your keystore contains 1 entry jenkins, May 6, 2015, Pr必威国际有限公司ivateKeyEntry, Certificate fingerprint (SHA1): AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA…

步骤3:创建证书请求。这将创建一个'certreq '。Csr的文件在您的当前目录。

C:\>keytool -certreq -alias 必威国际有限公司jenkins -keyalg RSA ^ -file certreq。csr ^ -ext SAN=dns:server-name,dns:server-name.your.company.com ^ -keystore keystore输入keystore密码:

步骤4:使用的内容certreq.csr文件以从证书提供程序生成证书。请求一个SHA-1证书(SHA-2未经测试,但可能可以工作)。如果使用DigiCert,请将生成的证书下载为其他格式“一个.p7b文件中所有证书的。p7b包”。

步骤5:将生成的.p7b添加到上面创建的密钥库中。

C:\>keytool -import ^ -alias 必威国际有限公司jenkins ^ -trustcacerts ^ -file response_from_digicert。p7b ^ -keystore keystore输入keystore密码:证书应答已安装在keystore中

步骤6:复制'keystore'文件到您的Jenkins机密目录。必威国际有限公司在库存安装,这将是在

C:\Program Files (x86)\必威国际有限公司Jenkins\secrets

步骤7:修改部分C:\Program Files (x86)\必威国际有限公司Jenkins\ jenkins.xml文件以反映新证书。注意:此示例禁用http via——httpPort = 1并打开服务器8443通过——httpsPort = 8443

<参数>xrs -Xmx256m -Dhudson.lifecycle = hudson.lifecycle。WindowsServiceLifecycle jar“% % \詹金斯。必威国际有限公司——httpPort=-1——httpsPort=8443——httpsKeyStore="%BASE%\secrets\keystore"——httpsKeyStorePassword=your.password.here> < /参数

步骤8:重启jenkins服务初始必威国际有限公司化新配置。

网停詹金斯网开詹金必威国际有限公司斯

步骤9: 30-60秒后,Jenkins将完成启动过必威国际有限公司程,您应该可以访问网站https://server.example.com:8443.通过浏览器的工具验证证书是否良好。如果服务立即终止,则说明您的配置中有错误。有用的错误信息可以在下面找到:

C:\Program Files (x86)\必威国际有限公司Jenkins\ jenkins.err.log C:\Program Files (x86)\Jenkins\ jenkins.out.log


这个页面有帮助吗?

请通过此提交您对此页的反馈快速形成

或者,如果您不想填写快速表单,您可以简单地说明您是否认为此页面有帮助?


看到现有的反馈在这里

Baidu