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命令:

bash 复制代码
 docker build -t my-jenkins .
bash 复制代码
FROM jenkins/jenkins:lts

USER 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-cli

USER jenkins

至此构建一个my-jenkins的镜像,此时只需要将原来的jenkins容器删除,重新运行一下命令

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 `
  my-jenkins

上一篇文章中关于如下命令没有讲是什么,其实就是为了在jenkins中能够使用docker命令。

bash 复制代码
-v /var/run/docker.sock:/var/run/docker.sock `

打开docker desktop->settings->docker engine

配置中添加

bash 复制代码
"hosts": [
    "tcp://0.0.0.0:2375"
  ]

然后重启docker desktop。如果重启失败,控制台先执行如下命令,然后再重启docker desktop

bash 复制代码
wsl --shutdown
相关推荐
寻道模式1 小时前
【运维心得】完整教程:绕过Win11限制让老机焕发新生
运维·操作系统·win11
zzu123zsw1 小时前
从 proxy_pass 末尾斜杠到 WebAssembly 预压缩:深挖 Nginx 生产环境四大高频踩坑点
运维·nginx·wasm·webassembly·devops·运维排错
张洛闻Eren1 小时前
Ansible【第一课】:Ansible介绍
运维·数据库·云原生·kubernetes·github·ansible
郝亚军2 小时前
RK3562 中有 mosquitto、nginx 了,还需要 http,ftp,tftp 等协议吗?
运维·nginx·http
重生之小比特2 小时前
【Linux系统】07 进程状态
linux·运维·服务器
敲代码的彭于晏3 小时前
2026 K8s 零基础入门:手把手教你一步步搭建 Kubernetes 集群
java·运维·全栈
ManageEngine卓豪3 小时前
智能运维如何降低 MTTR:告警聚类、因果分析与自动化修复的工程拆解
运维·智能运维·mttr
wangfenglei1234563 小时前
jenkins权限配置
运维·jenkins
ab1237683 小时前
Docker Compose 完整详解
运维·docker·容器
张洛闻Eren3 小时前
Ansible【第二课】:实施 Ansible Playbook
linux·运维·服务器·云原生·kubernetes·k8s·ansible