maven springboot 除去指定的jar包_Maven打包docker的jar包镜像

73beca4a2ccf2d746d067f9ced30b198.png

1、在配置文件中配置docker插件

<!--docker 镜像插件-->
<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.2.2</version>
    <configuration>
        <imageName>${project.artifactId}</imageName>
        <dockerDirectory>src/main/docker</dockerDirectory>
        <resources>
            <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>${project.build.finalName}.jar</include>
            </resource>
        </resources>
    </configuration>
</plugin>

2、在需要生成镜像的maven项目的根目录下载创建Dockfile文件(文件不需要后缀)

# Docker image for springboot file run
# VERSION 0.0.1
# Author: test
# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER test <test@163.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD eladmin-system-2.3.jar admin.jar
# 运行jar包
RUN bash -c 'touch /admin.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar",/admin.jar"]

3、使用mvn package dockerfile:build命令构建Docker镜像

mvn package -Dmaven.test.skip=true docker:build

4、保存镜像在本地

docker save -o /admin.tar eladmin-system
  • /admin.tar:保存的文件名称
  • eladmin-system:镜像名称

5、把上面打包好的镜像通过ssh上传到服务器

scp /admin.tar root@ip:/usr/local

6、加载镜像

docker load </usr/local/admin.tar
  • /usr/local/admin.tar:文件名称

7、查询镜像

docker images

8、运行镜像

docker run --name admin -p 8000:8000 -d eladmin-system

9、停止运行的容器

docker ps  --列出容器
docker stop 容器的ID

10、删除镜像

docker rm 容器ID
docker rmi 镜像名称

删除镜像之前记得把运行或者没有运行的容器删除,否则删除失败