码头工人

码头工人是一个用于在名为“容器”(或Docker容器)的孤立环境中运行应用程序的平台。像Jenkins这样的应用程序可以被必威国际有限公司下载为只读“图像”(或码头图像),每个都在Docker中运行作为容器。Docker容器实际上是Docker图像的“运行实例”。从这种角度来看,图像更长时间或更少存储图像(即,作为图像更新的INSOMAR被发布),而暂时存储容器。在Docker文档中阅读有关这些概念的更多信息入门,第1部分:方向和设置页。

Docker的基础平台和容器设计意味着一个Docker映像(对于任何给定的应用程序,如Jenkins)可以在任何支持的操作系统(macOS, Linux和Windows)或云服务(AWS和Azure)上运行Docker。必威国际有限公司

安装Docker.

要在操作系统上安装Docker,请遵循“先决条件”部分导游页面

作为替代解决方案,您可以访问Dockerhub并选择这一点Docker社区版本适合您的操作系统或云服务。按照他们网站上的安装说明进行操作。

如果在基于Linux的操作系统上安装Docker,请确保配置Docker,以便可以作为非root用户管理。在Docker的情况下了解有关此内容的更多信息Linux的安装后步骤他们的文件页。这个页面还包含了关于如何配置Docker在引导时启动的信息。

先决条件

最低硬件要求:

  • 256mb内存

  • 1 GB的驱动器空间(如果将Jenkins作为Docker容器运行,建议最小容量为10 GB)必威国际有限公司

一个小型团队推荐的硬件配置:

  • 4gb +内存

  • 50gb以上的驱动器空间

全面的硬件建议:

软件要求:

下载并运行Docker中的Jenkins必威国际有限公司

有几张Jenkins的Docker图像可用。必威国际有限公司

推荐的码头图像是官方的必威国际有限公司Jenkins / Jenkins.图像(来自Docker Hub存储库).此图像包含当前Jenkins的长期支持(LTS)释放必威国际有限公司(这是准备就绪)。但是,此图像没有内部的Docker CLI,并不与常用的蓝海插件和功能捆绑在一起。这意味着如果您想使用Jenkins和Docker的全部电源,您可能希望通过以下安装过程进行。必威国际有限公司

一个新的必威国际有限公司Jenkins / Jenkins.每次Jenkins Docker的新版本发布时,都会发布图片。必威国际有限公司可以看到以前发布的版本的列表必威国际有限公司Jenkins / Jenkins.图像上标签页。

在麦克斯和Linux上

  1. 打开终端窗口。

  2. 创建一个桥网在Docker中使用以下命令码头工人网络创建命令:

    Docker网络创建Jenkins必威国际有限公司
  3. 要在Jenkins节点内执行Docker命令,下载并运行必威国际有限公司Docker:Dind.Docker映像使用如下Docker运行命令:

    Docker Run \ --name 必威国际有限公司Jenkins-Docker \(1)- R M \(2)--detach \(3)——特权\(4)——网络詹金斯\必威国际有限公司(5)——network-alias码头工人\(6)--env docker_tls_certdir = / certs \(7)-  Volume必威国际有限公司 Jenkins-Docker-Certs:/ Certs / Client \(8)-  volume必威国际有限公司 jenkins-data:/ var / jenkins_home \(9)——发布2376:2376 \(10)Docker:Dind \(11)- 启动司机覆盖2(12)
    1 可选)指定运行镜像时使用的Docker容器名。默认情况下,Docker将为容器生成一个唯一的名称。
    2 可选当Docker容器被关闭时,自动删除Docker容器(Docker映像的实例)。
    3. 可选)在后台运行Docker容器。这个实例可以稍后通过运行来停止Docker停止Jenk必威国际有限公司ins-Docker
    4 目前在Docker中运行Docker需要特权访问才能正常运行。新的Linux内核版本可能会放宽这一要求。
    5 这与前面步骤中创建的网络相对应。
    6 使Docker容器中的Docker可用作主机名码头工人必威国际有限公司网络。
    7 启用Docker服务器中的TLS。由于使用特权容器,建议使用这一点,但它需要使用下面描述的共享卷。此环境变量控制管理Docker TLS证书的根目录。
    8 地图/证书/客户目录存放到一个Docker卷中必威国际有限公司jenkins-docker-certs如上所述。
    9 地图/ var必威国际有限公司 / jenkins_home将容器内的目录命名为docker卷必威国际有限公司Jenkins-Data..这将允许由该Docker容器的Docker守护进程控制的其他Docker容器装入来自Jenkins的数据。必威国际有限公司
    10. 可选)在主机上公开Docker守护进程端口。这对执行很有用码头工人主机上的命令来控制此内部Docker守护程序。
    11. Docker:Dind.图像本身。该映像可以在运行之前使用命令下载:Docker镜像pull Docker:dind
    12. Docker卷的存储驱动程序。看到“码头工人存储驱动程序”支持选项。

    笔记:如果复制和粘贴上面的命令片段不起作用,请在这里尝试复制和粘贴这个没有注释的版本:

    Docker Run --name 必威国际有限公司Jenkins-Docker --rm --detach \  - 专项--network jenkins --network-alias docker \ --env docker_tls_certdir = / certs \ --volume Jenkins-docker-certs:/ certs / client\  -  volum必威国际有限公司e Jenkins-data:/ var / jenkins_home \  -  opublish 2376:2376 Docker:Dind -Storage-Driver Roveray2
  4. 通过执行以下两个步骤自定义Jenkin必威国际有限公司s Docker Image:

    1. 使用以下内容创建dockerfile:

      从詹金斯/必威国际有限公司 jenkins: 2.303.1-jdk11用户root运行apt-get更新& & apt-get安装- y apt-transport-https \ ca证书curl gnupg2 \ software-properties-common运行curl https://download.docker.com/linux/debian/gpg -fsSL | apt-key添加- apt-key指纹0 ebfcd88跑add-apt-repository \“deb[拱= amd64]https://download.docker.com/linux/debian \ $(lsb_release -cs) stable"运行apt-get update && apt-get install -y docker-ce-cli USER jen必威国际有限公司kins运行jenkins-plugin-cli——plugins "blueocean:1.24.7 docker-workflow:1.26"
    2. 从这个Dockerfile构建一个新的docker映像,并为映像指定一个有意义的名称,例如:“my必威国际有限公司jenkins-blueocean: 1.1”:

      Docker build -t my必威国际有限公司jenkins-blueocean:1.1。

      请记住,如果之前没有这样做过,上面描述的过程将自动下载官方Jenkins Docker图像。必威国际有限公司

  5. 经营自己的my必威国际有限公司jenkins-blueocean: 1.1使用以下图像作为码头器中的容器Docker运行命令:

    Docker Run \ --name 必威国际有限公司Jenkins-BlueCan \(1)- R M \(2)--detach \(3)——网络詹金斯\必威国际有限公司(4)--env docker_host = TCP:// Docker:2376 \(5)--env docker_cert_path = / certs / client \ --env docker_tls_verify = 1 \  - 发布8080:8080 \(6)- 发布50000:50000 \(7)-  volume必威国际有限公司 jenkins-data:/ var / jenkins_home \(8)-  Volume必威国际有限公司 Jenkins-Docker-Certs:/ Certs /客户:Ro \(9)my必威国际有限公司jenkins-blueocean: 1.1(10)
    1 可选指定Docker映像实例的Docker容器名。
    2 可选当Docker容器关闭时,会自动删除它。
    3. 可选)在后台运行当前容器(例如:"detached"模式)并输出容器ID。如果不指定此选项,则在终端窗口中输出该容器的运行Docker日志。
    4 将此容器连接到必威国际有限公司在前面步骤中定义的网络。这使得上一步中的Docker守护进程可以通过主机名访问Jenkins容器必威国际有限公司码头工人
    5 指定使用的环境变量码头工人Docker撰写以及从上一步连接到Docker守护程序的其他Docker工具。
    6 (即地图。"发布")当前容器的8080端口到主机上的8080端口。第一个数字表示主机上的端口,最后一个数字表示容器的端口。因此,如果您指定- p 49000:8080对于此选项,您将通过端口49000访问主机上的Jenkins。必威国际有限公司
    7 可选)将当前容器的端口50000映射到主机上的端口50000。只有在其他机器上设置一个或多个入站Jenkins代理时才需要,这又必须与您的其他机器进行互动必威国际有限公司必威国际有限公司Jenkins-BlueCanan.容器(Jenkins“控制器”必威国际有限公司)。缺省情况下,入站必威国际有限公司Jenkins代理通过TCP端口50000与Jenkins控制器通信。你可以在Jenkins控制器上修改这个端口号必威国际有限公司配置全局安全性页。如果你要改变入站Jenkins代理的TCP端口必威国际有限公司你的Jenkin必威国际有限公司s控制器到51000(例如),那么你需要重新运行Jenkins(通过这个码头工人跑……命令)并指定这个“发布”选项- 发布52000:51000,其中最后一个值与Jenkins控制器上的更改值相匹配,第一个值是托管Jenkins控制器的机器上的端口号。必威国际有限公司入站Jenkin必威国际有限公司s代理与该端口上的Jenkins控制器通信(本例中为52000)。请注意,WebSocket代理人不需要此配置。
    8 地图/ var必威国际有限公司 / jenkins_home在容器中的目录到Docker体积用这个名字必威国际有限公司Jenkins-Data..而不是映射/ var必威国际有限公司 / jenkins_home目录到Docker卷,您还可以将此目录映射到计算机的本地文件系统上的一个。例如,指定选项
    ——卷$ HOME / jen必威国际有限公司kins: / var / jenkins_home会映射出集装箱的位置吗/ var必威国际有限公司 / jenkins_home目录的必威国际有限公司子目录中的子目录$ home目录,它通常是/用户/ <用户名> / jenkins必威国际有限公司或者/ home / / jenkins.请注意,如果为此更改源卷或目录,则Docker:Dind.需要更新上面的容器以匹配此功能。
    9 地图/证书/客户目录到先前创建的目录必威国际有限公司jenkins-docker-certs体积。这使得客户端TLS证书需要连接到Docker守护程序中可用的路径所指定的路径中可用的DOCKER_CERT_PATH环境变量。
    10. 在上一步中构建的Docker映像的名称。

    笔记:如果复制和粘贴上面的命令片段不起作用,请在这里尝试复制和粘贴这个没有注释的版本:

    码头工人运行——名字jenkins-必威国际有限公司blueocean——rm——分离\——网络詹金斯env DOCKER_HOST = tcp: / /码头工人:2376 \ - env DOCKER_CERT_PATH = /证书/客户——env DOCKER_TLS_VERIFY = 1 \发布8080:8080——发布50000:50000 \卷jenkins-data: / var / jenkins_home \——卷jenkins-docker-certs: /证书/客户:ro \ myjenkins-blueocean: 1.1
  6. 前往安装后的设置向导

在Windows上

Jenk必威国际有限公司ins项目提供了一个Linux容器映像,而不是Windows容器映像。请确保Docker for Windows安装配置为运行Linux容器而不是Windows的容器.请参阅Docker文档,了解如何执行切换到Linux容器.一旦配置为运行Linux容器,步骤是:

  1. 打开命令提示符窗口,类似于macOS和Linux上面的说明执行以下操作:

  2. 在Docker中创建网桥网络

    Docker网络创建Jenkins必威国际有限公司
  3. 运行Docker:Dind Docker图像

    Docker Run --name 必威国际有限公司Jenkins-Docker  -  _detach ^  - 专项--network jenkins --network-alias docker ^ --env docker_tls_certdir = / certs ^ --volume jenkins-docker-certs:/ certs / client^  -  volum必威国际有限公司e jenkins-data:/ var / jenkins_home ^ docker:dind
  4. 通过执行以下两个步骤自定义Jenkin必威国际有限公司s Docker Image:

    1. 使用以下内容创建dockerfile:

      从詹金斯/必威国际有限公司 jenkins: 2.303.1-jdk11用户root运行apt-get更新& & apt-get安装- y apt-transport-https \ ca证书curl gnupg2 \ software-properties-common运行curl https://download.docker.com/linux/debian/gpg -fsSL | apt-key添加- apt-key指纹0 ebfcd88跑add-apt-repository \“deb[拱= amd64]https://download.docker.com/linux/debian \ $(lsb_release -cs) stable"运行apt-get update && apt-get install -y docker-ce-cli USER jen必威国际有限公司kins运行jenkins-plugin-cli——plugins "blueocean:1.24.7 docker-workflow:1.26"
    2. 从这个Dockerfile构建一个新的docker映像,并为映像指定一个有意义的名称,例如:“my必威国际有限公司jenkins-blueocean: 1.1”:

      Docker build -t my必威国际有限公司jenkins-blueocean:1.1。

      请记住,如果之前没有这样做过,上面描述的过程将自动下载官方Jenkins Docker图像。必威国际有限公司

  5. 经营自己的my必威国际有限公司jenkins-blueocean: 1.1使用以下图像作为码头器中的容器Docker运行命令:

    码头工人运行——名字jenkins-必威国际有限公司blueocean——rm——分离^——网络詹金斯env DOCKER_HOST = tcp: / /码头工人:2376 ^ - env DOCKER_CERT_PATH = /证书/客户端- env DOCKER_TLS_VERIFY = 1 ^ -卷jenkins-data: / var / jenkins_home ^——卷jenkins-docker-certs: /证书/客户:ro ^——发布8080:8080发布50000:50000 myjenkins-blueocean: 1.1
  6. 前往设置向导

访问Docker容器

如果您有一些与Docker的经验,并且您希望或需要通过使用终端/命令提示符访问您的Docker容器码头工人执行命令,您可以添加类似的选项——名字jen必威国际有限公司kins-tutorial到了码头工人执行命令。这将访问名为“Jenkins-Tutori必威国际有限公司al”的Jenkins Docker容器。

这意味着你可以通过一个单独的终端/命令提示符窗口访问docker容器码头工人执行命令如:

Docker执行- jenkin必威国际有限公司s-blueocean bash

访问Docker日志

您可能需要访问Jenkins控制台日志,例如,当必威国际有限公司解锁詹金斯必威国际有限公司作为其中的一部分安装后的设置向导

通过终端必威国际有限公司/命令提示符窗口可以很容易地访问Jenkins控制台日志码头工人跑……命令。如果需要,您也可以访问Jenkins控制台日志必威国际有限公司码头工人日志使用以下命令的容器:

码头工人日志< docker-container-name >

你的可以使用码头工人ps命令。

访问Jenkins主目录必威国际有限公司

有可能您可能需要访问Jenkins主目录,例如,检查Jenkins Build的详细信息必威国际有限公司工作空间子目录。

如果您映射了Jenkins主目录(必威国际有限公司/ var必威国际有限公司 / jenkins_home)到您的本地文件系统中的一个(即码头工人跑……命令以上),然后可以通过计算机常用的终端/命令提示符访问该目录的内容。

否则,如果指定- volume必威国际有限公司 jenkins-data:/ var / jenkins_home选项在码头工人跑……命令,则可以通过容器的终端/命令提示符使用必威国际有限公司Docker Container Exp.命令:

< Docker -container-name> bash

正如前面提到的以上,你的可以使用码头工人容器ls命令。如果您指定
- Name必威国际有限公司 Jenkins-BlueCan选项在Docker容器运行…上面的命令(另见访问Jenkins / Bl必威国际有限公司ue Ocean Docker容器),你可以简单地使用Docker Container Exp.命令:

Docker容器执行- jenkins-blueoc必威国际有限公司ean bash

安装后的设置向导

下载、安装和运行Jenkins后,使用上面的一个过程,安装后安装向导就开始了。必威国际有限公司

此设置向导将通过一些快速的“一次性”步骤来解锁Jenkins,使用插件自定义它并创建第一个管理员用户,您可以通过该插件继续访问Jenkins。必威国际有限公司

解锁詹金斯必威国际有限公司

当您第一次访问一个新的Jenkins实例时,系统会要求您必威国际有限公司使用一个自动生成的密码来解锁它。

  1. 浏览到http://localhost:8080(或安装它时,您为Jenkins配置的哪个端口)并等待直到必威国际有限公司解锁詹金斯必威国际有限公司页面出现。

    解锁Jenki必威国际有限公司ns Page.

  2. 从Jenkins控必威国际有限公司制台日志输出,复制自动生成的字母数字密码(两组星号之间)。

    复制初始管理员密码
    笔记:

    • 命令:sudo cat / var / l必威国际有限公司ib / jenkins / secrets / ligitadminpassword将在控制台上打印密码。

    • 如果您使用官方运行码头的Jenkins必威国际有限公司必威国际有限公司Jenkins / Jenkins.你可以使用的图像sudo docker exec $ {countrouon_id或container_name} cat / var 必威国际有限公司/ jenkins_home / secrets / sitaladminpassword要在控制台中打印密码,而无需exectople。

  3. 解锁詹金斯必威国际有限公司页,将此密码粘贴到管理员密码字段并点击继续
    注:

    • 你可以从Docker日志(必威国际有限公司以上).

    • Jenk必威国际有限公司ins Console日志表示此密码也可以获得此密码的位置(在Jenkins主目录中)。在您可以访问Jenkins的主UI之前,必须在新的Jenkins安装上的安装向导中输入此密码。必威国际有限公司如果您碰巧跳过安装向导中的后续用户创建步骤,此密码也可用作默认的管理员帐户的密码(使用用户名“admin”)。

使用插件自定义Jenki必威国际有限公司ns

解锁詹金斯必威国际有限公司,定制Jenkins.必威国际有限公司页面出现。在这里,您可以安装任意数量的有用插件,作为初始设置的一部分。

点击下面两个选项中的一个:

  • 安装建议的插件- 要安装推荐的插件集,这些插件基于最常见的用例。

  • 选择要安装的插件-选择最初安装哪一组插件。当您第一次访问插件选择页面时,默认情况下会选择建议的插件。

如果你不确定你需要什么插件,选择安装建议的插件.您可以安装(或删除)额外的Jenkins插件在以后的时间点通过必威国际有限公司管理詹金斯必威国际有限公司>管理插件詹金斯的页面。必威国际有限公司

安装向导显示Jenkins正在配置的进程和您选择的Jenkins插件正在安装。必威国际有限公司这个过程可能需要几分钟。

创建第一个管理员用户

最后,经过使用插件自定义Jenki必威国际有限公司ns,J必威国际有限公司enkins要求您创建第一个管理员用户。

  1. 当。。。的时候创建第一个管理员用户出现页面,指定管理员用户在各个字段中的详细信息,然后单击保存和结束

  2. 当。。。的时候必威国际有限公司詹金斯已经准备好了出现页面,单击开始使用詹金斯必威国际有限公司
    注:

    • 此页面可能表示必威国际有限公司詹金斯快准备好了!相反,如果是,请点击重新开始

    • 如果一分钟后页面不会自动刷新,请使用Web浏览器手动刷新页面。

  3. 如果需要,用您刚刚创建的用户的凭据登录到Jen必威国际有限公司kins,您就可以开始使用Jenkins了!



此页面有用吗?

请通过此提交您关于此页面的反馈快速形式

或者,如果您不希望完成快速表单,您可以简单地指出,如果您觉得这个页面有帮助?


查看现有的反馈这里