文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

IDEA如何使用Docker插件

2023-06-20 20:49

关注

这篇文章主要介绍了IDEA如何使用Docker插件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

说明

之前docker的学习,包括镜像拉取,容器创建等操作都需要自己手动敲命令来实现,但是如果在idea中使用Docker插件,就可以不用敲命令也可以实现对docker的操作,不得不说idea这个工具是真的强!!!本文会持续更新,不断地扩充

本文仅为记录学习轨迹,如有侵权,联系删除

注意:一般是用的服务器,作为测试这里就采用虚拟机+Ubuntu系统的方式

一、开启Docker远程访问

如果使用idea编辑器的话,可以使用docker插件来远程使用服务器(虚拟机)上的docker,简单方便快捷的使用docker,更重要的是使用插件可以实现项目的一键部署,当然这还需要一些简单的配置。
默认的dokcer是不支持远程访问的,需要加点配置,开启Docker的远程访问

#修改Docker服务文件,需要先切换到root用户vim /lib/systemd/system/docker.service#注释掉"ExecStart"这一行,并添加下面这一行信息ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375

IDEA如何使用Docker插件

重新加载配置文件

#重新加载配置文件systemctl daemon-reload#重启服务systemctl restart docker.service#查看配置的端口号(2375)是否开启(非必要)netstat -nlpt  #如果找不到netstat命令,可以先安装一下这个工具,具体百度

IDEA如何使用Docker插件

注意:如果上述过程失败的话,有下面这种方式,

首先确保端口号已经开放,这个很重要!!!,默认端口号2375

切换root用户,命令:sudo su

编辑docker相关配置:
命令:vim /lib/systemd/system/docker.service,进入编辑页面

IDEA如何使用Docker插件

找到ExecStart对应的那一行,添加代码:-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock (按下按键"i",进入编辑模式,然后就可以添加数据了)

IDEA如何使用Docker插件

保存退出,先按"esc"按键,然后输入命令::wq,回车即保存。

重启docker服务
守护进程重启:sudo systemctl daemon-reload
重启docker服务:sudo systemctl restart docker

查看端口号2375是否开放,出现如图则成功

IDEA如何使用Docker插件

二、连接docker

使用idea的docker插件连接docker,idea默认已经下载过docker插件了,如果没有的话,需要在idea下载docker插件

IDEA如何使用Docker插件

点击idea的设置选项(file --> setting -> docker),新建连接

IDEA如何使用Docker插件

IDEA如何使用Docker插件

连接成功之后就可以使用服务器(虚拟机)上的docker了

IDEA如何使用Docker插件

三、镜像的拉取

idea可以通过可视化的方式拉取镜像,不用自己去敲命令

IDEA如何使用Docker插件

IDEA如何使用Docker插件

IDEA如何使用Docker插件

有时候会出现拉取的时间超时的情况,可以配置一下国内的镜像获取阿里云的加速器

IDEA如何使用Docker插件

四、容器的创建与运行

创建并且运行docker容器

IDEA如何使用Docker插件

IDEA如何使用Docker插件

创建成功之后可以看到新创建的容器,也可以在服务器(虚拟机)上用docker命令查看

IDEA如何使用Docker插件

重启容器、停止容器和删除容器等操作

IDEA如何使用Docker插件

五、docker一键部署springboot项目

传统的docker部署springboot项目,需要自己手动配置Dockerfile文件,还需要将生成的jar包跟Dockerfile文件一起上传到服务器,整个流程下来很麻烦,如果用idea的docker插件就可以实现一键部署springboot项目,简单方便。

首先需要引入docker的构建工具

<build>        <!-- 引用我们的项目名字 -->        <finalName>${project.artifactId}</finalName>        <plugins>            <plugin>                <groupId>org.springframework.boot</groupId>                <artifactId>spring-boot-maven-plugin</artifactId>            </plugin>            <!--使用docker-maven-plugin插件-->            <plugin>                <groupId>com.spotify</groupId>                <artifactId>docker-maven-plugin</artifactId>                <version>1.0.0</version>                <!--将插件绑定在某个phase执行-->                <executions>                    <execution>                        <id>build-image</id>                        <!--用户只需执行mvn package ,就会自动执行mvn docker:build-->                        <phase>package</phase>                        <goals>                            <goal>build</goal>                        </goals>                    </execution>                </executions>                <configuration>                    <!--指定生成的镜像名,这里是我们的作者名+项目名-->                    <imageName>cainiao/${project.artifactId}</imageName>                    <!--指定标签 这里指定的是镜像的版本,我们默认版本是latest-->                    <imageTags>                        <imageTag>latest</imageTag>                    </imageTags>                    <!--指定基础镜像jdk1.8-->                    <baseImage>java</baseImage>                    <!--                    镜像制作人本人信息                    <maintainer>bruceliu@email.com</maintainer>                    -->                    <!--切换到ROOT目录-->                    <workdir>/ROOT</workdir>                    <!--查看我们的java版本-->                    <cmd>["java", "-version"]</cmd>                    <!--${project.build.finalName}.jar是打包后生成的jar包的名字-->                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>                    <!--指定远程 docker api地址-->                    <dockerHost>http://192.168.29.133:2375</dockerHost>                    <!-- 这里是复制 jar 包到 docker 容器指定目录配置 -->                    <resources>                        <resource>                            <targetPath>/</targetPath>                            <!--jar 包所在的路径  此处配置的 即对应 target 目录-->                            <directory>${project.build.directory}</directory>                            <!--用于指定需要复制的文件 需要包含的 jar包 ,这里对应的是 Dockerfile中添加的文件名 -->                            <include>${project.build.finalName}.jar</include>                        </resource>                    </resources>                </configuration>            </plugin>        </plugins>    </build>

ok,接下来只要先点击clean清除之前的所有打包的文件,然后再点击package打包文件即可完成镜像的构建,真正的一键部署

IDEA如何使用Docker插件

IDEA如何使用Docker插件

到此镜像构建成功,接下来只要创建容器跑起来即可

IDEA如何使用Docker插件

IDEA如何使用Docker插件

通过ip访问

IDEA如何使用Docker插件

至此,一键构建部署springboot项目成功!

可能的错误:

“java.lang.NoClassDefFoundError:javax / activation / DataSource”(tomcat 9.0.12)“

网上查了一下,发现这样的一段话,具体看这里

IDEA如何使用Docker插件

刚好我想起来这个项目之前开发用的是jdk8,然后我现在用的jdk11,所以在构建的时候会出现这个问题,我感觉应该是这个问题导致,虽然构建成功了,运行访问都没有问题,建议开发跟构建docker的时候jdk版本保持一致。

感谢你能够认真阅读完这篇文章,希望小编分享的“IDEA如何使用Docker插件”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯