制作一个简单的Docker 镜像

  1. 准备好一个可执行的jar包:hello-service-1.0-SNAPSHOT-jar-with-dependencies.jar(一个spring boot web服务,端口8080)。
root@localhost /h/t/d/hello_service# ls
Dockerfile  hello-service-1.0-SNAPSHOT-jar-with-dependencies.jar

这个jar是基于jdk17的,直接使用java -jar xxx.jar执行会报错。


image.png
  1. 在同目录下生成Dockerfile文件
# 依赖的父镜像,需要jdk17
FROM openjdk:17.0.2-oracle

# 复制当前目录文件到docker容器目录
COPY hello-service-1.0-SNAPSHOT-jar-with-dependencies.jar /hello/hello-service-1.0-SNAPSHOT-jar-with-dependencies.jar
# 暴露端口
EXPOSE 8080
# docker run时执行的命令
ENTRYPOINT ["java", "-jar", "/hello/hello-service-1.0-SNAPSHOT-jar-with-dependencies.jar"]

FROM 指定的镜像可以去dockerhub查询

image.png

  1. docker build --tag hello .生成镜像

    image.png

  2. docker run -p 8080:8080 hello & 后台运行docker容器,将容器的8080端口映射到服务器的8080端口
    docker ps 查看运行中容器,可以发现已经启动成功。

    image.png

  3. 浏览器访问,服务已启动


    image.png

一直惧怕docker这些新技术新概念,动手尝试一下也不是很难。毕竟工具就是屏蔽复杂细节,提高生产效率。不容易使用的话是工具制作者的问题(或者专业程度深的工具)。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容