天天看点

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

在Linux(CentOS 7)服务器上安装git常用命令

删除git:

yum remove git
           

检查git是否安装:

git --version
           

如果没有安装,安装git:

yum -y install git
           

安装git,检查是否安装成功:

git --version
           
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

配置git SSH:

  1. 配置git的user name和email
git config --global user.name "gogogmz" 
git config --global user.email "[email protected]"
           
  1. 生成ssh
ssh
ssh-keygen
           
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

3. 配置git 的ssh key

登录github ->settings->SSH公钥:

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

输入之前键入的保存有公钥的文件夹,查看公钥,并复制粘贴到添加公钥界面:

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

输入密码,即可添加成功。

Linux安装Jenkins(可不用,这里我们使用半自动化部署方式)

docker pull jenkins
           

安装JDK

先检查是否安装JDK:

java -version
           

创建目录

/usr/java

,将下载好的

jdk-8u231-linux-x64.rpm

(比使用压缩包更简单)通过xftp软件传输到目录

/usr/java

下:

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

使用编译过的包安装java环境:

rpm -ivh jdk-8u231-linux-x64.rpm 
           
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

检查java环境是否安装好:

java
或
javac
           

出现以下内容,java环境安装成功。

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

安装maven(前提:先安装好java环境-JDK)

下载maven安装包,并将安装包放在目录

/home/maven

下,解压缩压缩包:

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
unzip apache-maven-3.6.1-bin.zip
           
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

配置maven环境变量,编辑文件:

/etc/profile

vi /etc/profile
           

在文件

/etc/profile

最下面添加以下内容:(MAVEN_HOME是刚才解压maven的路径)

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

运行以下命令,刷新环境变量:

source /etc/profile
           

检查maven是否安装好:

mvn -v
           

如果出现以下提示:可能是安装的java环境不对(似乎安装openjdk可能会出现这个错误),或者没有安装java环境,参考见以上步骤。

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

如果安装成功,显示如下:

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

Linux+git实现从码云pull项目最新代码

有时候可能会用到

Linux查看隐藏文件命令:ls -al

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
  1. 创建一个文件夹

    /home/image-dataset-builder

    作为Git仓库,并使用命令

    git init

    初始化,可以使用命令

    ls -al

    ,查看是否生成

    .git

    文件:
    【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目
  2. 为了方便,我们使用ssh方式,clone最新代码(也可以使用https方式):
git clone [email protected]:youyizuizhen/image-dataset-builder.git
           
【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

3. 更新最新代码

git pull origin master
           

参考:https://blog.csdn.net/u010029439/article/details/79629286

添加链接描述

springboot 项目中写脚本和Dockerfile,便于修改

【Linux(CentOS 7 )+git+maven+springboot】安装+实现自动化部署项目

Dockerfile示例:

FROM  openjdk:8-jdk-alpine
MAINTAINER  gmz [email protected]
ADD  ./target/img-dataset-builder-0.0.1-SNAPSHOT.jar  /home/images_dataset/
CMD  ["java", "-Xmx200m", "-jar", "/home/images_dataset/img-dataset-builder-0.0.1-SNAPSHOT.jar","--spring.profiles.active=prod"]
EXPOSE  8080
           

devops.sh脚本示例:

#从代码库拉取最新代码
#脚本前提:
#1.已经使用git clone 拉取项目到本地1
#2.默认安装了maven环境,且已经配置了环境变量
#3.默认安装了docker环境
#4.默认完成了Dockerfile(随包附送样例)

#从远程代码库拉取代码,请根据实际情况,替换下面的分支{origin newBranch}
git pull origin master

#将项目带包
mvn clean package -Dmaven.test.skip=true

#停止上个版本的容器,{devops}根据自己的容器名字替换
docker stop image_dataset_api

#去除该容器,{devops}根据自己的容器名字替换
docker rm image_dataset_api

#清除上个版本的镜像,{mason/devops}根据自己的镜像名替换
docker rmi img:dataset

#将项目新版本做成docker镜像,{mason/devops}根据自己的镜像名替换
docker build -t img:dataset .

#运行该镜像,生成容器。也可以考虑使用创建子网,在使用内网Ip的时候请提前创建内网网段 

docker run  -d --name image_dataset_api -v /home/imageFile:/home/imageFile -v /home/image_zip:/home/image_zip -v /home/static:/home/static -p 8080:8080 -p 443:443 img:dataset

           

在服务器中使用

git pull origin master

更新最新代码,在项目的根目录下,给脚本文件devops.sh执行权限:

chmod 777 devops.sh

,然后输入命令

./devops.sh

即可运行脚本(执行脚本中的命令,创建镜像容器等操作,可实现脚本自动部署springboot项目)。