当前位置: 首页 > article >正文

docker file容器化部署Jenkins(一)

Jenkins Github地址:https://github.com/jenkinsci/jenkins
国内镜像地址:https://docker.aityp.com/

准备工作

# 创建持久化卷目录
mkdir /data/jenkins_home/Jenkins

拉取镜像
# 由于Jenkins需要JDK,所以直接拉取带有JDK的Jenkins镜像
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jenkins/jenkins:latest-jdk17

# 更改镜像tag
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jenkins/jenkins:latest-jdk17 jenkins-jdk17:2.464

# 创建Jenkins部署脚本
touch /tmp/docker-compose-jenkins.yml
vi /tmp/docker-compose-jenkins.yml

# 将下方Jenkins部署脚本粘贴到docker-compose-jenkins.yml中

version: '3.8'
services:
  jenkins:
    image: jenkins-jdk17:2.464
    container_name: jenkins
    privileged: true
    user: root
    ports:
      - "9090:8080"
      - "50001:50000"
    volumes:
      - /data/jenkins_home/Jenkins:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/local/bin/docker
      - /data/jenkins_home/maven/settings.xml:/opt/apache-maven-3.9.9/conf/settings.xml # 这里只提供了 maven 的 settings.xml 主要用于修改 maven 的镜像地址
#    environment:
       - TZ=Asia/Shanghai
#      - JAVA_OPTS=-Djenkins.install.runSetupWizard=false # 禁止安装向导「如果需要密码则不要配置」docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
    restart: unless-stopped
volumes:
  Jenkins:

安装部署

# 执行脚本,进行部署
docker-compose -f /tmp/docker-compose-jenkins.yml up -d   

参数解释:

# image:镜像名称
# container_name:容器名称
 privileged: true  # 授予容器特权模式,允许容器访问宿主机的所有设备
  user: root  # 以root用户身份运行容器内的进程
     - "9090:8080"  # 将宿主机的9090端口映射到容器的8080端口;Web端口
     - "50001:50000"  # 将宿主机的50001端口映射到容器的50000端口
JAVA_OPTS=-Djenkins.install.runSetupWizard=false 这个是一个禁止安装向导,配置为 false 后,则 Jenkins 不会让你设置密码,也不会一开始就安装一堆插件。如果你需要安装向导可以注释掉这个配置。并且当提示你获取密码时,你可以执行;docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword 获取到登录密码。

访问Jenkins

容器成功运行后访问,http://容器所在机器的IP:9090
进入界面后要求输入登录密码,获取方式:

# 查看生成的密码
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
  • 返回到登录界面输入密码,点击安装推荐的插件,等待插件安装完成(默认会根据地区安装中文语言包)
  • 我这边不创建新用户,点击右下角Skip and continue as admin(使用admin账户继续)
  • Instance Configuration(实例配置)页面中,点击右下角Save and Finish(保存并完成)即可
  • 点击开始使用Jenkins

jenkins构建时间和服务器同步

路径:
Dashboard > Manage > Jenkins Script Console
输入下方指令:

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

如果Result下方的结果栏(Result)中显示下方结果,就证明执行成功了
Result: Asia/Shanghai

设置admin账号密码

路径:右上角账户名旁的三角箭头 > Security > 密码
重新输入密码和确认密码,点击保存即可

至此Jenkins部署完毕


http://www.kler.cn/a/375177.html

相关文章:

  • HTML 多媒体标签详解:<img>、<object> 与 <embed>
  • 【AIGC】逆向拆解OpenAI官方提示词Prompt技巧:高效提升ChatGPT输出质量
  • 数据结构算法学习方法经验总结
  • 单片机内存管理和启动文件
  • 【数据结构】数组和向量
  • 江协科技STM32学习- P28 USART串口数据包
  • 【笔面试常见题:三门问题】用条件概率、全概率和贝叶斯推导
  • 语音IC方案,在交通信号灯语音提示器的应用解析,NV040D
  • Windows 基础 (二):系统目录与环境变量
  • 搭建SRS流媒体服务器处理多路无人机视频流
  • 跨境行业的客户运营利器:构建在线培训知识库
  • mac下使用docker安装php7.4环境
  • 网络编程基础-Reactor线程模型-原理剖析
  • Nginx负载均衡配置详解
  • ConcurrentHashMap底层实现是什么
  • Linux高阶——1027—
  • AI产品经理实战手册:策略、开发与商业化指南
  • 2021李宏毅机器学习 1 机器学习基础 笔记
  • 树莓派开发相关知识六 -串口通讯
  • TCP/IP网络编程:理解网络编程和套接字
  • 【面试每日一题之CSS】2、line-height和heigh区别
  • Spring Boot实战:打造现代租房管理系统
  • 如何用猿大师办公助手实现OA系统中Word公文/合同在线编辑及流转?
  • YOLOv6-4.0部分代码阅读笔记-loss_fuseab.py
  • Gitee push 文件
  • 【CRM系统选型指南:国内九大主流工具比较】