Jenkins的环境部署

day22

回顾

Jenkins

简介

官网Jenkins

Jenkins Build great things at any scale

The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.

用来构建一切

其实就是用Java写的一个项目,最后打包为一个war包,执行这个war包就可以运行起来了

但是官网最新的war包要求必须是jdk17以上(17,21)

复制代码
[root@work day22]# java -jar jenkins.war 
Running with Java 11 from /usr/lib/jvm/java-11-openjdk-11.0.25.0.9-2.el9.x86_64, which is older than the minimum required version (Java 17).
Supported Java versions are: [17, 21]

所以我们用docker来搭建

环境搭建

使用docker搭建jenkinsDownload and deploy

  1. 部署网络环境

    复制代码
    docker network create jenkins
  2. 执行docker运行命令

    复制代码
    docker run --name jenkins-docker --rm --detach \
      --privileged --network jenkins --network-alias docker \
      --env DOCKER_TLS_CERTDIR=/certs \
      --volume jenkins-docker-certs:/certs/client \
      --volume jenkins-data:/var/jenkins_home \
      --publish 2376:2376 \
      docker:dind --storage-driver overlay2
  3. 新建Dockerfile文件

    复制代码
    FROM jenkins/jenkins:2.479.1-jdk17
    USER root
    RUN apt-get update && apt-get install -y lsb-release
    RUN curl -fsSLo /usr/share/keyrings/docker-archive-keyring.asc \
      https://download.docker.com/linux/debian/gpg
    RUN echo "deb [arch=$(dpkg --print-architecture) \
      signed-by=/usr/share/keyrings/docker-archive-keyring.asc] \
      https://download.docker.com/linux/debian \
      $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
    RUN apt-get update && apt-get install -y docker-ce-cli
    USER jenkins
    RUN jenkins-plugin-cli --plugins "blueocean docker-workflow"

    官方给的是这个jenkins/jenkins:2.479.1-jdk17,从这里也可以看出来,这个jenkins用的jdk是17的版本。这也就是我为什么用docker,而不用单纯的war包方式了。但是这个镜像有问题,我做了修改jenkins/jenkins:latest

    复制代码
    FROM jenkins/jenkins:latest
    USER root
    RUN apt-get update && apt-get install -y lsb-release
    RUN curl -fsSLo /usr/share/keyrings/docker-archive-keyring.asc \
      https://download.docker.com/linux/debian/gpg
    RUN echo "deb [arch=$(dpkg --print-architecture) \
      signed-by=/usr/share/keyrings/docker-archive-keyring.asc] \
      https://download.docker.com/linux/debian \
      $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
    RUN apt-get update && apt-get install -y docker-ce-cli
    USER jenkins
    RUN jenkins-plugin-cli --plugins "blueocean docker-workflow"

    在这之前,可以先拉取一下这个镜像

    复制代码
    docker pull jenkins/jenkins:latest
  4. 用上面的Dockerfile文件制作镜像

    复制代码
    docker build -t myjenkins-blueocean:2.479.1-1 .
  5. 检查制作好的镜像

  6. 运行我们制作好的镜像

    复制代码
    docker run --name jenkins-blueocean --restart=on-failure --detach \
      --network jenkins --env DOCKER_HOST=tcp://docker:2376 \
      --env DOCKER_CERT_PATH=/certs/client --env DOCKER_TLS_VERIFY=1 \
      --publish 8080:8080 --publish 50000:50000 \
      --volume jenkins-data:/var/jenkins_home \
      --volume jenkins-docker-certs:/certs/client:ro \
      myjenkins-blueocean:2.479.1-1
  7. 浏览器访问运行8080端口,到这个登录页面至此jenkins安装部署完成

jenkins使用

第一次登录jenkins这个页面(如上图),我们发现是需要密码的,并且页面上提示我们登录密码的位置在这里/var/jenkins_home/secrets/initialAdminPassword

我们需要执行命令得到jenkins的密码

复制代码
docker exec Jenkins的容器id cat /var/jenkins_home/secrets/initialAdminPassword
复制代码
[root@work ~]# docker exec 6627 cat /var/jenkins_home/secrets/initialAdminPassword
0d11bde19338473ead2da58dc1a6fe86

在以上的登录页面中输入刚刚得到的密码,就可以进入jenkins页面了。

相关推荐
一只栖枝2 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
wuicer4 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
桦说编程4 小时前
Java 中如何创建不可变类型
java·后端·函数式编程
lifallen4 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研4 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
没有bug.的程序员5 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋5 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
阿华的代码王国6 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
Zyy~6 小时前
《设计模式》装饰模式
java·设计模式
A尘埃6 小时前
企业级Java项目和大模型结合场景(智能客服系统:电商、金融、政务、企业)
java·金融·政务·智能客服系统