安装Jenkins到Ubuntu server推荐采用官方文档描述的方法:http://pkg.jenkins-ci.org/debian/

很快就可以使用了。而且这种方法能够方便的升级到最新版本。不过端口号是8080,我的另一个程序用到了8080,怎么修改呢?

网上一些方法介绍通过nginx或者apache将80端口映射到8080, 还有人说用iptables, 这都是间接迂回。我就是不想让jenkins占用8080端口。

通过检查/etc/init.d/jenkins脚本,发现其实就需要做两步:

1. 修改do_start函数的check_tcp_port命令,端口号从8080换成8082

#

# Function that starts the daemon/service

#

do_start()

{

# the default location is /var/run/jenkins/jenkins.pid but the parent directory needs to be created

mkdir `dirname $PIDFILE` > /dev/null 2>&1 || true

chown $JENKINS_USER `dirname $PIDFILE`

# Return

#  0 if daemon has been started

#  1 if daemon was already running

#  2 if daemon could not be started

$DAEMON $DAEMON_ARGS --running && return 1

# Verify that the jenkins port is not already in use, winstone does not exit

# even for BindException

check_tcp_port "http" "$HTTP_PORT" "8082" || return 1

# If the var MAXOPENFILES is enabled in /etc/default/jenkins then set the max open files to the

# proper value

if [ -n "$MAXOPENFILES" ]; then

[ "$VERBOSE" != no ] && echo Setting up max open files limit to $MAXOPENFILES

ulimit -n $MAXOPENFILES

fi

# --user in daemon doesn't prepare environment variables like HOME, USER, LOGNAME or USERNAME,

# so we let su do so for us now

$SU -l $JENKINS_USER --shell=/bin/bash -c "$DAEMON $DAEMON_ARGS -- $Java $JAVA_ARGS -jar $JENKINS_WAR $JENKINS_ARGS" || return 2

}

2.修改/etc/default/jenkins文件,将端口8080改成8082

然后重新启动jenkins, 检查一下:

ps -def | grep java

jenkins  7234  7233 99 11:14 ?        00:00:04 /usr/bin/java -jar /usr/share/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8082 --ajp13Port=-1

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐