環(huán)境
- 系統(tǒng):mac OS 10.12
- docker:
docker-machine env default
docker env.png - jdk 1.8
- maven 3.0
步驟
1.添加maven的docker構(gòu)建插件
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker.plugin.version}</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
<dockerHost>https://192.168.99.100:2376</dockerHost>
<dockerCertPath>/Users/lovedrose/.docker/machine/machines/default</dockerCertPath>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
簡單說一下configuration里面的標(biāo)簽:
- imageName:鏡像名稱。注意:${docker.image.prefix} 為你在 docker官方倉庫的用戶名,如果你不需要上傳鏡像,隨便填。
- dockerDirectory:Dockerfile位置
- dockerHost:docker容器的主機(jī)(這個在mac機(jī)器上很總要)
- dockerCertPath:客戶端證書(這個在mac機(jī)器上很總要)
2.Dockerfile
在src/main/下創(chuàng)建docker目錄,然后創(chuàng)建Dockerfile,即/src/main/docker/Dockerfile
FROM livingobjects/jre8
VOLUME /tmp
ADD [你的應(yīng)用].jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
3.打包
mvn -e clean package docker:build
4.查看鏡像
docker images

images.png
5.啟動鏡像
docker run -p [PORT]:[TO_PORT] -t [REPOSITORY]
6.停止鏡像
先查看容器中的鏡像:docker ps

container.png
然后
docker stop [CONTAINER ID]
7.刪除鏡像
docker rm [IMAGE ID]
