jenkins的CICD部署

使用docker 启动 jenkins

在wsl环境下执行,会发现 docker.sock 守护进程不在,需要手动配置,需要注意如下

  • 启动jenkins 市区设置为 东八区
  • 当时尝试过容器绑定宿主机器的node,但是无法使用?因为window下的node执行文件和linx不兼容,window下是PE格式,而jenkins容器是linux环境,所以在下面会介绍如何安装nodejs
sh 复制代码
docker pull jenkins/jenkins:jdk17

docker run -d \
  --name jenkins \
  -p 8888:8080 \
  -p 50000:50000 \
  -e JAVA_OPTS="-Duser.timezone=Asia/Shanghai" \
  -v /home/jenkins_data:/var/jenkins_home \
  -v $(which docker):/usr/bin/docker \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -u 0 \
  jenkins/jenkins:jdk17

创建自由流水线

最关键执行的sheel脚本, 删除容器、镜像、创建镜像、启动容器

sh 复制代码
pwd
node -v && npm -v
npm install -g pnpm 
npm config set registry http://172.10.20.204:4873
npm get registry
pnpm install
pnpm build
# 删除容器 -c 代表容器 -i代表 镜像 
docker rm layout-website-back-c --force || true
# 删除镜像
docker rmi layout-website-back-i --force || true
docker build -f ./deploy/Dockerfile -t layout-website-back-i:qa .
docker run -d -p 0.0.0.0:9000:80 --name layout-website-back-c layout-website-back-i:qa

会发现node not found

安装nodejs插件,并全局设置添加插件

  1. 安装nodejs插件,并全局设置添加nodejs版本并命名
  2. 勾选 Provide Node & npm bin/ folder to PATH
  3. 构建流水线会发现一直卡在unpacking xx

解决上面第三个问题,手动压缩

因为网络问题,手动压缩nodejs包到工具里, 到var/jenkin_data/tool 里,

sh 复制代码
wget https://npmmirror.com/mirrors/node/v24.0.0/node-v24.0.0-linux-x64.tar.gz -P /var/jenkins_home/tools/

角色管理 Manage and Assign Roles

还没做

以上就是我在前端小组里搭建jenkins遇到的坑!

相关推荐
EatFan24 分钟前
Spring Boot 4 落地观察:从 yudao-cloud、matecloud、JPower 看国产脚手架的升级路线与迁移清单
java·spring boot·后端·spring cloud·微服务·后端开发·jdk 21
波力海苔夹心脆6752 小时前
C# 序列化与反序列化详解:System.Text.Json、Newtonsoft.Json、XmlSerializer 用法、特性选项与安全实践
经验分享·后端·c#·json·.net
JavaGuide3 小时前
NVIDIA 又开源了!这次给 AI Agent 加上权限管控
前端·后端
excel3 小时前
prisma 如何处理数据库竞态
前端·数据库·后端
IT_陈寒5 小时前
Java线程池这破玩意,差点让我周末加班排查到凌晨
前端·人工智能·后端
弈栈录6 小时前
Java AI 应用的异步化与高并发设计
java·后端·架构
凤山老林6 小时前
Spring Boot 集成 iText 7 实现动态 PDF 生成与电子签章:合同、报表场景实战
spring boot·后端·pdf·itext7·电子签章
孙启超6 小时前
【AI开发之Rust】第 19 课:UniFFI 导出核心能力
开发语言·后端·rust
ServBay7 小时前
基于Jev的浏览器Agent插件狂揽 21k star,3分钟教你解放双手
后端·aigc·ai编程