Jenkins&gitee持续化集成

2021-02-15 JenkinsvuepressDocker

用到的工具:

  1. 阿里云服务器
  2. docker
    • jenkins
    • nginx
  3. gitee
  4. vuepress

# 一、拉取JenKins 镜像


docker pull jenkins/jenkins:lts

# 1-1.新建JenKins 挂载目录

cd /var

mkdir jenkins_home

# 修改 jenkins_home文件夹权限
chmod -R 777 /var/jenkins_home

# 1-2.启动jenkins容器

# e5599f396096 => 镜像ID

docker run -p 50000:50000 -p 8086:8080 \
-d \
--name web_jenkins \
-v /var/jenkins_home:/var/jenkins_home \
e5599f396096 

# 1-3.获取web_jenkins容器的登录密码

# 切换文件路径
cd /var/jenkins_home/secrets

# 查看初始密码
vim initialAdminPassword

image-20210219095525127

# 1-4.输入用户密码, 登录jenkins控制台

image-20210219095718542

# 1-4-1.更换安装源(换为国内的安装源)

方式1


# 切换路径
cd /var/jenkins_home

# 编辑文件
vim hudson.model.UpdateCenter.xml

# 将 url 的标签内容更改为
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json

方式2

登录jenkins控制台,然后进入 Manage Jenkins -》 Manage Plugin -》 Advanced (系统管理 -》管理插件-》高级) 最下面有 Update Site(升级站点),URL内容更改为https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json,然后submit,check now


# 1-4-2.安装插件

需要安装的插件列表:

  1. Chinese 中文支持
  2. NodeJS Plugin 用于安装nodejs
  3. Gitee Plugin gitee支持
  4. Publish Over SSH 用于推送项目构建完成后文件

​ 1-4-2.重启web_jenkins容器


# docker restart jenkins容器名称
docker restart web_jenkins

​ 配置nodejs版本号( 系统管理 -》 全局工具配置 )

image-20210219161137277


# 1-5.构建一个自由风格的软件项目

image-20210219100044621

# 1-5-1.完善“源码管理”

image-20210219100834244

# 1-5-2.完善“构建触发器”

image-20210219101822697

记录web_jenkins 项目生成的url: http://106.15.195.79:8086/gitee-project/vuepress 用于在Gitee webhook 中回填


image-20210219102147997

​ 登录gitee

image-20210219130736019

image-20210219130853512

image-20210219131407721


# 1-5-3.完善“构建环境”

image-20210219102314171

# 1-5-4.完善“构建”

rm -rf public && 
npm config set registry https://registry.npm.taobao.org &&
npm install &&
npm run build

# cd build &&
# tar -zcvf build.tar.gz *

1-5-5.完善“构建后操作”

image-20210219130517640

​ 因为Jenkinsnginx同在一台机器上,所以在每次构建完成后需重启 部署vuepressnginx容器


# docker restart  部署vuepress的nginx容器名称
docker restart vuepress


# 二、拉取nginx 镜像


docker pull nginx

# 2-1.启动nginx容器

参数解读:

  • vuepress => 容器名称

  • /root/myitem/vuepress/nginx.conf => nginx配置文件

  • /var/jenkins_home/workspace/vuepress/public => jenkins容器自动构建后的文件夹

  • 53f3fd8007f7 => nginx镜像Id


docker run -p 8080:80 \
-d \
--name vuepress \
-v /root/myitem/vuepress/nginx.conf:/etc/nginx/nginx.conf \    
-v /var/jenkins_home/workspace/vuepress/public:/usr/share/nginx/html \ 
53f3fd8007f7 

Last Updated: 4/5/2022, 3:36:34 PM
Powered By Valine
v1.5.2
起风了
宋姿璇