2021SC@SDUSC
- 集成自动化部署
- Jenkins安装配置
- 安装相关环境
- 启动Jenkins
- 配置Jenkins
- 新建项目
- 配置github hook凭据
- 添加ssh凭据
- 添加tomcat配置
- 项目配置
- 配置apidoc
- 安装apidoc
- 配置nginx
-
运行下面的命令配置Jenkins环境
# 下载添加key wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add - # 添加Jenkins的apt仓库源 sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' # 更新仓库源 sudo apt-get update # 安装jenkins sudo apt-get install jenkins
在国内可能会访问不了上面的镜像源,可以改用清华源
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/debian-stable/jenkins_2.303.2_all.deb sudo dpkg -i jenkins_2.303.2_all.deb
如果安装失败,出现dpkg: dependency problems prevent configuration of jenkins:
依次执行下面的命令
sudo apt-get install --reinstall python sudo apt-get -f install sudo dpkg -i jenkins_2.303.2_all.deb
-
安装 jdk8/jdk11
sudo apt install openjdk-11-jdk
-
安装maven
sudo apt install maven
-
安装git
sudo apt install git
-
安装tomcat,nginx
编辑 /etc/default/jenkins文件,由于8080被占用,要换端口
# port for HTTP connector (default 8080; disable with -1) HTTP_PORT=9090
如果有防火墙,检查9090端口是否打开
sudo systemctl daemon-reload sudo systemctl restart jenkins sudo systemctl status jenkins配置Jenkins
查看/var/lib/jenkins/secrets/initialAdminPassword内部的初始Jenkins密码
访问your_ip:9090或者localhost:9090
进入管理界面
选择推荐的插件,会开启自动下载
等待插件下载完成,接着可选创建账户,或者是管理员账户继续,接着Jenkins url选择默认即可
访问http://localhost:9090/pluginManager/installed管理插件
添加GitHub plugin,Maven Integration plugin,Deploy to container Plugin几款插件
新建项目 配置github hook凭据-
首先生成本地ssh key
ssh-keygen -t rsa -C "your_email@youremail.com"
-
进入github的仓库,创建deploy keys
在Key中填写 cat ~/.ssh/id_rsa.pub的结果,类似下面的字符串
-
访问personal access token生成新的token,赋予repo与admin:repo权限,保存生成的token
-
通过http://localhost:9090/configure进入Jenkins配置管理界面,并找到Github Server
添加凭据,选中secret text, 并在Secret中填入上一步生成的token
-
选中上一步生成的凭据,并测试连接
访问添加凭据的地址
新建ssh private key配置
下面的Private key填写执行cat ~/.ssh/id_rsa的结果
添加tomcat配置在添加挺举的地方选中Username with Password,添加tomcat的用户名密码
项目配置-
选中构建maven项目
-
配置源码管理用于拉取构建代码
-
配置触发器,用于代码更新自动构建
-
配置构建环境
-
构建前先构建文档,或者在Post Steps设置构建完成后构建文档
-
Build一般跳过测试
clean install -D maven.test.skip=true
初始时需要配置maven的位置,shell执行mvn -v即可获得maven_home
访问此网址配置
-
构建后自动部署,war包名字需要与maven配置的一致
如果构建后操作没有Deploy war/ear to a container需要[配置Jenkins必要插件]
# 安装nodejs与npm并更新 sudo apt install nodejs sudo apt install npm # 更新nodejs,这个很重要不然运行不了apidoc sudo npm install n -g sudo n stable # 使用镜像npm,更新list sudo npm config set registry https://registry.npm.taobao.org sudo npm config list # 全局安装apidoc sudo npm install apidoc -g配置nginx
-
找到nginx配置文件目录,一般位于 /etc/nginx/site-enabled/
-
查看default文件,查看站点root根目录的位置
-
跳转到根目录,新建文件夹doc
这个与上面的配置的apidoc的生成目录一致即可
sudo mkdir doc # 确保拥有写入权限 sudo chmod 777 doc/ -R
-
尝试一个push,测试生成结果



