docker安装jenkins并实现CICD流程

docker安装jenkins并实现CICD流程

安装命令

官方安装参考:https://www.jenkins.io/zh/doc/book/installing/

  • 拉取docker镜像,使用jenkinsci/blueocean
docker pull jenkinsci/blueocean:latest
  • 使用dockerwin环境下将\换成^

    docker run \
      --name jks \
      --privileged=true \
      -u root \
      -d \
      -p 8121:8080 \
      -p 50010:50000 \
      -v /Users/xxx/project/jks:/var/jenkins_home \
      -v /var/run/docker.sock:/var/run/docker.sock \
      jenkinsci/blueocean
    
  • 使用docker-compose

    // docker-compose.yml
    version: '3'  #定义版本
    services:  
      jenkins:
        container_name: jenkins
        image: jenkinsci/blueocean:latest
        user: root
        priveleged: true  #开启特权
        ports:  #定义映射端口
        - 8080:8080
        - 50000:50000
        volumes:  #定义挂载卷
        - /var/jenkins-data:/var/jenkins_home
        // - /usr/bin/docker:/usr/bin/docker
        - /var/run/docker.sock:/var/run/docker.sock
    

    启动命令

    docker-compose up -d
    
  • 查看docker容器

初始化设置

docker容器启动较慢,一开始打开web网页的时候画面如下

Please wait while Jenkins is getting ready to work

过程中本地挂载的文件夹也会下载文件

进入docker容器内部查看log

docker exec -it jks /bin/bash

或使用命令

docker log jks

或使用docker desktop

出现如下字样表示初始化成功

2024-02-22 14:29:16 2024-02-22 06:29:16.820+0000 [id=54]        INFO    jenkins.InitReactorRunner$1#onAttained: Completed initialization
2024-02-22 14:29:16 2024-02-22 06:29:16.863+0000 [id=32]        INFO    hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running

密码存储的位置如下,在上图的log中也可以查看到

docker logs jks
或
docker exec -it jks /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword

安装插件,选择安装推荐的插件即可

等待安装,可能有一部分安装失败,一般是因为jenkins版本问题,需要进入主页面,更新后再安装,右下角选择【继续】即可

创建一个管理员账户

实例配置,不要使用localhost,使用docker的宿主机地址:http://host.docker.internal:8121/这里是为了配置git仓库的webhook时,能够访问通,使用域名也可以

配置完成后【重启】jenkins,使用刚刚注册的用户登陆

更新jenkins及插件

进入主页,可以看到右下角的Jenkins版本

更新jenkins版本

选择右上角橙色警示⚠️,查看配置插件,blueocean镜像中的jenkins停留在2023年,版本为2.346.3,这会导致很多插件报错,如下图

Mina SSHD API :: Core (2.12.0-90.v9f7fb_9fa_3d3b_)
Jenkins (2.361.4) or higher required

一直下拉,选择【自动升级】Jenkins

如果下拉没有升级,出现的画面如下

则回到主页面,选择【系统管理】,也可以找到升级

等待下载jenkins.war完成后,重启镜像

再次进入,jenkins已更新,此时登陆页面也变了

更新插件

更新jenkins之后再更新插件,主页面,选择【系统管理】-【插件管理】

更新全部已经存在的插件

安装完再次重启jenkins镜像,登陆进入即可正常使用

创建第一个任务

主页面左侧【新建任务】

基础项目有Freestyle project流水线(pipeline),选择创建pipeline

可以只设置一个hello worldJenkinsfile

点击应用和保存,跳转

pipeline {
    agent any

    stages {
        stage('Hello') {
            steps {
                echo 'Hello World'
            }
        }
    }
}

点击【立即构建】

选择构建历史,查看【Console Output】,查看构建

修改配置

插件更新中心

镜像地址

维护方 镜像中心地址
Jenkins中文社区 https://updates.jenkins-zh.cn/update-center.json
清华大学 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
华为开源镜像站 https://mirrors.huaweicloud.com/jenkins/updates/update-center.json

方法一:web页面设置
【系统管理】-【插件管理】-【高级设置】

方法二:直接修改配置文件

配置文件在docker镜像内的位置:/var/jenkins_mount/hudson.model.UpdateCenter.xml

或宿主机映射都可以找到这个文件

打开文件,修改url标签的内容即可

时区设置

默认是UTC时区标准时间,导致了jenkins的构建时间和宿主机差了8个小时

  • 方法一:用户设置中选择时区

  • 方法二:【Manage Jenkins】-【Script Console】,终端输入命令修改

    System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone','Asia/Shanghai')
    

相关推荐

  1. docker+jekins+gitlab cicd

    2024-03-10 20:44:05       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-10 20:44:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-10 20:44:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-10 20:44:05       82 阅读
  4. Python语言-面向对象

    2024-03-10 20:44:05       91 阅读

热门阅读

  1. python基础总复习

    2024-03-10 20:44:05       45 阅读
  2. 大数据培训之Zookeeper零基础-1

    2024-03-10 20:44:05       34 阅读
  3. 大模型交互-超拟人合成

    2024-03-10 20:44:05       32 阅读
  4. Android如何对应用进行系统签名

    2024-03-10 20:44:05       44 阅读
  5. 【CSS】初学轻松学会使用Flex布局

    2024-03-10 20:44:05       40 阅读
  6. 【CMake】顶层 CMakeList.txt 常用命令总结

    2024-03-10 20:44:05       43 阅读
  7. 点投影到平面方程

    2024-03-10 20:44:05       47 阅读
  8. leetcode 2834.找出美丽数组的最小和

    2024-03-10 20:44:05       34 阅读
  9. MySQL的页与行格式

    2024-03-10 20:44:05       53 阅读
  10. DPN网络

    DPN网络

    2024-03-10 20:44:05      48 阅读