服务器 > 服务器 > 云虚拟主机

Docker打包自定义镜像的实现

34人参与 2025-02-14 云虚拟主机

镜像的结构

docker打包镜像

前置工作

 1.虚拟机中配置好docker环境,并导入nginx,mysql,jdk的镜像

2.下载docker for windows

用idea打包镜像和创建容器需要这个东西支持

下载安装包后执行,无脑回车即可

3.idea中配置docker连接

完成配置后,点开docker连接,可以看到如下内容

简单介绍一下,可以通过镜像创建容器。

镜像相当于一个配方,容器相当于菜肴,通过一个秘方可以创建无数个菜肴,同理:通过指定镜像可以创建无数个容器。

每个容器相当于一个小型linux机器,它只包含最基本的功能(内核级功能),用一句话形容就是:麻雀虽小五脏俱全。

4.将我们的工程打成一个jar包

1.首先,修改pom文件中的skip标签的值为false

否则他会跳过打包我们的启动类,在执行java -jar时会报如下错误 

2.执行命令  mvn -clean      mvn -package

也可以在界面执行

打包好会生成一个target文件夹,我们的jar包在这个文件夹里面 

两种打包镜像的方式

注意,镜像的名字必须全小写

手动打包(不推荐,应急情况下使用)

1.写dockerfile文件

# 基于jdk17以上 的镜像创建
from openjdk:17-jdk-alpine

# 将编译后的文件复制到镜像中,用于运行
# 参数1 jar包所在位置(目录+文件名)
# 参数2 给这个jar起别名  用别名是为了移植方便
# add=copy
add target/testdockerdb01-0.0.1-snapshot.jar /app.jar

# 设置启动命令
entrypoint ["java","-jar","/app.jar"]

2.将jar包和dockerfile文件通过ftp工具上传到虚拟机

3. 通过命令打包镜像

命令格式

docker build -t   镜像名:版本号   dockerfile所在的地址

执行命令报错,这是因为当我们把jar包移到虚拟机后,它所在的位置就不是target/testdockerdb01-0.0.1-snapshot.jar了 

这时候我们通过vi dockerfile去修改文件

再一次检查一下jar包和dockerfile文件的位置,重新执行命令

创建镜像成功

idea中也能看到我们刚刚创建的镜像 

通过idea打包

回到dockerfile文件,进行配置

 把dockerfile跑起来,这里我们选择第一个,创建镜像和容器

创建成功后会自动启动容器

到此这篇关于docker打包自定义镜像的实现的文章就介绍到这了,更多相关docker打包自定义镜像内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

dockerfile中su命令切换用户激活环境,报错su: invalid option -- ‘n‘

02-14

Docker容器中启用SSH服务的方法步骤

02-14

Dokcer部署双主Mysql的详细步骤

02-14

docker之如何搭建VXXXN

02-14

使用Docker打包和运行Java镜像的完整指南

02-14

Docker网络之自定义网络方式

02-14

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论