idea使用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.构建镜像

1.idea构建镜像

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

2.对jar包构建镜像

docker build -t encryptvispro .

注意:.代表执行dockerfile,也就是说执行此命令的地址需要有dockerfile,且dockerfile中要准确找到jar包位置,encryptvispro为镜像名称

二、启动镜像

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

五、linux上运行镜像

在linux上将镜像包导出为镜像后

1.查看镜像信息

docker images

镜像信息的名字和版本号可能为空,用上方的docker tag命令对镜像命名。

2.启动镜像

docker run -d --name visproenv1.0 -p 8083:8083 -v /data:/data visproenv:v1.0

这个命令是用于在 Docker 中运行一个名为 "blog:1.0" 的容器,并指定了一些参数配置。

解释一下每个参数的含义:

  • -d: 后台模式(detached mode),容器将在后台运行。
  • --name visproenv1.0: 为容器指定一个名称,此处为 "visproenv1.0"。
  • -p 8083:8083: 将主机的端口 8083 映射到容器的端口 8083。这样,可以通过访问主机的 8083 端口来访问容器中运行的应用程序。
  • -v /data:/data:,将主机的 /data 目录挂载到容器的 /data 目录。这样做可以实现主机和容器之间的文件共享,容器中对 /data的操作会反映到主机上。

visproenv:v1.0: 指定要基于的镜像名称及标签。

3.查看镜像日志

sudo docker logs -f --tail=200 vispro

查看容器的最后200条日志,vispro为容器名称,所以查看前需查看容器信息


总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了打包docker镜像的方式

使用Docker Desktop来与IDEA进行集成,你需要按照以下步骤进行操作: 1. 首先,确保已经安装了Docker Desktop,并且它正在运行。你可以从官方网站上下载并安装Docker Desktop。 2. 在IDEA中安装Docker插件。打开IDEA,点击“File”菜单,然后选择“Settings”。在Settings窗口中,选择“Plugins”选项。在搜索框中输入“Docker”,然后点击“Browse repositories”按钮。找到Docker插件并点击“Install”按钮进行安装。 3. 安装完插件后,重新启动IDEA。 4. 现在你可以通过IDEA连接到Docker并操作Docker镜像容器了。你可以点击IDEA右下角的Docker图标打开Docker面板。在面板中,你可以查看本地Docker环境的信息,包括镜像容器和网络等。 5. 如果你想在IDEA中创建Docker镜像的配置文件,你可以在项目的根目录下创建一个文本文件,并将配置文件和jar包放在同一个目录下。 6. 配置Dockerfile来生成Docker镜像。你可以使用Dockerfile来指定生成镜像的配置信息。在Dockerfile中,你可以使用COPY指令来复制jar包到Docker镜像中。 7. 使用Docker指令来构建镜像。你可以在终端中使用docker build命令来构建镜像。通过指定Dockerfile的路径和镜像的名称和版本号,你可以生成一个Docker镜像。 以上是使用IDEADocker Desktop集成的一般步骤。请根据你的具体环境和需求进行相应的设置和操作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值