前言:
docker设置里面这个设置一定要打开:
1.创建一个springboot项目:
2.在pom文件下插入以下代码使得springboot支持docker
<docker.image.prefix>ramer</docker.image.prefix>
3.在plugins标签下插入:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.13</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>
使得在命令行可以用docker build
ps:如果上面的plugin导入不成功的话可以插入以下代码到pom文件中去:
<repositories>
<!--阿里云仓库-->
<repository>
<id>aliyun</id>
<name>aliyun-maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://maven.aliyun.com/repository/spring</url>
</repository>
<repository>
<id>central</id>
<name>maven-central</name>
<url>http://central.maven.org/maven2/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>public</id>
<name>aliyun nexus</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
4.用maven package 打包springboot:
找到打包好的jar包复制他的名字:等下要用到
5.编写dockerfile文件:
dockerfile的文件用于构建docker镜像的时候使用:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD springboot_docker-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
这个地方填写自己刚刚复制文件名称
注意docker文件没有后缀,而且必须放在指定的文件夹中:
(pom文件中已近写好)
6.构建docker镜像:
因为在pom文件中我们导入了docker的支持,所以我们可以直接在idea中的命令行build docker镜像:
输入:mvn package docker:build
等镜像build完成:
7.最后我们打开命令行查看我们刚刚build好的镜像:
成功.
8.创建docker容器运行镜像:
docker run -p 8080:8080 -t ramer/springboot_docker
9.访问
http://localhost:8080/docker
出现hello,docker即表示成功。
该容器正在运行