摘要
Docker CE Version:20.10.10
Centos Version:CentOS Linux release 7.9.2009 (Core)
Jenkins Version:2.319.1
# 一:下载镜像
根据Jenkins官网, Docker 安装 (opens new window) 小节,可以看到官方推荐使用的镜像为 jenkinsci/blueocean
,该镜像包含当前的长期支持 (LTS) 的 Jenkins 版本 (可以生产使用) ,并捆绑了所有 Blue Ocean 插件和功能。
如果使用其他 Jenkins 的镜像,其集成的 Jenkins 版本比较高,可能会出现好多插件不兼容的情况
使用 docker pull
命令拉取 jenkinsci\blueocean
docker pull jenkinsci/blueocean
验证本地镜像仓库是否已存在:
# 二:运行容器
现在,基于下载的镜像运行 Jenkins 容器,同时再宿主机创建一个数据卷 jenkins-data
,容器映射该卷以持久化数据
docker run \
-u root \
--rm \
-d \
-p 8080:8080 \
-p 50000:50000 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkinsci/blueocean
2
3
4
5
6
7
8
9
8080
端口用来公开访问 Web 界面,50000
端口允许远程远程 Java(JIRA)API
使用 docker ps
命令验证容器是否已经后台运行:
# 三:配置Jenkins
# 3.1 访问Web
以上如果一切正常,现在就可以通过 http://<ipaddress>:8080
访问 Jenkins 的 Web 界面了。
# 3.2 解锁Jenkins
管理员初始密码被放到了 /var/jenkins_home/secrets/initialAdminPassword
文件中。
因为 Jenkins 部署在 Docker 容器中,因此需要先进入到容器,再去查看对应的文件 initialAdminPassword
内容:
## 进入docker容器
> docker exec -it jenkins-blueocean /bin/bash
## 查看文件记录的密码
> cat /var/jenkins_home/secrets/initialAdminPassword
2
3
4
上面运行截图中的 001a14eb1f39424bbc635f7fce545995
便是需要的管理密码,复制并粘贴到 Web 界面,点击继续即可解锁 Jenkins。
# 3.3 安装插件
Jenkins 可以说完全由插件来驱动的,所以安装一些基础的插件是非要必要的,这里我们选择 安装推荐的插件 ,然后静静地等待插件安装完成即可。
# 3.4 创建用户
根据提示创建一个新的管理员用户,自行填写即可。
# 3.5 实例配置
看看提示,没有问题就点 保存并完成 即可。
至此,Jenkins 初始化配置过程也就完成了。正式开启你的 持续集成&持续部署 之旅吧!
# 四:前端自动部署
# 4.1 安装相关插件
首页,左侧 Manage Jenkins(或系统管理)
选择 Manager Plugins(或插件管理)
再Manager Plugins搜索以下插件 nodejs
、Publish Over SSH
、gitlab
或gitee
进行安装
# 4.2 配置Nodejs
安装完成后配置nodejs,在首页选择 Manage Jenkins(或系统管理)
> global tool Configuration(或全局工具配置)
> NodeJS
选择自动安装和对应的nodejs版本号,选择成功后点击保存。尽可能选择合适的nodejs版本
# 4.3 配置SSH
配置ssh信息,Manage Jenkins(或系统管理)
> configure System(或系统配置)
填写服务器的相关信息。
# 4.4 配置gitee
本次采用Gitee API 令牌方式,所以先要获取Gitee APIV5 私人令牌,点击获取 (opens new window)
配置gitee信息,Manage Jenkins(或系统管理)
> configure System(或系统配置)
填写服务器的相关信息。同时需要把前面获取的Gitee APIV5 私人令牌新增到 Jenkins,点击添加
最后记得点 保存
# 五:新建任务
# 5.1 新建项目
首页,右边选择 新建任务
> 构建一个自由风格的软件项目
# 5.2 源码管理
- 选择
Git
选项 - Repository URL:创建的git项目地址
- Credentials:点击添加一个凭据(注意
Gitee API Token
凭据不可用于源码管理的凭据,只用于gitee
插件的 API 调用凭据) - 指定分支:
master
# 5.3 触发器配置
这里选择配置 push
代码立即触发构建任务,勾选 Gitee webhook触发构建
,后面有个地址这个后面需要配置到Gitee
,Gitee
触发构建策略勾选推送代码,其他先默认就行。记住 URL
后面填写 WebHook
有用。
后面有个 Gitee WebHook密码
栏位需要配置到Gitee,点击生成就会生成一个密码:
打开 Gitee
项目的管理选项卡,左侧有个[WebHooks]菜单 ,点击【添加webHook】,将上面的 URL
和 密钥
填入。
# 5.4 构建环境
修改构建任务的构建环境,勾选 Provide Node & npm bin/ folder to PATH
,默认会选择Jenkins
安装的NodeJS
版本:
# 5.5 构建脚本
- [添加构建步骤] 新增
执行 shell
,进行vue
的安装
和打包
node -v
npm -v
npm install
npm run build
tar -zcvf dist.tar ./dist
2
3
4
5
- [添加构建步骤] 新增
Send files or execute commands over SSH
cd /usr/share/nginx/html/
rm -rf dist
tar -zxvf dist.tar
rm -rf dist.tar
2
3
4