windows服务器部署jenkins工具(二)
jenkins的大致流程:新增任务->配置任务->构建(打包)项目->部署(发布)
具体如何使用,我这里就不多讲了。这次就给大家讲讲,jenkins安装之后使用过程中存在的一些问题。
1.maven项目如何快速构建?
需要安装一个Maven Integration插件。(Manage Jenkins -> Plugins)
这样新增任务就会多一个构建maven项目的选项。
2.不同的项目需要用不同版本的jdk
Manage Jenkins-> Tools(全局工具配置)找到jdk配置,JAVA_HOME看自己docker启动命令中写的是什么填写过来就行。自动安装取消掉。
3.无法通过GIT拉取代码
Manage Jenkins-> Tools(全局工具配置)找到GIT安装,安装一下即可。下面还有nodejs的安装,有前端部署需求的也根据需要安装一下,就不多介绍了。
4.在哪维护目标服务器信息
Manage Jenkins->System(系统配置)找到SSH Servers,添加即可。
5.打包构建的shell脚本无法使用docker命令?
网上会推荐你去下载带有docker的jenkins版本,我建议是个人构建一个自己的jenkins镜像。
在指定目录下创建Dockerfile文件(内容如下),并在该目录下打开powershell,运行docker build命令:
docker build -t my-jenkins .
FROM jenkins/jenkins:ltsUSER root# 设置时区为Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \echo "Asia/Shanghai" > /etc/timezone# 安装Docker客户端
RUN apt-get update && \apt-get -y install \ca-certificates \curl \gnupg \lsb-release && \mkdir -p /etc/apt/keyrings && \curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg && \echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null && \apt-get update && \apt-get -y install docker-ce-cliUSER jenkins
至此构建一个my-jenkins的镜像,此时只需要将原来的jenkins容器删除,重新运行一下命令
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 `my-jenkins
上一篇文章中关于如下命令没有讲是什么,其实就是为了在jenkins中能够使用docker命令。
-v /var/run/docker.sock:/var/run/docker.sock `
打开docker desktop->settings->docker engine
配置中添加
"hosts": ["tcp://0.0.0.0:2375"]
然后重启docker desktop。如果重启失败,控制台先执行如下命令,然后再重启docker desktop
wsl --shutdown