使用docker搭建Jenkins

简介

enkins是一个开源的自动化服务器工具,最初是为软件开发领域设计的。它是一个基于Java的Web应用程序,用于管理和持续集成软件开发过程中的各种任务。

Jenkins的主要功能是帮助开发团队自动化构建、测试和部署软件项目。它可以集成各种版本控制系统,如Git、Subversion等,并支持多种构建工具和测试框架。

使用Jenkins,开发团队可以设置自动构建任务,从代码仓库中拉取最新代码,编译并构建应用程序,运行各种自动化测试,生成测试报告,并在构建成功后自动部署到目标服务器。这样可以大大减少手动操作,提高开发效率和软件质量。

安装

创建docker-compose.yml文件

bash 复制代码
sudo vim docker-compose.yml
version: '3'
services:
  jenkins:
    image: jenkins/jenkins:lts
    container_name: jenkins
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - jenkins_home:/var/jenkins_home
      - jenkins_logs:/var/log/jenkins
    environment:
      - JAVA_OPTS=-Djenkins.install.runSetupWizard=false
      - JENKINS_OPTS=--prefix=/jenkins
    logging:
      driver: "json-file"
      options:
        max-size: "10m"   # 设置最大日志文件大小为10兆
        max-file: "5"      # 保留最多5个旧日志文件
    networks:
      - jenkins-net

volumes:
  jenkins_home:
  jenkins_logs:

networks:
  jenkins-net:

image: jenkins/jenkins:lts: 使用 Jenkins 官方的 Long-Term Support (LTS) 版本的 Docker 镜像。

container_name: jenkins: 为容器指定一个名称,以便在运行时引用容器。

ports: 映射容器内的端口到宿主机。

volumes: 定义容器的数据卷,分别用于持久化 Jenkins 数据和日志。

environment: 设置容器的环境变量,禁用 Jenkins 的安装向导并配置路径前缀。

logging: 配置容器的日志设置,使用 json-file 驱动,限制每个日志文件大小为10兆,最多保留5个旧日志文件。

networks: 定义容器所使用的 Docker 网络。

这个配置文件中,Jenkins 日志将被限制在每个文件最大10兆,保留最多5个旧日志文件,以确保日志文件大小受到控制。
在存储yml文件的目录运行容器

bash 复制代码
sudo docker-compose up -d

首次运行时,可以使用以下命令获取初始化密码:

bash 复制代码
sudo docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword

然后,访问 http://localhost:8080/jenkins(或你设置的路径前缀),输入初始化密码进行初始化设置。完成设置后,你将能够使用 Jenkins 进行 CI/CD 等任务。

相关推荐
虎头金猫19 小时前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS19 小时前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
玉&心21 小时前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing21 小时前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
赵文宇(温玉)1 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang1 天前
上传本地镜像到harbor中
docker·容器·持续部署
羑悻的小杀马特1 天前
Dockerfile 全景指南:从入门编写dockerfile到生产环境镜像优化实战,一步步带你从啃透制作指令到镜像制作落地!
docker·dockerfile·镜像制作
BianHuanShiZhe1 天前
docker常见命令
docker
正经教主1 天前
【FDE系列】阶段2:Day 43:Docker Compose — 多容器一键编排
人工智能·docker·fde
忆~遂愿1 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器