jenkins + gitea 自动化部署Docker项目(vue + .NET Core)

废话不多说,服务先安装好Jenkins 和 gitea 理论上 gitlab 一样的实现流程

Jenkins 配置:

第一步装插件

安装 Generic Event

安装 gitea 相关插件

创建一个任务

设置 git

根据自己git 的认证填写对应的认证方式

构建环境记得勾选这个,会清理上次构建的文件,不勾选的话后面会越来越多

设置构建shell

填写构建docker的shell脚本()

bash 复制代码
#!/bin/sh
cd /var/lib/jenkins/workspace/docker_demo/DockerDemo
docker container prune << EOF
y
EOF
docker container ls -a | grep "docker_demo"
if [ $? -eq 0 ];then
    docker container stop docker_demo
    docker container rm docker_demo
fi
docker image prune << EOF
y
EOF
docker build -t docker_demo .
docker run -d -p 5000:80 --name=docker_demo docker_demo 

解释一下这个shell 指令,一般只需要将指令中的 docker_demo 改成自己的项目名就行

设置构建触发器

记住这个地址 http://JENKINS_URL/generic-webhook-trigger/invoke把其中的 JENKINS_URL 改为你的Jenkins的地址

Gitea配置:

进入自己的仓库地址 点击设置

添加钩子

选择Gitea

填写上面Jenkins 记住的地址,触发条件按需设置

勾选激活 然后点击测试推送,正常情况下 Jenkins就会开始构建

但是总会有意外,比如返回这个

这里注意两个东西,一个是你如果Jenkins 和 gitea 都是在一台服器 用 docker 安装的 这个 http://JENKINS_URL/generic-webhook-trigger/invoke 中的 JENKINS_URL改成容器IP

第二就是,gitea 默认是没有添加 webhooks 的服务地址的,需要修改 giea挂载目录 /data/gitea/conf/app.ini 配置文件,确保存在如下配置没有则添加

复制代码
[webhook]
ALLOWED_HOST_LIST = 你的Jenkins Ip

修改好后重新更新 web钩子就行在测试一下。到这基本上就完成了,如果需要构建.NET Core或者 vue 项目则需要在Jenkins安装相应的插件,如果在创建.NET Core 项目有添加 Dockerfire文件 就不用装.NET 这个插件了。直接Docker完事

相关推荐
DLYSB_20 小时前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
阿里云云原生21 小时前
可用性从 99.9% 跃升至 99.995%:畅捷通如何用 AI 重塑运维底座?
运维·网络·人工智能
阿童木写作21 小时前
Python实现Temu图片批量翻译自动化教程
运维·人工智能·python·自动化
iori97king1 天前
库存不足自动通知:第一次使用自动化
运维·自动化
@insist1231 天前
信息系统管理工程师-信息系统运维资源、技术与智能运维核心考点解析
运维·软考·信管·软件水平考试·信息系统管理工程师
木子欢儿1 天前
Intel 架构的 MacBook Pro 运行 Linux 发热量高解决
linux·运维·服务器
KKKlucifer1 天前
运营商全域安全运维支撑体系落地实践
运维·安全
EAIReport1 天前
工业电气自动化数据治理破局:多Agent大模型赋能全景智能决策
大数据·运维·自动化
会编程的土豆1 天前
Go 模板初识
linux·运维·服务器
腾讯蓝鲸智云1 天前
标杆客户实践提炼:CFlow 版本价值流模板实战指南
运维·服务器·自动化·云计算·devops