通过WAR文件
Jenkins的Web应用程序ARchive(WAR)文件版本可以安装在任何支持Java的操作系统或平台上。
要下载并运行Jenkins的WAR文件版本,请执行以下操作:
- 将最新的稳定Jenkins WAR包 下载到您计算机上的相应目录。可通过如下命令下载
$ curl -O http://mirror.serverion.com/jenkins/war-stable/2.222.3/jenkins.war
- 在下载的目录内打开一个终端/命令提示符窗口到。
- 运行命令
java -jar jenkins.war
- 浏览
http://localhost:8080
并等到Unlock Jenkins页面出现。 - 继续使用Post-installation setup wizard后面步骤设置向导。(若选择安装建议的插件,过程要花费很长时间)(选择默认安装插件过程会非常慢,这里选择什么插件都不安装,右上角有个叉号,点击那个符号关闭选择插件,等配置好插件中心国内镜像源后再选择安装一些插件)
不像在Docker中下载和运行有Blue Ocean的Jenkins,这个过程不会自动安装Blue Ocean功能, 这将分别需要在jenkins上通过 Manage Jenkins > Manage Plugins安装。 在Getting started with Blue Ocean有关于安装Blue Ocean的详细信息 。
您可以通过--httpPort
在运行java -jar jenkins.war
命令时指定选项来更改端口。例如,要通过端口9090访问Jenkins,请使用以下命令运行Jenkins:java -jar jenkins.war --httpPort=9090
除了通过
java -jar
命令启动,也可以当作一个普通war,放入servlet 容器,如Tomcat中运行
使用Jenkins 插件中心国内镜像源
若选择安装建议的插件,初始化安装很慢,因为插件安装很慢
使用Jenkins 插件中心国内镜像源可以加快插件安装(http://mirrors.jenkins-ci.org/status.html
)
安装步骤:
-
刚开始时候点击关闭推荐插件安装,(什么插件都不安装)
-
先安装
Localization: Chinese
插件 (https://plugins.jenkins.io/localization-zh-cn)
搜索Localization: Chinese
安装完成,可能需要重启服务插件才能生效,页面语言几乎全变成中文了
-
配置
配置入口在页面底部Jenkins 中文社区
,点击即可
更新插件地址为https://updates.jenkins-zh.cn/update-center.json
安装一个插件
Blue Ocean
没有安装该插件前,
安装花费时间取决于你网络带宽了,我这边在阿里云的轻量应用服务器上测试安装该插件速度很慢,应该是由于带宽很小导致的,而我本地环境安装就很快。
安装完成插件后,任务类型多了很多
插件装完后首页是这样的
使用Docker
docker run \
--rm \
-u root \
-p 8080:8080 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v "$HOME":/home \
jenkinsci/blueocean
各个参数解析
-
--rm
(可选) jenkinsci/blueocean 关闭时自动删除Docker容器(下图为实例)。如果您需要退出Jenkins,这可以保持整洁。 -
-d
(可选)jenkinsci/blueocean 在后台运行容器(即“分离”模式)并输出容器ID。如果您不指定此选项, 则在终端窗口中输出正在运行的此容器的Docker日志。 -
-p 8080:8080
映射(例如“发布”)jenkinsci/blueocean 容器的端口8080到主机上的端口8080。 第一个数字代表主机上的端口,而最后一个代表容器的端口。因此,如果您为此选项指定 -p 49000:8080 ,您将通过端口49000访问主机上的Jenkins。 -
-p 50000:50000
(可选)将 jenkinsci/blueocean 容器的端口50000 映射到主机上的端口50000。 如果您在其他机器上设置了一个或多个基于JNLP的Jenkins代理程序,而这些代理程序又与 jenkinsci/blueocean 容器交互(充当“主”Jenkins服务器,或者简称为“Jenkins主”), 则这是必需的。默认情况下,基于JNLP的Jenkins代理通过TCP端口50000与Jenkins主站进行通信。 您可以通过“ 配置全局安全性” 页面更改Jenkins主服务器上的端口号。如果您要将您的Jenkins主机的JNLP代理端口的TCP端口 值更改为51000(例如),那么您需要重新运行Jenkins(通过此 docker run … 命令)并指定此“发布”选项 -p 52000:51000,其中最后一个值与Jenkins master上的这个更改值相匹配,第一个值是Jenkins主机的主机上的端口号, 通过它,基于JNLP的Jenkins代理与Jenkins主机进行通信 - 例如52000。 -
-v jenkins-data:/var/jenkins_home
(可选,但强烈建议)映射在容器中的/var/jenkins_home
目录到具有名字 jenkins-data 的volume。 如果这个卷不存在,那么这个 docker run 命令会自动为你创建卷。 如果您希望每次重新启动Jenkins(通过此 docker run … 命令)时保持Jenkins状态,则此选项是必需的 。 如果你没有指定这个选项,那么在每次重新启动后,Jenkins将有效地重置为新的实例。
注意: 所述的 jenkins-data 卷也可以 docker volume create命令创建:docker volume create jenkins-data
代替映射/var/jenkins_home
目录转换为Docker卷,还 可以将此目录映射到计算机本地文件系统上的目录。 例如,指定该选项-v $HOME/jenkins:/var/jenkins_home
会将容器的/var/jenkins_home
目录映射到 本地计算机上目录中的 jenkins 子目录, 该$HOME目录通常是/Users/<your-username>/jenkins
或/home/<your-username>/jenkins
。 -
-v /var/run/docker.sock:/var/run/docker.sock
(可选 /var/run/docker.sock 表示Docker守护程序通过其监听的基于Unix的套接字。 该映射允许 jenkinsci/blueocean 容器与Docker守护进程通信,如果jenkinsci/blueocean容器需要实例化其他Docker容器,则该守护进程是必需的。 如果运行声明式管道,其语法包含agent部分用 docker 例如,agent { docker { ... } }
此选项是必需的。 -
jenkinsci/blueocean
jenkinsci/blueocean Docker镜像本身。如果此镜像尚未下载,则此docker run
命令 将自动为您下载镜像。此外,如果自上次运行此命令后发布了此镜像的任何更新, 则再次运行此命令将自动为您下载这些已发布的镜像更新。
初始安装密码
若没有添加别的账号,初始用户密码在
~/.jenkins/secrets/initialAdminPassword
,通过命令cat ~/.jenkins/secrets/initialAdminPassword
,即可查看,为一串随机字符
账号为:admin