最近工作中需要使用docker打包成镜像启动,所以有了这篇文章。
差点忘了,你的maven项目中首先要有配置docker打包

以下是maven项目的配置


1.pom文件中加入plugin

	  <plugin>
	     <groupId>com.spotify</groupId>
	     <artifactId>dockerfile-maven-plugin</artifactId>
	     <version>${dockerfile-maven-plugin.version}</version>
	     <configuration>
	         <imageName>${docker.image.prefix}/${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.在src/main/docker下建立dockerfile文件,内容如下:

FROM openjdk:8-jre

ENV SPRING_OUTPUT_ANSI_ENABLED=ALWAYS \
    JAVA_OPTS=""
    
ADD *.jar app.jar

CMD echo "The application will start " && \
    java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.jar

EXPOSE 8080

上面这段代码意思是,使用jdk8运行环境,对外端口为8080。


以下是怎么使用docker打包

首先你需要有docker -_-||

1.先了解一下save命令。

docker save [OPTIONS] IMAGE [IMAGE…]

OPTIONS说明:

  • -o :输出到的文件。

2.使用maven打包。

mvn package docker:build

这里你将会生成一个项目名:项目版本号,例如:project:0.0.1;

3.使用docker run运行镜像。

①首先使用docker image ls,查看xxx.tar包的镜像名字
②使用docker run -p 8080:8080 imageName 就运行了。

如何将docker镜像保存至指定地址,使用docker save命令。

#保存到用户目录下
docker save -o ~/xxx.tar project:0.0.1
#或者可以使用这条
docker save project:0.0.1>~/xxx.tar

在其他电脑上,使用docker load加载tar包:

docker load -i xxx.tar   或者
docker load<xxx.tar
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐