gitee+jenkins一键部署代码并推送本地harbor仓库
此文章是简答描述了代码CI/CD自动化流程部署的方式方法,比较适用于测试环境,我们自己项目的生产环境是不放Jenkins的,因为Jenkins本身链接互联网,一堆的漏洞,这个Jenkins的环境是我自己在centos7的系统上搭建的,大家可坐下参考,如果想了解jenkins的部署,可以点击我的头像,参考jenkins部署的文章。我在本地的虚拟机上部署了Jenkins,用的8080端口,建议大家在正
此文章是简答描述了代码CI/CD自动化流程部署的方式方法,比较适用于测试环境,我们自己项目的生产环境是不放Jenkins的,因为Jenkins本身链接互联网,一堆的漏洞,这个Jenkins的环境是我自己在centos7的系统上搭建的,大家可坐下参考,如果想了解jenkins的部署,可以点击我的头像,参考jenkins部署的文章。
如下准备:
gitee
在线注册了个账号,并把代码库设置为私有,如果大家用的是gitlab,用法也是一样的。/

我在本地创建了ceshi的目录,并提前准备好了一份游戏的代码bird(代码来源于老男孩)
并根据gitee提示命令,对目录进行了git init的初始化,并推送到了gitee上
jenkins
我在本地的虚拟机上部署了Jenkins,用的8080端口,建议大家在正式使用的时候,用本地机器进行不部署,尽量别用docker部署,因为本地部署后期维护起来相对方便些。
本地部署的jenkins版本是2.492.3

harbor仓库
在本地部署了私有化harbor仓库,我本地部署的账号为admin,密码为1
把链接加上面gitee的账号密码加下面



本地写了Dockerfile以及本地脚本build.sh
Dockerfile文件,当开发把代码推送到gitee后,我提前设置了jenkins任务,把代码同步到jenkins和本地一份,如果大家有需要可以设置钩子(代码在gitee更新后,自动拉取到jenkins和本地)
[root@k8s237 ceshi]# cat Dockerfile
FROM harbor.oldboyedu.com/web/nginx:1.20.1-alpine
LABEL school=oldboyedu \
class=linux85 \
auther=JasonYinADD . /usr/share/nginx/html
COPY config/bird.conf /etc/nginx/nginx.conf
build.sh脚本
[root@k8s237 ceshi]# cat build.sh
#!/bin/bash
VERSION=$1docker login -u admin -p 1 harbor.oldboyedu.com
docker build -t harbor.oldboyedu.com/project/bird:v0.${VERSION:-1} .
docker push harbor.oldboyedu.com/project/bird:v0.${VERSION:-1}
docker logout harbor.oldboyedu.com
这样用jenkins的任务直接调用 build.sh 的脚本就可以了。别忘记给Jenkins在本地的权限,因为安装Jenkins后默认权限不是root
方法 A:将 Jenkins 用户加入 docker 组(推荐)
# 查看 docker.sock 的权限 ls -l /var/run/docker.sock # 将 jenkins 用户加入 docker 组 sudo usermod -aG docker jenkins # 重启 Jenkins 服务 sudo systemctl restart jenkins
查看控制台输出
查看harbor仓库是不是已经上传了新的镜像。
更多推荐




所有评论(0)