Docker如何将jar包装为Image并运行

 更新时间:2026年04月20日 09:17:50   作者:PH = 7  
本文给大家介绍Docker如何将jar包装为Image并运行,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

参考资料:

参考课程:https://ke.gupaoedu.cn/play/288/5/37604?phaseId=6

准备材料:

1. 可运行且可访问的jar包

@Controller
public class DockerController {
    @PostMapping("helloWorld")
    public ResponseEntity<String> helloWorld(){
        System.out.println("=====>helloWorld<=====");
        return new ResponseEntity<>("helloWorld",HttpStatus.OK);
    }
}

2. Docker环境

原理介绍

基于docker文件的分层(layer)概念

DockerFile可以通过程序,将很多层变成一个image

DockerFile 有自己的语法,可以参考docker-library中的文件,结合AI帮助来写

将Jar包打包为Image:

1. 执行如下命令,将项目打包成jar包

mvn clean package

2. 创建文件夹并上传文件

        在linux服务器创建文件夹,并将打包好的jar包上传至文件夹中,比如 docker_helloWorld

mkdir docker_helloWorld

3. 创建dockerfile 编辑

        使用命令,在文件夹中,创建Dockerfile,并编辑

vi Dockerfile

 然后将下面内容粘贴进去(具体内容可以用AI进行解释)

FROM openjdk:8 
MAINTAINER peter2026 
LABEL name="dockerfile-demo" version="1.0" author="peter2026" 
COPY docker-hello-world-0.0.1-SNAPSHOT.jar dockerfile-image.jar 
CMD ["java","-jar","dockerfile-image.jar"]

4. 构建镜像

        如果使用默认的dockerHub来获取openJDK的话,可能需要做一些代理或者加速服务,参考B站

        如果还是不行的话,可以先把from语句的镜像拉取到本地,然后再构建

docker pull cf-workers-docker-io-6es.pages.dev/openjdk:8u102-jdk

        执行如下语句进行构建(注意后面的一点,表示当前目录)

docker build -t my-docker-image .

        然后执行docker images 就可以看到构建好的镜像

5. 运行镜像

        将构建好的镜像运行,执行下面命令

docker run -d --name my_container_01 -p 6666:8080 my-docker-image

        上面是将container的8080端口映射到了Linux虚拟机的6666端口

        执行下面命令查看运行的容器

docker ps

6. 访问运行的jar包

        查看docker所在系统的IP

ip a

        然后用PostMan进行访问即可,比如

192.168.124.128:6666/helloWorld

到此这篇关于Docker如何将jar包装为Image并运行的文章就介绍到这了,更多相关docker jar包装为Image内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker搭建LibreSpeed的实现步骤

    Docker搭建LibreSpeed的实现步骤

    LibreSpeed 是一个轻量级的网络速度测试工具,本文主要介绍了Docker搭建LibreSpeed的实现步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • Docker容器时间与宿主机不一致的解决方案

    Docker容器时间与宿主机不一致的解决方案

    在日常开发和运维工作中,许多开发者在使用 Docker 时会遇到一个常见问题:容器内的时间比宿主机慢了 8 小时,这种情况尤其在中国地区(使用东八区时间)更为常见,本文给大家介绍了Docker容器时间与宿主机不一致的三种解决方案,需要的朋友可以参考下
    2025-05-05
  • docker在windows创建卷后本地找不到的完美解决方法

    docker在windows创建卷后本地找不到的完美解决方法

    这篇文章主要介绍了docker在windows创建卷后本地找不到的完美解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-02-02
  • Docker部署Nacos单机版全过程

    Docker部署Nacos单机版全过程

    本文介绍了Nacos与MCP结合解决分布式系统配置管理及工具调用碎片化问题的方案,详细描述了Nacos和MCP的功能、安装步骤及集群部署方法
    2025-10-10
  • Docker部署用Python编写的Web应用的实践

    Docker部署用Python编写的Web应用的实践

    本文主要介绍了Docker部署用Python编写的Web应用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • Docker 部署宝塔面板 Nginx 反向代理 502 踩坑实战指南

    Docker 部署宝塔面板 Nginx 反向代理 502 踩坑实战指南

    该文主要讨论了使用Docker部署宝塔面板时遇到的Nginx反向代理问题,错误在于将127.0.0.1作为宿主机端口,导致容器找不到服务;正确的做法是使用host.docker.internal,它可以访问到宿主机,喜欢的朋友跟随小编一起看看吧
    2026-03-03
  • Docker使用root用户进入容器的几种方法小结

    Docker使用root用户进入容器的几种方法小结

    很多时候,拉取运行的容器,进入时,是非root账户,也不知道当前账户的用户密码,甚至无账户,但在使用docker时,有时候需要以root用户权限进入容器进行操作,所以本文介绍了Docker使用root用户进入容器的几种方法,需要的朋友可以参考下
    2025-09-09
  • Docker 教程之仓库配置文件详解

    Docker 教程之仓库配置文件详解

    这篇文章主要介绍了Docker 教程之仓库配置文件详解的相关资料,需要的朋友可以参考下
    2016-12-12
  • 在Docker容器中运行Nginx的详细教程

    在Docker容器中运行Nginx的详细教程

    Nginx 是一款高性能 Web 服务器,常被用作反向代理、负载均衡器以及内容缓存,当你将 Nginx 运行在 Docker 容器中时,还能进一步获得可移植性、快速部署和更整洁的管理体验,本教程将带你从零开始学习如何使用 Docker 部署 Nginx,需要的朋友可以参考下
    2025-10-10
  • Docker创建一个mysql容器并保存为本地镜像

    Docker创建一个mysql容器并保存为本地镜像

    本篇文章主要介绍了Docker创建一个mysql容器并保存为本地镜像 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论