一、概述
Docker是一种用于在隔离和可复制环境中部署和运行可执行文件的工具。这可能很有用,例如,在与生产相同的环境中测试代码。
IntelliJ IDEA集成了Docker功能,并为创建Docker映像、运行Docker容器、管理Docker Compose应用程序、使用公共和私有Docker注册表以及更直接地从IDE提供帮助。
二、启用Docker插件
此功能依赖于Docker插件,默认情况下,该插件在IntelliJ IDEA中绑定并启用。如果相关功能不可用,请确保没有禁用该插件。
- 按Ctrl-Alt-S打开设置,然后选择插件。
- 打开Installed选项卡,找到Docker插件,并选中插件名称旁边的复选框。
三、连接到Docker程序
- 按Ctrl-Alt-S打开设置,然后选择Build、Execution、Deployment | Docker。
- 单击添加按钮添加Docker配置,并指定如何连接到Docker守护程序。连接设置取决于Docker版本和操作系统。有关详细信息,请参阅Docker连接设置。连接成功消息应出现在对话框的底部。
- 打开服务工具窗口(查看|工具窗口|服务或Alt 8
),选择配置的Docker连接节点Docker节点,然后单击连接按钮,或从上下文菜单中选择连接。
要编辑Docker连接设置,请选择Docker节点,然后单击工具栏上的编辑配置按钮,或从上下文菜单中选择编辑配置。
也可以单击添加服务菜单,然后选择Docker Connection,直接从Services工具窗口添加Docker连接。如果配置了Docker上下文,可以从Docker contexts中选择Docker Connections来添加相应的连接。
四、Docker images使用
1、配置好Docker plugin
Docker映像是用于运行容器的可执行包。Docker使用注册表来分发映像。默认情况下,IntelliJ IDEA使用Docker Hub,这是一个公共注册表,具有所有最常见的映像,如各种Linux风格、数据库管理系统、web服务器和运行时环境。还有其他公共和私有Docker注册中心,您还可以部署自己的注册服务器。有关更多信息,请参阅配置Docker注册表。
要在IntelliJ IDEA中管理Docker映像,请打开服务工具窗口(查看|工具窗口|服务或Alt 8),展开配置的Docker连接节点Docker节点,然后展开Images节点。有关详细信息,请参阅图像。
根据您的开发需要,您可以使用Docker进行以下操作:
- 从Docker注册表中拉出预构建的图像 例如,可以提取运行PostgreSQL服务器容器的映像,以测试应用程序将如何与生产环境交互。
- 从Dockerfile本地构建映像。 例如,您可以构建一个映像,该映像运行具有应用程序所需的特定版本的Java运行时环境(JRE)的容器。
- 将图像推送到Docker注册表 例如,如果您想向某人演示您的应用程序如何在JRE的特定版本中运行,而不是设置适当的环境,则他们可以从您的映像运行容器。
2、配置Docker注册表
- 在服务工具窗口中,单击添加服务按钮,然后选择Docker Registry。
- 在New Docker Registry对话框中,选择注册表类型以及如何连接到注册表。指定凭据时,IntelliJ IDEA将自动检查与注册表的连接。连接成功消息应出现在对话框的底部。
您可以在服务工具窗口中看到配置的Docker注册表。
3、从Docker Hub拉取公共映像
- 在服务工具窗口(视图|工具窗口|服务或Alt 8)中,选择图像节点。
- 在图像控制台下,键入要拉取的图像的名称。使用完成功能从官方图像的可用建议中进行选择。再次按CtrlSpace可查看所有用户的相关图像。
- 按Ctrl-Enter运行docker pull 在Docker CLI中指定映像,例如:ubuntu:20.04。
4、从Docker注册表中拉出图像
如果要在Docker Hub或其他Docker注册表中使用私有映像,请配置Docker注册中心连接。
- 在服务工具窗口(视图|工具窗口|服务或Alt 8)中,使用必要的Docker注册表展开节点,右键单击所需的图像,然后选择Pull image。
5、从Dockerfile构建映像
在编辑Dockerfile时,IntelliJ IDEA为来自配置注册表的映像提供完成。
- 打开要从中构建映像的Dockerfile。
- 单击gutter中的Run on Docker并选择以构建图像。
IntelliJ IDEA创建运行docker build命令的Dockerfile运行配置。