docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > Docker部署Jenkins打包

Docker部署Jenkins并打包gitee仓库项目

作者:人生不过 三万天

本文手把手教在本地虚拟机上用Docker部署Jenkins,从数据卷创建到容器启动,再到Gitee插件配置和流水线构建Java项目,感兴趣的可以了解一下

一、背景:本地安装的虚拟机和装好docker

1.1 创建持久化数据卷

# 使用Docker命名卷(推荐,数据独立于宿主机目录)
docker volume create jenkins_home

1.2 拉取镜像

docker pull jenkins/jenkins:lts-jdk17

1.3 启动容器

docker run -d \
  --name jenkins \
  --restart unless-stopped \
  -u root \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins_home:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  -v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \
  -e TZ="Asia/Shanghai" \
  -e JAVA_OPTS="-Dhudson.security.HostHeader.enforceHostHeader=false -Xmx2g -Xms512m" \
  jenkins/jenkins:lts-jdk17

参数说明:

参数说明
-d后台运行
--name jenkins容器名称
--restart unless-stopped容器退出时自动重启(除非手动停止)
-p 8080:8080映射Web管理界面端口(前面是服务器端口,后面是容器端口)
-p 50000:50000映射Agent节点通信端口(分布式构建用)
-v jenkins_home:/var/jenkins_home数据持久化
-v /var/run/docker.sock:/var/run/docker.sock允许Jenkins容器内调用宿主机Docker
-e TZ="Asia/Shanghai"设置时区为北京时间
-e JAVA_OPTS="-Xmx2g -Xms512m"JVM内存配置

1.4 查看启动日志

docker logs -f jenkins

启动成功会看到初始密码,当前安装的版本是2.541.3

2.1 访问Jenkins并完成初始化

注意这里一个小点我卡了好一会,不能使用127.0.0.1:8080访问,虽然是你本地虚拟机,但是要使用虚拟的ip访问。自己都想打自己。。。。。

2.2 安装插件

选择 "安装推荐的插件" (推荐)

确实需要等上一会

等了一个世纪,部分成功,部分失败,先下一步。后面可以再装

二、安装Gitee插件

2.1 更换国内镜像源

https://mirrors.tuna.tsinghua.edu.cn/

2.2 安装gitee和docker插件

前面安装失败的插件在更换国内镜像地址后自动开始下载了

2.3 获取Gitee私人令牌

2.4 Jenkins中配置Gitee

  1. Jenkins首页 → "系统管理" → "系统配置"
  2. 找到 "Gitee配置" 部分:
    1. 链接名gitee.com
    2. Gitee域名URLhttps://gitee.com
    3. 将私人令牌粘贴进去 → 点击"添加"
    4. 测试连接:点击"测试",显示"成功"即配置正确

输入令牌后会多一个选择

然后点击测试会显示成功

tips:做到这里时候我有重启jenkins,但发现之前改的密码没生效不知道为什么,但是日志里的密码还能使用,就使用admin和日志密码登录了,然后在页面重新修改了密码,然后重启服务才生效。不知道别人是否也有。

三、 项目构建

3.1、我提供一个简单的java测试服务

https://gitee.com/jd4932/jenkins-demo.git

打包这个项目需要maven和jdk环境。开始配置

点击齿轮设置滚到最下面就是全局工具配置

3.2、jdk多版本环境准备勾选自动安装

3. 3创建 Jenkins Pipeline 任务

  1. 在 Jenkins 首页点击 “新建任务”
  2. 输入任务名称,选择 “流水线 (Pipeline)”,点击确定。
  3. 在任务配置页面,找到 “流水线” 部分。
    1. Definition: 选择 Pipeline script from SCM
    2. SCM: 选择 Git
    3. Repository URL: 填写你的 Gitee 项目地址(如 https://gitee.com/your-username/your-project.git)。
    4. Credentials: 新建一个gitee的认证方式,我选择账号密码,这个随便。
    5. Branches to build: 指定要构建的分支(如 */main 或 */master)。
    6. Script Path: 保持默认的 Jenkinsfile
  4. 点击 “保存”

注意这个流水线会读取Jenkinsfile文件,这个 是在我后端服务代码里的。

流水线这个配置不要勾选

3.4、开始构建

3.5、启动测试

目前构建完是在宿主机上,测试的ip注意是虚拟机ip,不能使用127.0.0.1

docker run -d -p 8099:8080 --name jenkins-demo jenkins-demo:8

到此这篇关于Docker部署Jenkins并打包gitee仓库项目的文章就介绍到这了,更多相关Docker部署Jenkins打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

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