windows服务器部署jenkins工具

sjenkins作为一款构建发布工具,极大的简化了大家项目部署发布流程。jenkins通常是部署在linux服务上,今天给大家分享的是windows服务器上如何搭建jenkins发布工具。

1.首先第一步还是看windows安装docker 这篇文章哈,当然也可以不采用docker desktop。windows直接安装windows支持的linux工具,操作可以参考centos7安装jenkins_centos7 下载jenkins.jar包-CSDN博客

2.docker desktop中拉取jenkins镜像(这里是最新的)

bash 复制代码
docker pull jenkins/jenkins:lts-jdk17

3.构建jenkins容器准备

3.1 准备maven

下载maven,解压即可。因为不是开发,不需要配置什么maven环境。

3.2 准备maven仓库地址

指定仓库目录,本地新建一个目录jenkins用来下载pom依赖。

注意:maven/conf/settings.xml中也需要配置以下目录,这个地址jenkins中maven依赖现在目录。

bash 复制代码
  <localRepository>/var/jenkins_home/.m2/repository</localRepository>

3.3 准备jdk(多版本)

jenkins最新版本默认使用jdk17,但是很多时候我们的项目还是jdk8 甚至jdk7等。所以需要我们单独下载jdk(linux版本!!.tar.gz文件!!)到本地。这里会有一个问题,因为我们下载的是linux版本,直接用windows本地解压会有问题。所以需要借助WSL命令。打开终端或者powershell,输入

bash 复制代码
 wsl -d docker-desktop

wsl的目录层级/mnt/c等价于windows环境下的 c:// 切换目录到jdk压缩包所在目录,解压jdk压缩包。

bash 复制代码
 tar -zxvf  **.tar.gz

3.4 jenkins_home

创建一个文件夹,用来挂载jenkins数据。

至此准备工作完毕,准备docker启动命令

bash 复制代码
docker run -d `
  -p 9090:8080 -p 50000:50000 `  //端口映射,8080是web访问端口
  --name jenkins `               //容器名
  --restart=always `             //自动重启
  --user root `                  //启动用户!一定要用root,不然会有各种权限问题
  -e TZ=Asia/Shanghai            //设置时区
  -v 本地新建的jenkins数据目录:/var/jenkins_home `
  -v 本地解压后的jdk版本:/usr/lib/jvm/jdk版本`
  -v 本地解压后的maven版本:/opt/maven版本 `
  -v /var/run/docker.sock:/var/run/docker.sock `  //这个先不管,后面讲
  -v 本地仓库地址:/var/jenkins_home/.m2/repository `
  jenkins/jenkins:lts           //镜像名
bash 复制代码
docker run -d `
  -p 9090:8080 -p 50000:50000 `
  --name jenkins `
  --restart=always `
  --user root `
  -e TZ=Asia/Shanghai 
  -v D:\cch\environment\jenkins\data:/var/jenkins_home `
  -v D:\cch\environment\java\jdk\linux\java-se-8u44-ri:/usr/lib/jvm/java-se-8u44-ri `
  -v D:\cch\environment\java\jdk\linux\jdk-11.0.0.2:/usr/lib/jvm/jdk-11.0.0.2 `
  -v D:\cch\environment\java\apache-maven-3.6.1:/opt/apache-maven-3.6.1 `
  -v /var/run/docker.sock:/var/run/docker.sock `
  -v D:\cch\environment\java\repository:/var/jenkins_home/.m2/repository `
  jenkins/jenkins:lts

给个demo吧:

bash 复制代码
docker run -d `
  -p 9090:8080 -p 50000:50000 `
  --name jenkins `
  --restart=always `
  --user root `
  -e TZ=Asia/Shanghai 
  -v D:\cch\environment\jenkins\data:/var/jenkins_home `
  -v D:\cch\environment\java\jdk\linux\java-se-8u44-ri:/usr/lib/jvm/java-se-8u44-ri `
  -v D:\cch\environment\java\jdk\linux\jdk-11.0.0.2:/usr/lib/jvm/jdk-11.0.0.2 `
  -v D:\cch\environment\java\apache-maven-3.6.1:/opt/apache-maven-3.6.1 `
  -v /var/run/docker.sock:/var/run/docker.sock `
  -v D:\cch\environment\java\repository:/var/jenkins_home/.m2/repository `
  jenkins/jenkins:lts

至此,jenkins安装基本完成。

后续将更新jenkins部署之后的一些配置,以及一些新的问题。

相关推荐
liliangcsdn1 分钟前
linux pip/conda 修改默认cache位置
linux·运维·pip
mortimer34 分钟前
记一次网站服务器无缝扩容:利用软链接实现零停机数据迁移
linux·运维
Dontla1 小时前
docker desktop入门(docker桌面版)(提示wsl版本太低解决办法)
运维·docker·容器
没有bug.的程序员2 小时前
《Spring Boot应用工程化提升:多模块、脚手架与DevTools》
java·运维·spring boot
大山运维2 小时前
免费非常好用的录屏软件,体积小
运维
huangyuchi.2 小时前
【Linux】环境变量
linux·运维·操作系统·环境变量·系统调用·命令行参数·main函数参数
Crazy________5 小时前
28Rsync免密传输与定时备份
linux·运维·服务器
阿巴~阿巴~6 小时前
信号产生机制全解析:从硬件异常到软件触发的深度探索
linux·运维·服务器
sky北城8 小时前
linux基本系统服务——DNS服务
linux·运维·服务器
Adorable老犀牛8 小时前
DockerFile文件执行docker bulid自动构建镜像
运维·docker·容器