版权声明:本文为博主原创文章,博客地址:http://blog.csdn.net/qq_38824137,未经博主允许不得转载。 https://blog.csdn.net/qq_38824137/article/details/89359053
Docker for windows安装链接:https://oomake.com/download/docker-windows
1.构建Spring Boot项目
创建一个 DockerController,在其中有一个index()
方法,访问时返回:Hello Docker!
package com.docker.hellodocker.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class DockerController {
@RequestMapping("/")
public String index() {
return "Hello Docker!";
}
}
pom文件无添加特殊依赖。
2.打jar包并创建Dockerfile文件
利用maven package命令生成jar包,如图
在target目录下创建Dockerfile文件,内容如下
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD hellodocker-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
- FROM ,表示使用 Jdk8 环境 为基础镜像,如果镜像不是本地的会从 DockerHub 进行下载
- VOLUME ,VOLUME 指向了一个
/tmp
的目录,由于 Spring Boot 使用内置的Tomcat容器,Tomcat 默认使用/tmp
作为工作目录。这个命令的效果是:在宿主机的/var/lib/docker
目录下创建一个临时文件并把它链接到容器中的/tmp
目录 - ADD ,拷贝文件并且重命名
- ENTRYPOINT ,格式:ENTRYPOINT ["","",""]
配置容器启动后执行的命令,并且不可被 docker run 提供的参数覆盖。(每个 Dockerfile 中只能有一个 ENTRYPOINT ,当指定多个时,只有最后一个起效)
详细dockerfile命令介绍:http://www.cnblogs.com/niloay/p/6261784.html
3.制作docker镜像,并运行。
打开cmd控制台,进入到Dockerfile文件所在目录,即target目录,打开cmd控制台,执行docker images
执行docker build -t demo .(注意命令后面的点)
运行镜像程序 docker run -p 8081:8081 demo
打开浏览器访问