1. 程式人生 > >SpringBoot基礎篇(十):maven-surefire-plugin外掛部署

SpringBoot基礎篇(十):maven-surefire-plugin外掛部署

1、私有映象倉庫搭建

【搭建私有倉庫】

#拉去私有進行倉庫
[[email protected] ~]#docker pull registry
#建立私有倉庫目錄
[[email protected] ~]# mkdir /opt/registry
#啟動私有映象倉庫
[[email protected] ~]# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name=registry registry
#檢查是否ok
[[email protected] ~]# docker ps |grep registry

【配置授信倉庫地址】

#配置授信倉庫地址
[[email protected] ~]# vim /etc/docker/daemon.json 
{
"registry-mirrors":["https://registry.docker-cn.com"],
"insecure-registries":["http://192.168.2.10:5000"]
}
#記住必須重啟
[[email protected] ~]#systemctl restart docker

【Maven外掛的配置】

#修改宿主機的docker配置,讓其可以遠端訪問
[[email protected]
~]#vim /lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

 

 

2、構建jdk1.8映象

確保jdk安裝檔案與Dockerfile檔案在相同目錄

[[email protected] jdk]# pwd
/opt/docker/jdk
[[email protected] jdk]# ll
total 187264
-rw-r--r-- 1 root root       389 Dec 17 13:45 Dockerfile
-rw-r--r-- 1 root root 191753373 Dec  6 16:36 jdk-8u191-linux-x64.gz

【Dockerfile檔案內容】 

[[email protected] jdk]# cat Dockerfile 
FROM centos:7
MAINTAINER KEFEI
#切換工作目錄
WORKDIR /usr
RUN mkdir /usr/local/java
#ADD 是相對路徑jar,把java新增到容器中
ADD jdk-8u191-linux-x64.gz /usr/local/java
#JAva環境變數
ENV JAVA_HOME /usr/local/java/jdk1.8.0_191
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

【執行構建命令】 

[[email protected] jdk]# docker build -t=jdk1.8 -f Dockerfile .

【檢查jdk1.8映象】 

#重啟registry
[[email protected] jdk]# docker start registry
registry
#打映象標籤
[[email protected] jdk]# docker tag jdk1.8 192.168.2.10:5000/jdk1.8 
#上傳到私有映象
[[email protected] jdk]# docker push 192.168.2.10:5000/jdk1.8
[[email protected] jdk]# docker images |grep jdk1.8

3、配置pom檔案

在工程的pom檔案配置如下資訊

 <!-- docker的maven外掛,官網:https://github.com/spotify/docker-maven-plugin-->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.1.0</version>
                <configuration>
                    <imageName>192.168.2.10:5000/${project.artifactId}:${project.version}</imageName>
                    <!--docker伺服器確保有jdk1.8這個映象 -->
                    <baseImage>jdk1.8</baseImage>
                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                    <dockerHost>http://192.168.2.10:2375</dockerHost>
                </configuration>
            </plugin>

 

4、執行部署

在IDEA編輯器中輸入命令clean package docker:build -DpushImage

【執行結果】

5、docker伺服器上執行部署

 

#檢視打包上來的映象是否存在
[[email protected] ~k]#docker images
#執行上傳的映象
[[email protected] jdk]# docker run  -d --name=yw -p 8082:8082 192.168.2.10:5000/yw:1.0-SNAPSHOT