天天看点

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

Docker+Jenkins搭建SpringBoot自动化部署

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

jenkins

一、liunx安装Docker

1.yum包更新到最新

sudo yum update

2.安装需要的软件包

sudo yum install -y yum-utils device-mapper-persisten-data lvm2

3.设置yum源为阿里云

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4.安装docker

sudo yum install docker-ce

5.安装后查看docker版本

docker -v

6.设置开机启动

systemctl enable docker

二、使用Docker安装Jenkins

1.搜索jenkins镜像

docker search jenkins

结果:

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

docker搜索jenkins

这里使用的是第二个镜像(因为第一个镜像的docker版本较低)

2.拉取镜像

docker pull jenkins/jenkins

3.创建文件夹

mkdir /home/jenkins

4.查看文件权限,给uid为1000的权限

ls -nd jenkins/

chown -R 1000:1000 jenkins/

5.创建并启动容器

docker run -itd -p 9090:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/jenkins:/var/jenkins_home jenkins/jenkins:latest

6.之后浏览器输入 http://你的ip地址:9090

进入之后需要输入密码,在命令行使用如下命令获取密码

cat /home/jenkins/secrets/initialAdminPassword 查看密码

之后会进入jenkins安装插件页面,

这里选择安装推荐插件就可以了;

接下来就是进入jenkins首页,这里使用前需要配置一些基础的maven和jgit

(因为服务器已经安装jdk,这里不需再配置;配置git是为了从git拉取最新代码,配置maven是进行项目的打包;如果这里没有git和maven,需要进入插件管理下载后重启即可)

(如果安装失败,查看失败原因并根据原因安装其他插件先)

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

添加插件

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

搜索安装插件

7.进入系统设置,设置项目部署的服务器SSH

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

系统设置1

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

系统设置2

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

系统设置3

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

三、部署SpringBoot项目

1.新建任务

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

创建jenkins任务1

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

创建jenkins任务2

2.配置参数

添加ssh server

填写以下内容

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数1

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数2(配置git)

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数3(打印构建日志)

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数4(maven操作)

(这里是maven的打包操作,clean package -Dmaven.test.skip=true -Ptest 意思是删除旧包,并且忽略test打新包,拉取的代码会在服务器的/home/jenkins/workspace/springboot01中)

新建一个任务这里会多一个文件夹,打完的jar包会在target目录中

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

任务目录

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数4(SSH)

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

配置参数5(SSH Server)

脚本内容:

DATE=$(date +%Y%m%d)export JAVA_HOME PATH CLASSPATHJAVA_HOME=/usr/jdk1.8.0_201PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATHDIR=/javapro/springbootJARFILE=01-springboot-web-0.0.1-SNAPSHOT.jarif [ ! -d $DIR/backup ];thenmkdir -p $DIR/backupficd $DIRps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9mv $JARFILE backup/$JARFILE$DATEmv -f /home/jenkins/workspace/springboot01/target/$JARFILE /javapro/springboot/$JARFILEjava -jar $JARFILE > out.log &if [ $? = 0 ];thensleep 30tail -n 50 out.logficd backup/ls -lt|awk 'NR>5{print $NF}'|xargs rm -rf
           

脚本的操作就是,将旧包备份、杀掉项目运行的进程、将新打的包移动到项目目录、运行新包

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

脚本

配置结束,应用保存退出

3.点击立即构建

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

构建项目

查看构建日志:

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

查看构建日志1

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

查看构建日志2

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

查看构建日志3

、后续操作

部署成功后,git更新代码后只需要在jenkins点击构建,即可完成新代码的部署。

注意:一些常见的构建失败的问题

一:问题1:运行脚本没有权限:

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

运行脚本没有权限

解决方案:执行授权

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

给脚本授权

二、问题2

Maven JVM terminated unexpectedly with exit code 137

docker拉取镜像失败_Docker+Jenkins搭建SpringBoot自动化部署

Maven JVM terminated unexpectedly with exit code 1

原因:服务器内存不足

解决方案:停止一些进程,或服务器提升内存

继续阅读