docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker compose部署jenkins

docker compose部署jenkins过程详解

作者:自在1990

Jenkins是开源CI/CD工具,支持自动化构建、测试、部署,具备插件扩展、分布式构建、多版本控制等特性,适用于持续集成、持续交付及自动化测试,显著提升开发效率与软件质量,适合各类项目规模使用

简介

Jenkins 是一个开源的自动化服务器,广泛用于持续集成(CI)和持续交付(CD)过程。它能够帮助开发团队自动化构建、测试和部署软件,从而提高开发效率和软件质量。

核心特性

  1. 插件支持: Jenkins 拥有丰富的插件生态系统,用户可以根据需要安装不同的插件,扩展其功能以适应各种开发环境。
  2. 易于配置: 提供用户友好的 web 界面,方便用户创建和管理构建任务,配置简单直观。
  3. 分布式构建: 支持通过多台机器分布式执行构建任务,提高构建速度和效率。
  4. 支持多种版本控制系统: 兼容 Git、Subversion、Mercurial 等多个版本控制系统,便于与现有开发流程集成。
  5. 灵活的构建触发器: 可以根据代码提交、定时计划或手动触发等方式启动构建,满足不同场景需求。
  6. 持续反馈: 在构建和测试过程中提供实时反馈,帮助开发者及时发现问题。

使用场景

  1. 持续集成: 在每次代码提交后自动构建和测试,确保代码的稳定性和可用性。
  2. 持续交付: 自动化软件的发布过程,将新版本快速交付到生产环境。
  3. 自动化测试: 集成各种测试框架,自动执行单元测试、集成测试等,提升软件质量。

心得

Jenkins 是一个强大的工具,能够显著提高软件开发过程的效率和质量。通过自动化构建、测试和部署,团队能够更快地交付高质量的软件产品。无论是小型项目还是大型企业应用,Jenkins 都能为持续集成和持续交付提供坚实的支持。

部署

version: '3.8'
services:
  jenkins:
    image: jenkins/jenkins:2.478-jdk17    # 镜像版本
    container_name: jenkins               # 容器名称
    restart: always                       # 自动重启
    user: root
    environment:
      - TZ=Asia/Shanghai                  # 设置时区
    ports:
      - "8080:8080"                       # 端口映射
    volumes:
      - ./jenkins/data:/var/jenkins_home  # 数据持久化
    deploy:
      resources:
        limits:
          cpus: "1"              # 限制 CPU 核心数
          memory: "2G"           # 限制内存大小

启动

docker compose up -d

# 访问
curl http://127.0.0.1:8080

配置

查看日志,获取32位字符串(类似):a371e758bc1f44f4960a5f53358f1070

浏览器访问jenkins,配置时,需要该字符串

# 查看日志
docker logs jenkins 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文