Docker开启远程连接,本地IDEA使用docker插件连接

前言

要部署一个Java程序,一般是打成war包,放到服务器上的tomcat的webapp里面去;
后来SpringBoot出现内置了tomcat,就直接打成jar包,丢到服务器任何一个目录,只要服务器上安装了Java即可;
Docker出现以后,可以通过编写Dockerfile将jar包和Java环境集成到一个镜像里面,更加方便了;
在公司则是使用持续部署和持续集成,通过在gitlab上设置webhook触发k8s来拉取代码自己编译部署集成。

技术一直在发展,越来越自动化,使用越来越简单,我辈之幸~~

可以在idea安装docker和编写Dockerfile文件,开启远程docker的远程连接,使用idea本地docker插件连接到远程docker,这样就省去了
还要手动将jar包丢到服务器上用docker build构建镜像的过程,算是方便了很多。。。

当然,本文讨论的不是部署方式,而是如何开启docker远程连接,docker远程连接分两种,一种是不用认证的,只要修改了docker的配置并
让配置生效就可以连接了,另外一种稍微复杂一些,需要自行生成CA证书,服务器公钥,客户端公钥等等。

安装docker教程请自行百度,就几行命令,很简单

下面切入正题,这里介绍不用认证,需要认证两个版本

1.1 不用认证的版本

开启docker远程连接

  • 1.1.1 修改docker.service文件

vi /usr/lib/systemd/system/docker.service

  • 1.1.2 找到ExecStart在后面追加以下内容

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

技术分享图片

需要注意的是,我这里配置的端口是2376,这是因为docker一般的远程连接端口是2375,由于我使用的是云服务器,怕被人利用来挖矿。。。虽然可能作用也不大~

另外,如果使用国内的云服务器,比如阿里云或者腾讯云,还需要去云服务器控制台配置安全组,把2376端口给暴露出来

  • 1.1.3 重启docker让配置生效

systemctl daemon-reload systemctl restart docker

  • 查看docker是否正常启动

systemctl status docker
在这里插入图片描述

  • 1.1.4 本地连接演示

idea下载好docker插件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 到这里为止,Idea使用docker插件,不需要认证版本也就ok啦,不过不推荐

1.1.5 注意

【注】,这种方式需要开启docker允许公网访问,所以很容易被挖矿程序折磨,本人就经历过一次,所以为了安全起见,还是得配置一下证书,否则就用不了idea插件了,只有到服务器上手动build部署了。

话不多说,下面介绍需要认证版本


1.2 需要认证的版本

  • 1.2.1 生成CA证书及服务器公钥等

这里贴一张博文,详细创建证书及公钥请看
创建docker ca证书及服务器公钥脚本

  • 1.2.2 保存脚本到create_tls_certs.sh文件中,并把该脚本移动到/etc/docker目录中执行

sh create_tls_certs.sh

在这里插入图片描述

  • 查看生成的证书和秘钥文件
    在这里插入图片描述
  • 1.2.3 修改配置文件开启docker远程连接及添加认证

vi /usr/lib/systemd/system/docker.service

除了添加开启远程连接

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

还要指定CA证书和公钥地址
–tlsverify --tlscacert=/etc/docker/ca.pem --tlscert=/etc/docker/server-cert.pem --tlskey=/etc/docker/server-key.pem在这里插入图片描述

  • 1.2.4 重启docker让配置生效

systemctl daemon-reload systemctl restart docker
在这里插入图片描述

  • 1.2.5 将证书及秘钥下载到本地

下载ca.pem,cert.pem和key.pem三个文件到本地
在这里插入图片描述

  • 1.2.6 本地连接演示

在这里插入图片描述

  • 连接成功后的操作就和上面讲的不需要认证的操作一样~

推荐文章

  1. Centos7 Docker配置TLS认证的远程端口的证书生成教程(shell脚本一键生成)
  2. centos7为docker配置远程TLS验证,端口设定为2376
### IntelliJ IDEA Docker Plugin 配置远程Docker服务 #### 启用Docker插件 为了在IntelliJ IDEA使用Docker功能,需先启用Docker插件。此操作可以通过进入 `File -> Settings -> Plugins` 并搜索“Docker”来完成[^1]。 #### 配置远程Docker连接 配置远程Docker服务的具体步骤如下: - 从菜单栏依次点击 `File -> Settings -> Build, Execution, Deployment -> Docker`。 - 在弹出的窗口中点击加号 (`+`) 添加一个新的Docker配置。 - 填写远程Docker服务的相关信息,例如主机地址(通常为IP地址或域名)、端口号以及认证方式(如果需要)。这些设置允许IDEA远程Docker守护进程建立通信[^2]。 #### 使用Docker插件打包镜像 一旦成功配置了远程Docker服务,可以利用IntelliJ IDEA中的Docker插件执行镜像构建任务。即使未配置Maven或其他构建工具,也可以直接通过插件实现这一目标。具体而言,在项目的上下文中右键单击并选择相应的选项即可触发镜像构建过程[^3]。 #### 完整部署流程至服务器 对于实际生产环境中将Spring Boot项目部署到CentOS服务器上的场景,整个工作流可概括为以下几个方面的工作内容描述: - **基础环境准备**:确保本地安装有最新版本的IntelliJ IDEA,并且目标服务器已准备好运行Linux操作系统(此处以CentOS7.3为例),同时还需要预先装好Docker引擎和服务端程序。 - **服务器侧调整**:为了让开发机器能够访问远端的容器化平台实例,则有必要开启Docker API接口监听外部请求的功能;这一步骤涉及修改默认绑定地址参数等内容[^4]。 ```bash sudo systemctl restart docker ``` 上述命令用于重新启动docker服务以便应用更改后的配置文件设定值。 以下是几个可能感兴趣的话题供进一步探讨:
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Romeo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值