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://www.mzph.cn/pingmian/50243.shtml

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

相关文章

OSPF概述

OSPF OSPF属于内部网关路由协议【IGP】 用于单一自治系统【Autonomous System-AS】内决策路由 自治系统【AS】 执行统一路由策略的一组网络设备的组合 OSPF概述 为了适应大型的网络,OSPF在AS内划分多个区域 每个OSPF路由器只维护所在区域的完整的链路状态信息 …

Ubuntu-迁移22.04从机械盘到固态盘

使用dd迁移22.04到新硬盘 一、概述二、详细过程1. 拷贝数据2. 更新硬盘信息3. 修改Grub 引导4. 参考链接 一、概述 Ubuntu:22.04 记录一下把机械硬盘中的Ubuntu移动到新的固态硬盘中,原机械硬盘大小是1T,目标固态硬盘为1T。 之前的Ubuntu安…

ARM编程指令一

预备知识 1. 寻找地址表现形式 立即数地址(Immediate Addressing) LDR R0, 0x2000 // 将立即数 0x2000 作为地址加载到寄存器 R0 中寄存器间接寻址(Register Indirect Addressing) 使用寄存器的值作为内存地址进行数据存取。 …

oracle 查询锁表

oracle 查询锁表 SELECT o.object_name, s.sid, s.serial#, p.spid, s.username, s.program FROM v l o c k e d o b j e c t l J O I N d b a o b j e c t s o O N l . o b j e c t i d o . o b j e c t i d J O I N v locked_object l JOIN dba_objects o ON l.object_id …

ufw命令简介

正文共:3999 字 41 图,预估阅读时间:4 分钟 我们之前在CentOS系统中研究了iptables命令的使用方法(iptables命令简介),还做了简单的应用实验(如何通过iptables配置URL过滤黑名单?、如…

速盾 CDN 提高网络安全性的方法有哪些?

CDN(内容分发网络)是一种广泛应用于互联网的网络架构,其主要目的是提高网站的访问速度和网络安全性。速盾 CDN 作为一家网络安全服务提供商,采取了多种方法来提高网络安全性。 首先,速盾 CDN 利用分布式架构来提高网络…

Vue3 + Vite 打包引入图片错误

1. 具体报错 报错信息 报错代码 2. 解决方法 改为import引入&#xff0c;注意src最好引用为符引入&#xff0c;不然docker部署的时候可能也会显示不了 <template><img :src"loginBg" alt""> </template><script langts setup> …

LinkedList与链表(1万多字超级详细版本)

一. ArrayList的缺陷 上个博客已经熟悉了ArrayList的使用&#xff0c;并且进行了简单模拟实现。通过源码知道&#xff0c;ArrayList底层使用数组来存储元素&#xff1a; public class ArrayList < E > extends AbstractList < E > implements List < E &g…

深入解析DDoS攻击:原理、危害与防御策略

在日新月异的网络时代&#xff0c;DDoS攻击&#xff08;分布式拒绝服务攻击&#xff09;如同一把无形的利剑&#xff0c;悬挂在每一个互联网参与者的头顶。随着技术的飞速进步与网络环境的日益复杂&#xff0c;DDoS攻击不仅频次激增&#xff0c;其破坏力也愈发惊人。据2023年网…

JSON.parse()和JSON.stringify()用法

JSON.parse() 方法用于将 JSON 格式的字符串转换为 JavaScript 对象&#xff0c;而 JSON.stringify() 方法用于将 JavaScript 对象转换为 JSON 字符串。这两个方法可以组合使用来实现将数据从对象到字符串再到对象的转换。 示例 // 创建一个包含属性的 JavaScript 对象 var pe…

国际奥委会主席巴赫:阿里AI技术将巴黎奥运转播带到新高度

7月26日&#xff0c;巴黎奥运会开幕在即&#xff0c;国际奥委会主席巴赫在国际转播中心举行的活动中表示&#xff0c;2024巴黎奥运会展现了奥运转播的未来&#xff0c;广泛应用的阿里AI技术正在将巴黎奥运转播带到新的高度。 &#xff08;国际奥委会主席巴赫&#xff09; 在巴黎…

SQLite基础:简介、安装和命令

文章目录 1. SQLite简介1.1 SQL 和 SQLite 之间的差异1.2 SQLite 特性 2. SQLite安装3. SQLite命令4. SQLite点命令 1. SQLite简介 SQLite 是嵌入式关系数据库管理系统。它是自包含、无服务器、零配置和事务性 SQL 数据库引擎。其与大多数其他 SQL 数据库不同&#xff0c;SQLi…

自定义Linux操作日志配置

方案一&#xff1a;使用acct工具记录 步骤 1 通过设置日志文件可以对每个用户的每一条命令进行纪录&#xff0c;这一功能默认是不开放的&#xff0c;为了打开它&#xff0c;我们要确认已经安装了acct工具&#xff1a; # Debian、Ubuntu、SUSE下叫acct apt-get install acct…

视觉SLAM第一讲

第一讲-预备知识 SLAM是什么&#xff1f; SLAM&#xff08;Simultaneous Localization and Mapping&#xff09;是同时定位与地图构建。 它是指搭载特定传感器的主体&#xff0c;在没有环境先验信息的情况下&#xff0c;于运动过程中建立环境的模型&#xff0c;同时估计自己…

TCP/IP面试三道题

针对TCP/IP的面试题&#xff0c;我将从简单到困难给出三道题目&#xff0c;并附上参考答案的概要。 1. 简单题&#xff1a;请简述TCP/IP协议族的基本组成&#xff0c;并说明每一层的主要功能。 参考答案&#xff1a; TCP/IP协议族是一个由不同层次组成的协议集合&#xff0c…

长效IP有哪些应用场景?

不同于经常重置的短效IP&#xff0c;长效IP以其长久稳定的特性&#xff0c;为各行各业提供了更为广阔的应用舞台。今天&#xff0c;就让我们一起探索极光http这一长效IP服务的魅力&#xff0c;看看它是如何成为众多领域首选的。 1. 远程工作的稳定后盾 在远程办公日益普及的今…

昇思25天学习打卡营第23天|LSTM+CRF序列标注

Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|&#xff08;一&#xff09;序列标注与条件随机场的关系 Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|&#xff08;二&#xff09;CRF模型构建 Mindspore框架CRF条件随机场概率图模型实现文本…

【Beyond Compare】Beyond Compare下载、安装与使用详细教程

目录 &#x1f33a;1 概述 &#x1f384;2 Beyond Compare 安装包下载 &#x1f33c;3 安装详细教程 &#x1f342;4 免费注册 &#x1f30d;5 使用详情 &#x1f33a;1 概述 Beyond Compare 是一款强大的文件和文件夹比较工具&#xff0c;广泛应用于软件开发、文档管理和…

枚举单例是怎么保证线程安全和防止反射的

枚举单例在Java中具有天然的线程安全性和防止反射攻击的特性&#xff0c;这是由于Java对枚举类型的特殊处理方式。以下是详细解释&#xff1a; 1. 线程安全性 Java 枚举类的特性 类加载机制&#xff1a;枚举类型在Java中是特殊的类&#xff0c;由JVM保证其线程安全性。枚举类…

Web动画(lottie篇)

一、Lottie简介 Lottie是一个库&#xff0c;可以解析使用AE制作的动画&#xff08;需要用bodymovin导出为json格式&#xff09;&#xff0c;支持web、ios、android和react native。在web侧&#xff0c;lottie-web库可以解析导出的动画json文件&#xff0c;并将其以svg或者canva…