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页面了。

相关推荐
程序员张32 小时前
Maven编译和打包插件
java·spring boot·maven
ybq195133454313 小时前
Redis-主从复制-分布式系统
java·数据库·redis
weixin_472339463 小时前
高效处理大体积Excel文件的Java技术方案解析
java·开发语言·excel
小毛驴8503 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
DKPT4 小时前
Java桥接模式实现方式与测试方法
java·笔记·学习·设计模式·桥接模式
一心0925 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上5 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
ldj20205 小时前
Jenkins 部署脚本
jenkins
你想考研啊5 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
好奇的菜鸟5 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea