docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > idea用docker生成镜像

idea使用docker生成镜像的详细步骤

作者:OnE TwO ZerO

本文详细介绍了在Windows环境下使用Docker Desktop进行Docker镜像的打包、运行、导出以及在Linux系统中的导入操作,重点讲解了如何在Windows中安装Docker Desktop,构建Docker镜像的步骤,文中介绍的非常详细,需要的朋友可以参考下

提示:文章主要内容windows环境打包镜像,运行镜像,导出镜像,linux导入镜像

Docker Desktop是Docker的官方桌面版,专为Mac和Windows用户设计,提供了一个简单易用的界面来管理和运行Docker容器。它集成了Docker引擎,为开发人员提供了一个快速、可靠、可扩展的方式来构建、运行和管理应用。Docker Desktop的优势在于,它使得在不支持原生Linux容器的操作系统上(如Windows和Mac)安装和运行Docker变得非常简单。

 需要注意的是,Windows 10 或 Windows 11 专业版或企业版支持运行 Windows 容器,但是  Windows 家庭版或教育版仅支持运行 Linux 容器。

一、windows环境打包docker镜像

1.下载dockerdesktop

下载地址如下Docker DeskTop安装包

根据所需版本,圈中的即为适用windows的。

2.安装

在 Windows 中安装 Docker Desktop 非常简单,下载合适版本的安装程序后,根据图形界面指引就可以轻松安装成功,安装成功后,在cmd指定docker -v,查看安装版本。

C:\Users\dell>docker -v
Docker version 24.0.5, build ced0996

注:安装成功后,登陆可采用github账号,且登陆及后续拉取镜像最好有代理

3.在ides安装docker插件

4.在idea中项目下创建Dockerfile文件(与项目最外层pom通目录)

5.dockerfile介绍

#FROM openjdk:11 基础镜像,基于jdk环境,若需要其他版本按需修改
FROM openjdk:11

#维护者信息
LABEL maintainer="lx@.com"

#对时作用
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

#目录是终端默认在此目录下
WORKDIR /test

EXPOSE 8088
#如果是到文件夹后面必须加上“/”,不然会找不到文件,./代表当前目录即是/test目录,且jar包需写绝对路径,不然找不到
COPY /Jxhs-admin/target/Jxhs-admin.jar ./image/

#启动命令
CMD java -jar ./image/Jxhs-admin.jar

6.idea中配置链接docker服务

其中image tag字段若不填,打出来的镜像的tag会为none

选着docker for windows 会出现connection successful,表示链接本地dockerdesktop应用成功

7.构建镜像

看到如下图箭头4位置表示构建镜像成功(注意:有时候构建一直不成功,需要先停止docker连接服务,然后再启动),我构建过程中有因为docker file编写问题导致的问题,可以逐一排查

二、启动镜像

1.打镜像后自动启动

因dockerfile中编写了命令,所以打包后会自动启动

注意事项:注意数据库和redis若原本为localhost或127.0.0.1需要改为当前ip,不然打包后启动不会成功

2.进入dockerdesktop中查看

在dockerdesktop应用选择images可以看到构建的镜像

启动镜像成为容器(1-启动,2-容器命名,3-是访问的端口,4-宿主机和容器挂载的路径可以有多个)

可以看到容器的全部信息,可以对容器终端命令操作和查看各种配置信息,启动,停止,删除容器等

三、windows导出镜像

在windows导出进行,在cmd通过docker images命令查看镜像

注意:通过镜像id导出新镜像的Tag和Respository可能为none

例如,使用镜像ID打包的话导致解压的出来的镜像没有名字

docker save -o redis.tar 7864316753

因此,推荐使用镜像的名字进行打包,例如:

docker save -o redis.tar redis:5.0.2

当REPOSITORY 和TAG为NONE时可以采用命令行对镜像重命名

docker tag [镜像id] [新镜像名称]:[新镜像标签]

导出镜像后就在cmd命令行中的位置。

C:\Users\dell>docker images
REPOSITORY            TAG                      IMAGE ID       CREATED         SIZE
poi                   1.0                      9ae198d48a31   4 minutes ago   175MB
anapsix/alpine-java   8_server-jre_unlimited   49d744fbb526   4 years ago     126MB

C:\Users\dell>docker save -o poiOne.tar 9ae198d48a31

C:\Users\dell>docker save -o poiTwo.tar poi:1.0

C:\Users\dell>

四、导入镜像

下方的poi.tar即为导出镜像时的包

docker load -i poi.tar

总结

到此这篇关于idea使用docker生成镜像的文章就介绍到这了,更多相关idea用docker生成镜像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文