github与jenkins相结合实现push代码后自动部署
首先在settings里面设置
jenkins-token 记得设置勾选
至此github设置完成
jenkins
credentials:选择私钥复制进去,github上放置公钥
将之前的github上面的jenkins-token复制进来
将服务器上面的ssh配置免密登录,然后把打包的文件放在nginx目录下面
配置的时候有个地方可以输入登录密码或者私钥勾选的,随后就可以test测试下,方便下面使用
将之前全局配置的ssh服务器免密登录
重启nginx
最新的jenkins可能不太一样,昨晚又升级了一版
jenkins 2.328升级
docker exec -it -u root 镜像id /bin/bash
cd /usr/share/jenkins 发现了jenkins.war包
cp jenkins.war jenkins.war.old.bak
mkdir other-version-jenkins
cd other-version-jenkins/
//先更新一波
apt update
//vim
apt install vim
//wget
apt install wget
//yum
apt install yum
//ifconfig
apt install net-tools
//ping
apt install iputils-ping
wget http://updates.jenkins.io/download/war/2.389/jenkins.war
docker stop 镜像ID
rm -rf jenkins.war
cd other-version-jenkins
mv jenkins.war ../
apt install sudo
sudo docker restart jenkins
最后我配置build params 方式构建
shell脚本如下
case $deploy_environment in
deploy)
echo "Status:$deploy_environment"
echo "部署开始"
npm install
npm run client:prod
cd dist
tar czvf source.tar *
;;
rollback)
echo "Status:$deploy_environment"
echo "回滚开始"
;;
*)
exit
;;
esac