拉取测试Demo

  1. $ cd /path/to/working/directory
  2. $ git clone https://github.com/spring-projects/spring-petclinic.git
  3. $ cd spring-petclinic
  4. $ ./mvnw spring-boot:run

创建 .dockerignore file

🚀 官方文档
🚀 .dockerignore 文件的作用
可以有效减小镜像体积, 去除无用的文件

构建Dockerfile📎

# syntax=docker/dockerfile:1

FROM openjdk:16-alpine3.13

WORKDIR /app

COPY .mvn/ .mvn
COPY mvnw pom.xml ./
RUN ./mvnw dependency:go-offline

COPY src ./src

CMD ["./mvnw", "spring-boot:run"]

# syntax=docker/dockerfile:1 语法解析器指令,可选项,最好加上
FROM openjdk:16-alpine3.13 告诉Docker构建这个项目的基本镜像
WORKDIR /app 设置一个相对路径

dependency:go-offline官方文档 tells Maven to resolve everything this project is dependent on (dependencies, plugins, reports) in preparation for going offline.

构建镜像

$ docker build -t java-docker .

Build

🚀 docker build命令后 . 号的意思