Windows环境下安装docker、配置Ubuntu容器并使用vscode ssh连接到容器

目录

  • 一、Windows环境下安装docker
  • 二、配置Ubuntu
  • 三、在容器中安装ssh服务
  • 参考文章

一、Windows环境下安装docker

  • 在任务栏中搜索**“Windows功能”**
    在这里插入图片描述
    -将适用于Linux的Windows子系统和虚拟机平台选上
    在这里插入图片描述
  • 然后按照提示重启电脑。
  • 然后开始安装WSL。通过cmd以管理员身份打开命令提示符窗口
  • 先后输入两条命令:
wsl --set-default-version 2
wsl --update --web-download

在这里插入图片描述
在这里插入图片描述

  • 下载Docker Desktop。下载地址:https://github.com/tech-shrimp/docker_installer
    在这里插入图片描述
    在这里插入图片描述
  • 下载下来后双击安装。或在命令提示符窗口中进行安装(可以指定安装地址)
start /w "" "下载路径/Docker Desktop Installer.exe" install --installation-dir=D:\Docker(安装路径)
  • 在docker中使用阿里云加速,避免拉镜像失败。在Docker Engine中添加一条命令"registry-mirrors": ["https://kwji3vz3.mirror.aliyuncs.com"]。然后点击应用。

在这里插入图片描述

二、配置Ubuntu

  • 查找镜像
docker search ubuntu

在这里插入图片描述

  • 拉取镜像
docker pull ubuntu
  • 查看镜像
docker images

在这里插入图片描述

  • 创建容器
    端口号一定要指定,不然后续ssh无法连接
docker run -it --name my_ubuntu_dev(自定义命名) -t -i -d -p 3316:22(指向端口!!) -v G:\PHD\slam_learning\project -w /workspace ubuntu

在这里插入图片描述

  • 进入容器
 docker exec -it my_ubuntu_dev bash

三、在容器中安装ssh服务

  • 进入容器后输入apt-get update
    在这里插入图片描述

  • 接着输入apt-get install openssh-client
    在这里插入图片描述

  • 启动ssh服务/etc/init.d/ssh start并查看ssh服务是否启动ps -e|grep ssh
    在这里插入图片描述

  • 安装vim

apt-get install vim
  • 进入vim 编辑ssh config文件(i: 进入编辑,Esc: 退出编辑,:wq: 保存并退出)
vim /etc/ssh/sshd_config
  • 最后添加端口和允许连接命令
Port 3316
PermitRootLogin yes

在这里插入图片描述

  • 重启ssh服务
service ssh restart
  • 设置密码
passwd root
  • 测试连接ssh root@localhost -p 3316
    在这里插入图片描述

  • 在vscode中shfit+ctrl+p,输入open ssh,打开config,配置ssh文件
    在这里插入图片描述

  • 配置完成后,就点击+可以连接啦~~
    在这里插入图片描述

参考文章

安装docker
linux安装ssh
vscod配置

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

知识图谱 networkx、pyvis页面简单可视化

参考: https://huggingface.co/learn/cookbook/en/information_extraction_haystack_nuextract networkx 构建保存节点和边,pyvis保存为html 注意点 1、pyvis vscode的jupyer不支持,会显示不正常,直接还是本地jupyter环境使用 2…

【算法】布隆过滤器

一、引言 在现实世界的计算机科学问题中,我们经常需要判断一个元素是否属于一个集合。传统的做法是使用哈希表或者直接遍历集合,但这些方法在数据量较大时效率低下。布隆过滤器(Bloom Filter)是一种空间效率极高的概率型数据结构&…

二叉树以及堆的实现

树 树的定义及概念 树是⼀种非线性的数据结构,它是由n(n>0) 个有限结点组成⼀个具有层次关系的集合。把它叫做树是因为它看起来像⼀棵倒挂的树,也就是说它是根朝上,而叶朝下的。 有⼀个特殊的结点,称…

不支持jdk8的jenkins部署jdk8项目

1、背景 目前最新的jenkins必须基于jdk8以上,才能安装。jenkins最新的插件部分也不支持jdk8了。 2、全局工具配置 配置一个jdk8 配置一个jdk8以上的版本,如jdk17 3、部署maven项目 jdk17项目 可以直接使用maven插件,部署。 jdk8项目 由…

01-调试开发k8s

使用 Docker 构建 Kubernete 官方 release 是使用 Docker 容器构建的。要使用 Docker 构建 Kubernetes,请遵循以下说明: Requirements docker Key scripts 以下脚本位于 build/ 目录中。请注意,所有脚本都必须从 Kubernetes 根目录运行 build/run.…

MySQL环境的配置文件json

突然了解到,使用json文件去进行环境的配置,这样修改参数的时候就只需要去改json文件中的内容,不需要去修改代码中的内容,其他人的MySQL和我的MySQL也不同,这时其他人只需要修改json文件中的内容,清晰明了&a…

代码随想录||day25 非递减子序列,全排列问题

491非递减子序列 力扣题目链接 题目描述: 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等&#x…

双盲插便携屏方案:LDR6020系列便携显示

在当今这个追求高效与便携的时代,电子设备尤其是便携式显示器(Portable Monitor)的需求日益增长,成为商务人士、设计师、游戏玩家及移动办公族的理想伴侣。其中,6020系列便携屏以其卓越的显示效果、紧凑的机身设计赢得…

基于YOLO系列便捷式代码创新

目标检测 YOLOv5 与 YOLOv7 系列详细介绍 YOLOv5 详细介绍 版本与特点 网络结构 技术亮点 YOLOv7 详细介绍 主要贡献 网络结构 技术亮点 性能对比 基于YOLOv5和YOLOv7系列的多方面创新方法 融合BiFormer注意力机制 融合SImAM注意力机制 CBAM注意力机制 DBB多分枝模块 LSKA注意力…

NumpyPandas:pandas库的安装,不同对象的建立,文件的导入和了解数据

目录 前言 一、Pandas库的安装 二、不同对象的建立 1.Series对象的创建 1.用index方法指定索引 2.在创建的时候就指定索引 3.使用字典的方式创建 4.将一个常量与index一起传入创建 5.输出值和索引 2.DataFrame对象的创建 1.不指定列名则以键当列名 行索引为默认值 …

Hadoop3.3.5的安装与单机/伪分布式配置

文章目录 一、安装须知二、安装jdk三、安装shh四、安装配置hadoop五、运行hadoop 一、安装须知 本次安装的Hadoop版本为hadoop3.3.5。 在这之前完成了VMware虚拟软件的安装,并安装了Ubuntu22.04,在这基础上进行相关配置。 二、安装jdk 在Ubuntu中使用…

MySQL查询执行(一):count执行慢

查询处理器 MySQL查询处理器是MySQL数据库服务器的组件,它负责执行SQL查询。查询处理器的主要任务是解析查询(把用户提交的SQL查询转换为可以被数据库引擎理解和执行的数据操作指令序列),生成查询计划,然后执行该计划。…

C++程序的UI界面闪烁问题的解决办法总结

Windows C++程序复杂的UI界面要使用多种绘图技术(使用GDI、GDI+、ddraw、D3D等绘图),并要贴图去美化,在窗口移动或者改变大小的时候可能会出现闪烁。下面罗列一下UI界面产生闪烁的几种可能的原因,并给出相应的解决办法。 1、原因一 如果熟悉显卡原理的话,调用GDI函数向屏…

JVM系列(三) -类加载器及双亲委派模型介绍

在之前的文章中,介绍了类的加载过程中,我们有提到在加载阶段,通过一个类的全限定名来获取此类的二进制字节流操作,其实类加载器就是用来实现这个操作的。 在虚拟机中,任何一个类,都需要由加载它的类加载器…

《Milvus Cloud向量数据库指南》——Milvus Cloud不同场景下的部署形态选型

不同场景下的部署形态选型 一般说选型肯定离不开阶段。用到向量数据库的应用基本有这么几个阶段: AI 应用的快速原型构建。比如你在做一个 AI 个人助手、一个小的搜索引擎原型、一个端到端的 RAG 原型,这类项目的迭代速度是很关键的,而且原型构建期不需要关心性能或者稳定性…

暑假第二周任务——3Gshare的仿写

3GShare的仿写 登陆注册页面 这个界面的UI比较简单,比较困难的地方在于限制我们的输入长度以及我们输入的字符类型。 在这里我是通过在textField的代理中设计限定输入字符的内容,从而实现限制输入长度和限制输入字符的内容,下面给出相关的代…

Day24|二叉树 PART08

235. 二叉搜索树的最近公共祖先 与236类似但可以利用二叉搜索树的性质来做 二叉搜索树:左子 小于头 小于右子 (怪怪的 感觉是不是先记住比较好)(而且也没太理解二叉搜索树的规律) 大体思路:从上到下遍历&a…

html 解决tooltip宽度显示和文本任意位置换行文本显示问题

.el-tooltip__popper {max-width: 480px;white-space: break-spaces; /* 尝试不同的white-space属性值 */word-break:break-all; }

干货:three.js中的六大光源的知识点。

我们在二维屏幕中感知三维场景的一个最重要的要素就是光,光和光源是three.js中一个非常重要的知识点。本文想借着这个话题,为老铁们分享以下六大光源知识点:环境光、点光源、聚光灯、方向光、半球光、平面光。 一、点光源 在 Three.js 中&a…

模拟string(四)详解

目录 判断string大小关系bool operator(const string&s1,const string s2)代码 bool operator<(const string& s1, const string& s2)代码 bool operator<(const string& s1, const string& s2)代码 bool operator>(const string& s1, const …