Docker 镜像
最后修改时间:2023 年 9 月 6 日Docker 镜像是用于运行容器的可执行包。Docker 使用注册表来分发镜像。默认情况下,IntelliJ IDEA 使用Docker Hub,它是一个公共注册表,包含所有最常见的映像,例如各种 Linux 版本、数据库管理系统、Web 服务器和运行时环境。还有其他公共和私有 Docker 注册表,您还可以部署自己的注册表服务器。有关更多信息,请参阅配置 Docker 注册表。
启用 Docker 插件
此功能依赖于Docker插件,该插件默认在 IntelliJ IDEA 中捆绑并启用。如果相关功能不可用,请确保您没有禁用该插件。
笔记
默认情况下,Docker 插件仅在 IntelliJ IDEA Ultimate 中可用。对于 IntelliJ IDEA Community Edition,您需要按照安装插件中所述安装 Docker 插件。
按打开 IDE 设置,然后选择插件。CtrlAlt0S
打开“已安装”选项卡,找到Docker插件,然后选中插件名称旁边的复选框。
要在 IntelliJ IDEA 中管理 Docker 映像,请打开“服务”工具窗口(“视图”|“工具窗口”|“服务”或),展开已配置的 Docker 连接节点,然后展开“映像”节点。有关更多信息,请参阅图像。Alt08
根据您的开发需求,您可以使用 Docker 进行以下操作:
例如,您可以拉取运行 PostgreSQL 服务器容器的映像来测试应用程序如何与生产环境交互。
例如,您可以构建一个映像,该映像运行具有应用程序所需的特定版本的 Java 运行时环境 (JRE) 的容器。
例如,如果您想向某人演示您的应用程序如何在某些特定版本的 JRE 中运行,而不是设置适当的环境,他们可以从您的映像运行容器。
配置 Docker 注册表
笔记
如果您打算仅使用Docker Hub上托管的公共映像,则无需配置注册表。
在“服务”工具窗口中,单击并选择“Docker 注册表”。
在“新建 Docker 注册表”对话框中,指定如何连接到注册表。当您指定凭据时,IntelliJ IDEA 将自动检查与注册表的连接。连接成功消息应出现在对话框底部。
您可以在服务工具窗口中看到配置的 Docker 注册表。
或者,您可以在Docker 注册表设置中管理已配置的 Docker 注册表列表。
从 Docker Hub 拉取公共镜像
在“服务”工具窗口(“视图”|“工具窗口”|“服务”或)中,选择“图像”节点。Alt08
在Images Console下,键入要拉取的映像的名称。
按运行docker pull。CtrlEnter
在Docker CLI中指定镜像,例如:ubuntu:20.04
。
提示
您可以使用上下文操作来提取 Java 或 Kotlin 代码、Dockerfile 或 Docker Compose 文件中引用的 Docker 映像。将插入符号放在映像名称处,按并选择Pull Docker image。AltEnter
从 Docker 注册表中提取镜像
如果您想在 Docker Hub 或其他 Docker 注册表中使用私有映像,请配置 Docker 注册表连接。
在“服务”工具窗口(“视图”|“工具窗口”|“服务”或)中,展开具有必要 Docker 注册表的节点,右键单击所需的映像,然后选择“拉取映像... ”。Alt08
从 Dockerfile 构建镜像
当您编辑Dockerfile时,IntelliJ IDEA 会从配置的注册表中提供图像补全。
打开要从中构建映像的 Dockerfile。
单击装订线并选择构建图像。
IntelliJ IDEA 创建一个运行docker build命令的Dockerfile 运行配置。
将镜像推送到 Docker 注册表
您可以将映像推送到已配置的 Docker 注册表。
在服务工具窗口中,选择要上传的图像,然后单击工具栏或仪表板中的 ,或从上下文菜单中选择推送图像...。
选择Docker 注册表并指定存储库和标签(映像的名称和版本,例如
my-app:v2
)。单击“确定”运行docker Push命令。
将镜像复制到另一个 Docker 守护进程
如果您有多个 Docker 守护程序连接,则可以将映像从一个 Docker 守护程序复制到另一个。
在“服务”工具窗口中,选择要复制的映像,然后单击或从上下文菜单中选择“复制 Docker 映像” 。
在“复制 Docker 映像”对话框中,选择要将映像复制到的 Docker 守护程序,然后单击“复制”。
首先运行docker save命令将当前 Docker 守护进程中的映像保存为文件,然后运行docker load命令从目标 Docker 守护进程上的文件加载映像。
在服务工具窗口中管理 Docker 映像
IntelliJ IDEA 列出了您在相应 Docker 守护程序连接的Images节点下的Services工具窗口中本地拉取或构建的所有映像。有关更多信息,请参阅图像。
选择一个映像以查看其名称、ID、大小、标签、上次更改日期以及正在使用该映像的容器。您可以从所选映像创建新容器,将映像推送到配置的 Docker 注册表,或查看映像使用的层。单击可查看更多操作:将映像 ID 复制到剪贴板、运行docker image inform命令或显示应用于映像的标签。
没有标签的图像<none>:<none>
可以是以下之一:
中间图像用作其他图像的图层,并且不占用任何空间。
当您基于另一个映像的较新版本重建映像时保留的悬空映像。您应该定期修剪悬挂图像以保留磁盘空间。
要从列表中隐藏未标记的图像,请单击Docker 工具栏上的 并取消选中Untagged Images。
要删除一张或多张图像,请在列表中选择它们,然后单击。
探索 Docker 镜像
在“服务”工具窗口的“图像”下,选择您感兴趣的图像。
在“仪表板”选项卡中,单击“显示图层”。
“图层”选项卡显示构成此图像的所有图层以及每个图层的详细信息。单击分析图像以获取更多信息,以收集详细信息,包括对图像文件系统的更改。
如果 IntelliJ IDEA 支持此文件类型,您可以双击或右键单击图像层中的任何文件以在编辑器中打开该文件的副本;如果 IntelliJ IDEA 不支持,则可以将该文件的副本下载到本地文件系统支持此文件类型。
感谢您的反馈意见!