报错 | 2023新版IDEA/PyCharm连接远程服务器的Docker需使用密钥认证

文章目录

  • 01 问题情景
  • 02 需求场景及工作原理
  • 03 解决步骤
    • 3.1 在本地生成密钥对
    • 3.2 将公钥保存至服务器
    • 3.3 本地连接时选择私钥文件


网上有很多文章讲怎么解决,但都要么写得很复杂,要么没有写明白原理或操作详情,造成我一头雾水。

01 问题情景

在之前版本的代码编辑器中,连接远程服务器并访问Docker只需要服务器的账号和密码即可,然而更新到2023.3版本之后,提示要密钥才可以访问服务器上的Docker。

Cannot connect: java.lang.llegalArgumentException: Only key-pair ssh auth type is supported for docker connections.
翻译:
无法连接:java.lang.IllegalArgumentException:对于Docker连接,仅支持密钥对SSH认证类型。

02 需求场景及工作原理

现在的场景是:

  • 有一台远程服务器,Linux系统,系统上装有Docker
  • 本地系统是Windows操作系统(>= win10)
  • 需要在本地windows上的IDEA等代码编辑器上连接到远程的Linux并访问其中的Docker

在这一场景下编辑器提示仅支持密钥对SSH认证类型

方案及原理

  • 在Windows本地生成一个公钥和私钥
  • 将私钥留存在本地
  • 将公钥保存到远程服务器
  • 在IDEA中连接远程服务器时选择本地的私钥文件,实现连接

03 解决步骤

3.1 在本地生成密钥对

打开CMD,输入ssh-keygen,按提示操作:

> ssh-keygen
# 01 提示密钥对的保存位置,直接回车即可 这会将密钥对保存在C:\Users\xxx/.ssh/id_rsa目录下
Enter file in which to save the key (C:\Users\xxx/.ssh/id_rsa):
# 02 输入访问密码 如果直接回车 表示无需密码 也可以输入密码 双重保险
Enter passphrase (empty for no passphrase):
# 03 确认密码
Enter same passphrase again:
# 提示密钥生成成功
Your identification has been saved in C:\Users\xxx/.ssh/id_rsa
Your public key has been saved in C:\Users\xxx/.ssh/id_rsa.pub

3.2 将公钥保存至服务器

密钥对生成成功后,到其所在的文件夹,这里是C:\Users\xxx/.ssh/id_rsa目录下:
可以看到有这两个文件
在这里插入图片描述
其中:

  • id_rsa是私钥,保存在本地
  • id_rsa.pub是公钥,需要复制到服务器

使用记事本打开公钥id_rsa.pubCtrl+A全选其中的内容,复制。
然后到服务器的/root/.ssh目录下,将内容粘贴到该目录下的authorized_keys文件中。

cd /root/.ssh
vim authorized_keys

如果有其他公钥需要保存,也是如此操作,换行后粘贴,每个公钥一行。
记得编辑完后保存该文件。

3.3 本地连接时选择私钥文件

这样,在连接时选择Key pair,私钥文件选择id_rsa,就可以连接了(如果创建密钥对时设置了密码,这里还需要输入密码)。
在这里插入图片描述
在这里插入图片描述
🎉🎉🎉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/589457.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一维卷积神经网络的特征可视化

随着以深度学习为代表的人工智能技术的不断发展,许多具有重要意义的深度学习模型和算法被开发出来,应用于计算机视觉、自然语言处理、语音处理、生物医疗、金融应用等众多行业领域。深度学习先进的数据挖掘、训练和分析能力来源于深度神经网络的海量模型…

vue2+element-ui 实现OSS分片上传+取消上传

遇到问题:项目中需要上传500MB以上的视频。一开始使用上传组件el-upload,调用后台接口,但是出现了onprogress显示百分百后接口一直pending,过了很多秒后接口才通,如果遇到大文件的话,接口就会报超时。 解决…

Linux网络协议栈从应用层到内核层④

文章目录 1、网卡接受数据2、网络设备层接收数据3、ip层接受数据4、tcp层接受数据5、上层应用读取数据6、数据从网卡到应用层的整体流程 1、网卡接受数据 当网卡收到数据时,会触发一个中断,然后就会调用对应的中断处理函数,再做进一步处理。…

掌握数据相关性新利器:基于R、Python的Copula变量相关性分析及AI大模型应用探索

在工程、水文和金融等各学科的研究中,总是会遇到很多变量,研究这些相互纠缠的变量间的相关关系是各学科的研究的重点。虽然皮尔逊相关、秩相关等相关系数提供了变量间相关关系的粗略结果,但这些系数都存在着无法克服的困难。例如,…

Nginx从安装到高可用实用教程!

一、Nginx安装 1、去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本 2、上传nginx到linux系统 3、安装依赖环境 (1)安装gcc环境 yum install gcc-c(2)安装PCRE库,用于解析正则表达式 yum install -y pcre pcre-devel(3)zlib压缩和解压缩…

洞察商机共论出海,4月12日@上海,数说故事D3智能营销论坛,灿然开启!

洞察是生意之母。 —— 彼得德鲁克 读懂消费者,找到好洞察,是生意的原点。 大数据与AI时代,好洞察常常蕴藏在社媒数据中。品牌上新会提前布局社交媒体,集中种草与收集反馈,产品创新灵感也很多来自评论区的夸夸与吐槽&a…

数据文件大小扩容或缩容必备技能

欢迎关注“数据库运维之道”公众号,一起学习数据库技术! 本期将为大家分享“数据文件大小扩容或缩容必备技能” 。 关键词:Resize Datafile、ORA-03297、高水位线 表空间跟数据文件是一对多的关系,数据文件存放到磁盘或ASM磁盘组。当磁盘空间…

Stream 流和 Lambda 组装复杂父子树形结构

在最近的开发中,遇到了两个类似的需求:都是基于 Stream 的父子树形结构操作,返回 List 集合对象给前端。于是在经过需求分析和探索实践后有了新的认识,现在拿出来和大家作分享交流。 一般来说完成这样的需求大多数人会想到递归&a…

【C+ +】第一个C+ + 项目的创建及namespace命名空间解释C++中的输入输出

目录 1.创建第一个c项目 1.1项目创建 1.2 .cpp源文件建立 1.3 第一个c程序hello world对比c语言hello world 2.命名空间 2.1 C关键字 2.2 命名空间---解决c语言中的命名冲突 2.2.1 namespace命名空间用法 2.2.2 :: 预作用限定符 2.2.3 命名空间的嵌套…

认识什么是Git

目录 1. 认识Git 1.1. 问题引入 1.2. 概念 1.3. 作用 1.4. 如何学 1.5. Git 安装 1.6. Git配置用户信息 2. Git仓库 2.1. Git 仓库(repository) 2.2. 创建 2.3. 需求 3. Git的三个区域 3.1. Git 使用时的三个区域 3.2. 工作区的内容&#…

特征融合篇 | YOLOv8改进之引入中心化特征金字塔EVC模块

前言:Hello大家好,我是小哥谈。在计算机视觉领域中,目标检测是一个重要的任务,而YOLO系列算法是一种经典的实时目标检测算法。为了进一步提升YOLO系列算法的性能,研究人员引入了中心化特征金字塔(EVC)模块,用于特征融合。本文所作出的改进是在YOLOv8的Neck网络中加入EV…

阿里巴巴25届实习生内推

#阿里巴巴 #春招实习 阿里国际春季2025届实习生招聘4月1日已正式启动!学生网申投递、师兄师姐内推通道均已开放 整体介绍(含在招岗位) 内推投递方式 方式一:内推码自行投递 方式二:通过简历投递 简历发邮箱&#xf…