建议使用的Docker映像是jenkinsci/blueocean image(来自 the Docker Hub repository)。 该镜像包含当前的长期支持 (LTS) 的Jenkins版本 (可以投入使用) ,捆绑了所有Blue Ocean插件和功能。

部署方法:

docker run \
-u root \
--name jenkins \
-d \
-p : \
-p : \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkinsci/blueocean

参数说明:

--name 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主站进行通信。

-v jenkins-data:/var/jenkins_home        (可选,但强烈建议)映射在容器中的`/var/jenkins_home` 目录到具有名字 jenkins-data 的volume。 如果这个卷不存在,那么这个 docker run 命令会自动为你创建卷。 如果您希望每次重新启动Jenkins(通过此 docker run ... 命令)时保持Jenkins状态,则此选项是必需的 。

-v /var/run/docker.sock:/var/run/docker.sock        (可选 /var/run/docker.sock 表示Docker守护程序通过其监听的基于Unix的套接字。 该映射允许 jenkinsci/blueocean 容器与Docker守护进程通信, 如果 jenkinsci/blueocean 容器需要实例化其他Docker容器,则该守护进程是必需的。

jenkinsci/blueocean        jenkinsci/blueocean Docker镜像本身。如果此镜像尚未下载,则此 docker run 命令 将自动为您下载镜像。此外,如果自上次运行此命令后发布了此镜像的任何更新, 则再次运行此命令将自动为您下载这些已发布的镜像更新。 注意:这个Docker镜像也可以使用以下 docker pull命令独立下载(或更新) : docker pull jenkinsci/blueocean

  此安装方法取自jenkins官方安装文档。

配置实例:

[root@localhost ~]# docker run \
> -u root \
> --name jenkins \
> -d \
> -p : \
> -p : \
> -v jenkins-data:/var/jenkins_home \
> -v /var/run/docker.sock:/var/run/docker.sock \
> jenkinsci/blueocean
Unable to find image 'jenkinsci/blueocean:latest' locally
latest: Pulling from jenkinsci/blueocean
bdf0201b3a05: Pull complete
9e12771959ad: Pull complete
018b76c3c533: Pull complete
fb7916dfb471: Pull complete
efeeaeb1034e: Pull complete
9d0828dae329: Pull complete
93c94dc28c28: Pull complete
51c9f4cab046: Pull complete
1529253d9fb0: Pull complete
0308c8ef7639: Pull complete
e701e5d6451c: Pull complete
3a0b79c07d56: Pull complete
28c17bce8836: Pull complete
d1e02b0dadf5: Pull complete
2a22db2a9af0: Pull complete
Digest: sha256:6cb529ad8c56539e4480a567a1b86a1926fa667de55db6fb4e795e13af6509f7
Status: Downloaded newer image for jenkinsci/blueocean:latest
1ac2c92cf7b2b4c58cab5c17046683da6be5781ba31b6c7b9533f24c0f89b190

打开web管理页面:

密码可以从docker logs 中查找到:

[root@localhost ~]# docker logs jenkins
Running from: /usr/share/jenkins/jenkins.war
webroot: EnvVars.masterEnvVars.get("JENKINS_HOME")
May , :: AM org.eclipse.jetty.util.log.Log initialized
INFO: Logging initialized @485ms to org.eclipse.jetty.util.log.JavaUtilLog
May , :: AM winstone.Logger logInternal
INFO: Beginning extraction from war file
May , :: AM org.eclipse.jetty.server.handler.ContextHandler setContextPath
WARNING: Empty contextPath
May , :: AM org.eclipse.jetty.server.Server doStart
INFO: jetty-9.4.z-SNAPSHOT; built: --30T13::.071Z; git: 27208684755d94a92186989f695db2d7b21ebc51; jvm 1.8.0_212-b04
May , :: AM org.eclipse.jetty.webapp.StandardDescriptorProcessor visitServlet
INFO: NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet
May , :: AM org.eclipse.jetty.server.session.DefaultSessionIdManager doStart
INFO: DefaultSessionIdManager workerName=node0
May , :: AM org.eclipse.jetty.server.session.DefaultSessionIdManager doStart
INFO: No SessionScavenger set, using defaults
May , :: AM org.eclipse.jetty.server.session.HouseKeeper startScavenging
INFO: node0 Scavenging every 660000ms
Jenkins home directory: /var/jenkins_home found at: EnvVars.masterEnvVars.get("JENKINS_HOME")
May , :: AM org.eclipse.jetty.server.handler.ContextHandler doStart
INFO: Started w.@7689ddef{Jenkins v2.164.3,/,file:///var/jenkins_home/war/,AVAILABLE}{/var/jenkins_home/war}
May , :: AM org.eclipse.jetty.server.AbstractConnector doStart
INFO: Started ServerConnector@1df98368{HTTP/1.1,[http/1.1]}{0.0.0.0:}
May , :: AM org.eclipse.jetty.server.Server doStart
INFO: Started @3346ms
May , :: AM winstone.Logger logInternal
INFO: Winstone Servlet Engine v4. running: controlPort=disabled
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Started initialization
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Listed all plugins
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Prepared all plugins
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Started all plugins
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Augmented all extensions
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Loaded all jobs
May , :: AM hudson.model.AsyncPeriodicWork$ run
INFO: Started Download metadata
May , :: AM hudson.util.Retrier start
INFO: Attempt # to do the action check updates server
May , :: AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@47fafdbc: display name [Root WebApplicationContext]; startup date [Wed May :: GMT ]; root of context hierarchy
May , :: AM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@47fafdbc]: org.springframework.beans.factory.support.DefaultListableBeanFactory@4bc62933
May , :: AM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@4bc62933: defining beans [authenticationManager]; root of factory hierarchy
May , :: AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@4c2b95b7: display name [Root WebApplicationContext]; startup date [Wed May :: GMT ]; root of context hierarchy
May , :: AM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@4c2b95b7]: org.springframework.beans.factory.support.DefaultListableBeanFactory@630931a0
May , :: AM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@630931a0: defining beans [filter,legacy]; root of factory hierarchy
May , :: AM jenkins.install.SetupWizard init
INFO: *************************************************************
*************************************************************
************************************************************* Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation: afc3cd17d54d40379d9c880d21af457d This may also be found at: /var/jenkins_home/secrets/initialAdminPassword *************************************************************
*************************************************************
************************************************************* May , :: AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
May , :: AM hudson.model.DownloadService$Downloadable load
INFO: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
May , :: AM hudson.util.Retrier start
INFO: Performed the action check updates server successfully at the attempt #
May , :: AM hudson.model.AsyncPeriodicWork$ run
INFO: Finished Download metadata. , ms
May , :: AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
May , :: AM jenkins.InitReactorRunner$ onAttained
INFO: Completed initialization
May , :: AM hudson.WebAppMain$ run
INFO: Jenkins is fully up and running

将密码粘贴后,点击确定,到一下一个页面:

在下个页面中可以选择插件,并安装:

开始安装:

安装完成后输入必要的配置信息,界面如下:

到此,安装完成。

界面如下:

docker 部署 jenkins的更多相关文章

  1. docker部署Jenkins,以及在Jenkins中使用宿主机的docker/docker-compose命令

    使用最新的官方镜像jenkins/jenkins 第一次使用的docker部署jenkins的时候,出现了两个问题: 1.因为用户权限问题挂载/home/jenkins/data到/var/jenki ...

  2. Ubuntu系统下基于docker部署Jenkins环境

    本文是在ubuntu环境下安装jenkins,jenkins运行在docker容器中, 至于docker如何安装,请参考https://www.cnblogs.com/xingyunqiu/p/115 ...

  3. 基于docker部署jenkins

    1. 拉镜像 和其他的部署的镜像的方式一样,通常是直接使用docker search jenkins 然后直接docker pull jenkins 此时,在安装插件的时候发现插件都安装失败,提示je ...

  4. Docker部署Jenkins测试环境

    安装docker环境 yum install epel-release -y && yum install docker -y 如果是高手需要docker-compose的话就再装个d ...

  5. docker部署jenkins环境

    首先获取jenkins的镜像: docker pull jenkins 设置jenkins_home映射: sudo mkidr -p /jenkins_home /jenkins_home 启动容器 ...

  6. docker 部署 jenkins server

    1. 拉取一个jenkins 镜像 docker pull jenkins 2. 创建与jenkins配置目录对应的,容器外的,文件目录,并修改相应的权限 mkdir /home/jenkins ch ...

  7. docker部署jenkins

    步骤一: 查找jenkins镜像(也可以直接去jenkins官网找镜像docker pull jenkins/jenkins)(官方版本文档https://hub.docker.com/_/jenki ...

  8. docker 部署jenkins

    1.拉取镜像 docker pull jenkins/jenkins 2.运行jenkins镜像作为容器 运行命令如下: docker run -d -p 9086:8080 -p 50000:500 ...

  9. Docker部署Jenkins 2.285版持续部署集成实践(1)

    抓取Jenkins镜像 docker pull jenkins/jenkins 创建映射本地路径: 运行Jenkins实例 docker for windows: docker run -it -p ...

随机推荐

  1. Mac应用程序无法打开,提示不明开发者或文件损坏的处理方法

    很多用户在安装Mac软件的时候,经常会遇到提示“xxx.app已损坏,打不开.您应该将它移到废纸篓“或”打不开的xxx.app,因为它来自身份不明的开发者”,如下图的样子: 真的损坏了么?是不是真的要 ...

  2. ASP.NET MVC自定义Module记录管道事件执行顺序

    1. 在Visual Studio 新建项目,模板为空,下面结构选择MVC. 2. 在项目中新建一个类MyModule,实现IHttpModule接口 namespace SimpleApp.Infr ...

  3. 递归---Day29

    递归的概述 递归:指在当前方法内自己调用自己的方式叫做递归 递归的分类: 1.直接递归称为方法自身调用自己. 2.间接递归可以用A方法调用B方法,用B方法调用C方法,用C方法调用A方法. 递归的注意事 ...

  4. Java常用类StringBuffer详解

    内容多为最近学习的自我总结,可能有些地方写的不严谨,甚至会有错误的地方,仅供参考,如发现错误敬请指出,谢谢! 灰色字体为补充扩展内容,多为帮助自己理解. StringBuffer概述: 线程安全的可变 ...

  5. vim 如何复制文件中多行到另一个文件

    1.打开文件 vim a.txt b.tx 或者 vim *.txt 2.文件间切换 :n 切换到下一个文件 :wn 保存再切换 :N 到上一个文件 :wN 保存再切换 :.= 看当前行 3.假定当前 ...

  6. java request.getInputStream中文乱码解决方案

    请求时要指定为UTF-8,中文码码完美解决 /** * * 得到请求body字符串,一般用于content-type:application/json * */ public static Strin ...

  7. iperf3 网络测试工具

    Iperf3 是一个网络性能测试工具.Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽.延迟抖动和数据包丢失.对于每个测试,它都会报告带宽,丢包和 ...

  8. asp.net core ServiceProvider

    针对每次请求所使用的ServiceProvider依然是WebHost的ServiceProvider吗? 对于某个由ServiceProvider提供的服务对象说,针对它的回收也是由这个Servic ...

  9. Redis 分布式锁的正确打开方式

    前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...

  10. Maven打包时出现“Show Console View”错误弹出框,错误详情为“An internal error has occurred. java.lang.NullPointerException”的解决方法

    今天为项目打包时出现了下面的错误提示: 打开Details里面写的是“An internal error has occurred. java.lang.NullPointerException”.在 ...