SpringBoot微服务打包Dokcer镜像

六、SpringBoot 微服务打包 Dokcer镜像


步骤

  1. 创建一个springboot项目
  2. 打包应用
  3. 编写dockerfile
  4. 构建镜像
  5. 发布运行

SpringBoot微服务打包Dokcer镜像_第1张图片

SpringBoot微服务打包Dokcer镜像_第2张图片

SpringBoot微服务打包Dokcer镜像_第3张图片

  • Dockerfile文件内容
FROM java:8

COPY *.jar /app.jar

CMD ["--server.port=8080"]

EXPOSE 8080

ENTRYPOINT ["java","-jar","/app.jar"]
  • 将.jar文件和Dockerfile文件上传到Linux虚拟机的/home/idea(手动创建)下

SpringBoot微服务打包Dokcer镜像_第4张图片

[root@vinjcent idea]# ls
Dockerfile  springboot-0.0.1-SNAPSHOT.jar
# 构建镜像
[root@vinjcent idea]# docker build -t div_helloworld .
# 查看镜像
# docker images
REPOSITORY       TAG                IMAGE ID       CREATED         SIZE
div_helloworld   latest             352babd229a3   6 minutes ago   660MB
div_tomcat       latest             cb339a54a2c5   18 hours ago    1.02GB
tomcat           latest             52b67ab29b74   6 days ago      680MB
centos           7                  eeb6ee3f44bd   9 months ago    204MB
redis            5.0.9-alpine3.11   3661c84ee9d0   2 years ago     29.8MB
java             8                  d23bdf5b1b1b   5 years ago     643MB
# 执行容器
[root@vinjcent idea]# docker run -d -P --name div_helloworld_web div_helloworld
# 查看正在运行的容器
[root@vinjcent idea]# docker ps
CONTAINER ID   IMAGE            COMMAND                  CREATED         STATUS         PORTS                                         NAMES
86ed1e1e1f32   div_helloworld   "java -jar /app.jar …"   4 seconds ago   Up 3 seconds   0.0.0.0:49153->8080/tcp, :::49153->8080/tcp   div_helloworld_web
# 访问该端口服务
[root@vinjcent idea]# curl locahost:49153

SpringBoot微服务打包Dokcer镜像_第5张图片

SpringBoot微服务打包Dokcer镜像_第6张图片

你可能感兴趣的:(Docker,spring,boot,微服务,java)