Jenkins持续集成1
virsh start vm3
ssh root@172.25.0.3
lftp 172.25.0.250
cd pub/docs/
cd jekins/
ls
get jenkins-2.338-1.1.noarch.rpm
yum search java
yum install java-1.8.0-openjdk.x86_64 -y #先装jdk
rpm -ivh jenkins-2.338-1.1.noarch.rpm
systemctl start jenkins #要确保虚拟机可以联网
如果出现了问题,使用journalctl -xe
systemctl status jenkins.service
netstat -antlp
访问:172.25.0.3:8080便会出现界面
cd /var/lib/jenkins/
cat hudson.model.UpdateCenter.xml #默认的插件更新中心
/etc/init.d/jenkins start #脚本启动
cat /etc/log/messages
如果比较慢,
使用第一条链路,查看那个站点的速度对你来说比较快。选择比较稳定的
把连接同步到
cd /var/lib/jenkins/
ls
vim hudson.model.UpdateCenter.xml
在走连接的时候是需要证书的。上面ppt中有,然后重启jenkins,然后会在jenkins目录中生成update
cd update/
其中的default.json就是上图的内容
du -h default.json
使用以下文件里的密码。
安装社区推荐的,直接使用admin
启用中文插件,然后重新进入
在设置里面,修改密码
实验测试
Gitlab和jenkins做整合
将gitlab的项目代码拉到jenkins
因为使用git的方式拉取的,所以要在节点上安装git
安装之后,会出现
添加证书
server3
ssh-keygen
cd .ssh/
cat id_rsa.pub #server3的公钥
将server3的公钥上传到gitlab上
cat id_rsa #私钥
将私钥上传到里面,如果创建秘钥时有通行码的话,在passphrase中填,如果没有则不填
描述:gitlab sshkey
查看其中的主分支名称
然后保存
控制台输出
在管理插件,选择可选插件,查询gitlab相关的
然后直接安装
点击高级,生成密码
保存生效
如果出错了
保存修改
保存之后,push一下
server2
cd project1/
ls
vim Dockerfile
git add Dockerfile
git commit -m "add Dockerfile"
git push -uf prigin main
只是将git的代码触发了,交给jenkins
生产环境中,
把写好的代码封装到镜像里,通过编写Dockerfile 提交,构建任务通过jenkins自动完成。
目前的实验是,用户将git代码上传到gitlab中,触发jenkins的webhook,通知jenkins,再由jenkins构建
Jenkins构建:
通过dockerfile构建镜像,并把这个镜像上传到仓库
jenkens做构建
进入之前建的项目中,点击配置
找到插件管理
通过dockerfile构建镜像,并且将镜像上传到仓库
需要以上插件,点击安装
如果此时空间不够了,在server3上装个docker
server1
cd harbor/
docker-compose ps
docker-compose start
server3
cd /etc/yum.repos.d/
vim docker.repo
yum install -y docker-ce
server1
cd /etc/sysctl.d/
ls
scp docker.conf server3:/etc/sysctl.d/
server3
sysctl --system
systemctl start docker
docker info
cd
cd /etc/docker/
ls
vim /etc/hosts
172.25.0.3 server1 reg.westos.org #解析
server1
cd /etc/docker/
ls
scp -r certs.d/ server3:/etc/docker/
scp daemon.json server3:/etc/docker/ #设置的阿里云的专属加速器
server3
systemctl restart docker
ll /var/run/docker.sock
id jenkins
chmod 777 /var/run/docker.sock #让Jenkins用户可以访问这个docker引擎
unix://表示本机
测试
手动触发
点击进去,查看控制台
数据在
server3
cd /var/lib/jenkins/workspace/
cd test
ls
cat index.html
cat Dockerfile
通过jenkins交付
在没有测试成功之前,不给签名
做测试
这个项目中不需要git,因为这个项目是为了跑docker的
为什么要删除镜像,因为如果镜像已经是最新的,就不会在仓库中拉取镜像,还是会使用本机的。
server3
curl localhost
思路:
用户 git push到 gitlab 触发jenkins,jenkins构建和Push镜像到harbor仓库, 第二个项目是第一个项目稳定创建之后才会触发,然后会触发第二个项目,开始执行第二个项目。
可能还需要解决一个问题:如果构建项目过多,那样会影响平台的正常运作,所以会把这些操作分不到不同节点上去操作,
怎么交付到远端主机上
server4
cim daemon.json
在配置中
删除server3上的容器
docker ps
docker rm -f webserver
server4
docker ps
server2
cd project1/
ls
vim index.html
git commit -a -m "updata v3"
git push -uf origin main
可以把jenkins和k8s整合和云端整合
Jenkins持续集成1相关推荐
- 使用Jenkins持续集成Vue项目配置Sonar任务
title: 使用Jenkins持续集成Vue项目配置Sonar任务 tags: jenkins Vue.js Sonar categories: ci date: 2017-12-05 22:09: ...
- Jenkins持续集成学习-Windows环境进行.Net开发4
目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...
- 半天搭建你的Jenkins持续集成与自动化部署系统
前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由 ...
- centos下搭建Jenkins持续集成环境(安装jenkins)
centos下搭建Jenkins持续集成环境(安装jenkins) 1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这 ...
- Docker+Jenkins持续集成环境(2)使用docker+jenkins构建nodejs前端项目
Docker+Jenkins持续集成环境(2)使用docker+jenkins构建nodejs前端项目 前文使用Docker搭建Jenkins+Docker持续集成环境我们已经搭建了基于docker+ ...
- Jenkins持续集成环境, 如何自定义 maven repositories
假设自定义的仓库路径为"/opt/repository",那么在"系统管理-系统设置"中,修改"全局MAVEN_OPTS"的值为如下的内容: ...
- 超详细的jenkins持续集成工作原理、功能、部署方式等介绍
文章由LinuxBoy分享于2019-08-30 11:08:39 超详细的jenkins持续集成工作原理.功能.部署方式等介绍 1. 概念 jenkins是一个开源项目,提供了一种易于使用的持续集成 ...
- Gitlab+jenkins持续集成+自动化部署(三)
搭建gitlab+Jenkins自动化部署 在jenkins上安装插件 Build Authorization Token Root Plugin. Build Authorization Token ...
- 【测试开发】的Devops持续集成部署体系之Jenkins持续集成和持续部署基础应用
目录 [一]:Jenkins 持续集成安装及使用简介 一.前言 二.初始化 Jenkins 插件和管理员用户 2.1 进入如下页面,输入上面出现的口令 2.2 进入选择安装插件的页面后,可以选择安装社 ...
- Jenkins持续集成入门到精通
Jenkins持续集成入门到精通 文章目录 Jenkins持续集成入门到精通 1. 持续集成及Jenkins介绍 1.1 软件开发生命周期 1.2 软件开发瀑布模型 1.3 软件的敏捷开发 1.3.1 ...
最新文章
- Notification和Notification Manager的使用
- delete []实现机制
- BZOJ2843:极地旅行社
- 运维人员日常工作(转自老男孩)
- webuploader插件使用分析
- CMYK、RGB颜色对照表
- 操作系统课程设计(页面置换算法 C语言)
- JS动态添加Html
- ln: creating hard link 问题
- 去除input默认的加减号
- 热敏打印机数据截取+追加打印二维码
- 2021年国庆节假期三亚游客离岛免税购物热情高涨、偏爱高端酒店与景点新玩法...
- 人脸脸部识别技术_面部识别技术的危险后果
- 简述与机器学习相关的十大常用Python库,极简化算法编程
- 【Android开发】用户界面布局
- python绘制线段_绘制线条点图
- git/svn reset/revert 回滚到服务器上的某一个版本
- BUCK电源芯片中自举电容的说明
- 群晖rsync同步详解_FreeNas中使用rsync同步文件
- 在LINUX下玩小游戏
热门文章
- MATLAB读取文件夹下所有文件的文件名
- 初识OpenGL (2)编译着色器
- Swift5 语法学习
- Oracle APEX 系列文章8:如何从 APEX 5.1.4 升级到最新的 APEX 18.1
- window中文输入英文符号
- 1 用Matlab 程序对AM调制,基于matlab的AM调制系统的仿真
- matlab有shapely包吗,python binary lib on win/各种python库的二进制包
- 摘录马云对996的看法的原话以及一点自己的想法
- GSview5.0安装步骤及问题
- 为什么说在Android中请求权限从来都不是一件简单的事情?