一、Jenkins参数
Jenkins的初始化可以通过命令行参数来传递,包括网络、安全、监控等。
1.1 网络参数
命令行参数 | 描述 |
---|---|
--httpPort=$HTTP_PORT | 监听端口,默认8080,如果要禁用,配置-1 . |
--httpListenAddress=$HTTP_HOST | 监听地址,默认是0.0.0.0 |
--httpsPort=$HTTPS_PORT | 使用HTTPS协议,配置HTTPS的端口 |
--httpsListenAddress=$HTTPS_HOST | HTTPS的监听地址 |
--http2Port=$HTTP_PORT | 使用HTTT2.0协议 |
--http2ListenAddress=$HTTPS_HOST | HTTP2.0的监听地址 |
--prefix=$PREFIX | 访问Jenkins的url前缀,如果设置--prefix=jenkins ,那么访问路径http://myServer:8080/jenkins
|
--ajp13Port=$AJP_PORT | AJP13 协议的监听端口,默认是8009,为了禁用(比如要使用https)设置-1
|
--ajp13ListenAddress=$AJP_ADDR | AJP的监听地址 |
--sessionTimeout=$TIMEOUT | http会话超时时间,默认是weapp指定的时间,然后是60分钟 |
1.2 其他参数
命令行参数 | 描述 |
---|---|
--argumentsRealm.passwd.PASS | 设置USER的密码为PASS |
--argumentsRealm.roles.$USER=admin | 设置USER为管理员 |
--useJmx | 开启JMX端口 |
Jenkins内置了Winstone servlet container,并且会传递所有的命令行参数给到Winstone,更多可用的Winstone 命令行参数参见 Winstone Command Line Parameter Reference。
命令行参数如果传递错误,Jenkins不会报错,直接忽略,所以要确保参数书写正确。
二、Jenkins的属性
有一些Jenkins的行为是通过Java属性配置的。Java的属性通过Jenkins的启动参数传递。比如-DsomeName=someValue
,赋值 someName
的值为 someValue
。
详细配置参考Jenkins properties
三、配置HTTPS
如果想配置Jenkins开启HTTPS,可以使用以下配置
--httpPort=-1 \
--httpsPort=443 \
--httpsKeyStore=path/to/keystore \
--httpsKeyStorePassword=keystorePassword
keystore是JKS格式的(可以通过JDK的keytool
创建),keystore和目标key具有相同的密码(保证这个参数和--httpsPort
参数在一起,否则可能因为其他无法识别的参数,导致参数失效 )。
如果是keystore包含多个证书文件(比如你正在使用CA签发的证书),这时就要使用如下参数,并将keystore转换成PEM格式的。
--httpPort=-1 \
--httpsPort=443 \
--httpsCertificate=path/to/cert \
--httpsPrivateKey=path/to/privatekey