• Jenkins简介及Docker Compose部署


    Jenkins是一个开源的自动化服务器,用于自动化构建、测试和部署软件项目。它提供了丰富的插件生态系统,支持各种编程语言和工具,使得软件开发流程更加高效和可靠。在本文中,我们将介绍Jenkins的基本概念,并展示如何使用Docker Compose轻松部署Jenkins服务。

    jenkins.jpg

    Jenkins简介

    Jenkins的主要功能包括:

    • 持续集成(CI): Jenkins通过定期检查版本控制系统中的变更,触发构建和测试过程,以确保代码的稳定性。

    • 持续交付(CD): Jenkins支持自动化部署,使得软件的交付过程更加可靠和可重复。

    • 插件生态系统: Jenkins拥有庞大而活跃的插件生态系统,涵盖了几乎所有现代软件开发中可能用到的工具和技术。

    • 易扩展性: Jenkins采用Java编写,易于扩展和定制,可以满足各种复杂的构建和部署需求。

    Docker Compose部署Jenkins

    步骤一:构建镜像

    我在此处是直接在镜像jenkinsci/jenkins:latest的基础上配置了自己使用版本的java、node、maven,也可以直接使用原镜像,然后在Jenkins的页面上进行插件配置下载。

    Dockerfile

    # 基础镜像
    FROM jenkinsci/jenkins:latest
    
    # 维护者信息
    MAINTAINER "xj"
    
    # 镜像用户
    USER root
    
    # 拷贝NODE安装文件到容器
    ADD ./node-v14.16.0-linux-x64.tar.gz /home
    
    #配置node
    RUN mv /home/node-v14.16.0-linux-x64 /home/node \
      && ln -s /home/node/bin/node /usr/bin/node \
      && ln -s /home/node/bin/npm /usr/bin/npm
    
    # 拷贝MAVEN安装文件到容器
    ADD ./apache-maven-3.8.1-bin.tar.gz /home
    RUN mv /home/apache-maven-3.8.1 /home/maven \
      && mkdir /home/maven/repository \
      && rm /home/maven/conf/settings.xml
    ADD ./settings.xml /home/maven/conf/settings.xml
    
    #配置maven
    RUN ln -s /home/maven/bin/mvn /usr/bin/mvn
    
    # 拷贝jdk安装文件到容器
    ADD ./jdk-8u361-linux-x64.tar.gz /home
    # 配置jdk
    RUN mv /home/jdk1.8.0_361 /home/jdk \
      && ln -snf /home/jdk/bin/java /usr/bin/java
    
    # 切换目录
    WORKDIR /home
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    步骤二:创建Docker Compose文件

    创建一个名为docker-compose.yml的文件,用于定义Jenkins服务及其依赖项。示例如下:

    docker-compose.yml

    version: "3.3"
    services:
      jenkins:
        image: xj/jenkins:1.0
        container_name: jenkins
        restart: always
        privileged: true
        environment:
          TZ: 'Asia/Shanghai'
        ports:
          - 9003:8080
          - 50000:50000
        volumes:
          - ./data/jenkins_home:/var/jenkins_home
    # 安装过程中会出现 Docker 数据卷 权限问题,用以下命令解决:
    # sudo chown -R 1000 ./data
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    如果不需要自己构建镜像的话把image替换为jenkinsci/jenkins:latest即可。

    步骤三:运行容器

    在docker-compose.yml的同级目录下执行如下命令启动容器:

    docker-compose up -d 
    
    • 1

    查看容器日志

    docker-compose logs -f 
    
    • 1

    如果出现一下截图,则说明容器启动成功

    _20231112212117.jpg

    访问Jenkins Web界面,完成Jenkins安装

    当Docker容器启动完成后,可以通过浏览器访问http://192.168.10.106:9003来打开Jenkins的Web界面。首次访问时,您需要提供初始管理员密码,该密码会在上述启动的容器日志中打印,也可以在/var/jenkins_home/secrets/initialAdminPassword文件中查看。

    _20231112222516.jpg

    输入密码之后会进入到插件安装界面,我们此处选择的是建议安装插件,你也可以自行选择插件安装。

    _20231112222617.jpg

    点击之后会进入到插件安装进度的页面

    _20231112222631.jpg

    安装好之后进入管理员密码设置页面,设置之后我们就可以使用jenkins了

    _20231112235055.jpg

    具体项目自动构建打包部署我们虾片文章再介绍

    总结

    通过使用Docker Compose,我们轻松地部署了Jenkins服务,并使其在容器环境中运行。这为我们提供了一个独立、可移植且易于维护的Jenkins实例。希望这篇文章对您理解Jenkins以及如何使用Docker Compose进行部署有所帮助。

  • 相关阅读:
    Claude 使用指南 | 可与GPT-4媲美的语言模型
    Python【字符串】【列表】【元组】常用操作
    如何通过 wireshark 捕获 C# 上传的图片
    IS-IS实验总结 (下)
    【skynet】skynet消息处理与协程
    如何用DOCKER容器安装开源Tryton ERP环境
    配电网重构|基于新颖的启发式算法SOE的随机(SDNR)配电网重构(Matlab代码实现)【算例33节点、84节点、119节点、136节点、417节点】
    Springboot晋韵戏剧点播网站毕业设计源码112304
    xss-labs/level5
    教你VSCode如何快速对齐代码、格式化代码
  • 原文地址:https://blog.csdn.net/weixin_44002151/article/details/134368213