当前位置: 首页 > news >正文

【VS Code】使用 VS Code 登陆远程服务器上的 Docker 容器

以下命令默认已经构建了一个 Docker Image。 

# 在服务器上启动 docker (-p 端口映射,用于后续的 ssh 连接)
docker run -itd -v /mnt/mount/:/home -p 8124:22 --name container-name --gpus all image-name# 进入容器中
docker exec -it container-name /bin/bash# 设置密码,后续登陆使用,比如 admin
passwd# 查看 ssh 状态(出现 ssh: unrecognized service 表示 ssh 未安装)
service ssh status # 安装 ssh
apt-get update
apt-get install openssh-server# 启动 ssh (出现 * Starting OpenBSD Secure Shell server sshd 表示启动成功)
service ssh start # 打开 ssh 配置文件进行修改,并重启
vi /etc/ssh/sshd_config
```
# 修改 PermitRootLogin 和 UsePAM 
#PermitRootLogin prohibit-password
PermitRootLogin yes 
# UsePAM yes
UsePAM no  
```
service ssh restart# 在服务器上进行连接测试,输入上面设置的密码 admin,登陆成功则没问题
ssh root@127.0.0.1 -p 8124
# vscode 登陆此容器只需要把上面的 127.0.0.1 换成服务器 ip 即可

上述的步骤主要是在服务器上启动了一个docker容器,并在容器内安装和配置了ssh服务。以下是对于这些步骤的详细解释:

首先,使用 docker run 命令在服务器上启动了一个名为 container-name 的容器。这里使用了 -v /mnt/mount/:/home 参数将服务器上的 /mnt/mount/ 目录映射到容器的 /home 目录。另外,-p 8124:22 参数表示将容器的22端口(ssh默认端口)映射到服务器的8124端口,这样后续可以通过ssh协议连接到容器。--name container-name --gpus all 参数为容器指定了一个名字和GPU的使用权限。最后的 image-name 是要运行的docker镜像名称。

接着,使用 docker exec -it container-name /bin/bash 命令进入了容器的交互式shell。在此命令中,-it 参数表示保持交互,并分配一个伪终端。/bin/bash 是要执行的shell命令,即启动bash shell。

在容器内,使用 passwd 命令设置了密码,这个密码将用于后续的ssh登陆。

为了确认ssh是否已经在容器内安装,使用 service ssh status 命令检查ssh服务的状态。如果未安装ssh服务,将会出现 unrecognized service 的提示。

如果ssh未安装,则使用 apt-get update 和 apt-get install openssh-server 命令来安装ssh服务。

安装完成后,使用 service ssh start 命令启动ssh服务。如果一切正常,将会看到 Starting OpenBSD Secure Shell server sshd 的提示,表示ssh服务已经成功启动。

为了修改ssh的配置,首先使用 vi /etc/ssh/sshd_config 命令打开配置文件。在配置文件中,修改了 PermitRootLogin 和 UsePAM 的设置。PermitRootLogin yes 表示允许root用户登录,而 UsePAM no 则表示不使用Pluggable Authentication Modules。修改后,使用 service ssh restart 命令重启ssh服务以应用新的配置。

最后,为了测试ssh连接是否正常,使用 ssh root@127.0.0.1 -p 8124 命令尝试连接到容器。在输入密码后,如果能正常登陆,就表示ssh连接没有问题。对于VSCode的远程连接也是同样的方式,只需要将上述命令中的 127.0.0.1 换成服务器的实际IP地址即可连接到VSCode。

以上就是在服务器上启动docker容器,并在容器内安装和配置ssh服务的全过程。

相关文章:

【VS Code】使用 VS Code 登陆远程服务器上的 Docker 容器

以下命令默认已经构建了一个 Docker Image。 # 在服务器上启动 docker (-p 端口映射,用于后续的 ssh 连接) docker run -itd -v /mnt/mount/:/home -p 8124:22 --name container-name --gpus all image-name# 进入容器中 docker exec -it container-name /bin/bas…...

用Python做数据分析之数据统计

接下来说说数据统计部分,这里主要介绍数据采样,标准差,协方差和相关系数的使用方法。 1、数据采样 Excel 的数据分析功能中提供了数据抽样的功能,如下图所示。Python 通过 sample 函数完成数据采样。 2、数据抽样 Sample 是进行…...

智慧工地建造平台源码、智慧化工地云平台源码

概述:智慧工地管理平台充分运用数字化技术,聚焦施工现场岗位一线,依托物联网、互联网、AI等技术,围绕施工现场管理的人、机、料、法、环五大维度,以及施工过程管理的进度、质量、安全三大体系为基础应用,实…...

Spring Cloud Alibaba中Nacos的安装(Windows平台)以及服务的发现

Spring Cloud Alibaba中Nacos的安装(Windows平台)以及服务的发现 下载安装Nacos解压启动验证是否启动搭建一个简单的Spring Cloud Alibaba项目Spring Cloud Alibaba 以及 Nacos的引入如何选择对应的版本 服务的注册Nacos相关组件的说明 下载安装Nacos G…...

QR码应用实战:Spring Boot与ZXing完美结合

🎏:你只管努力,剩下的交给时间 🏠 :小破站 QR码应用实战:Spring Boot与ZXing完美结合 前言第一: 介绍QR码和ZXing第二:springboot整合zxing添加ZXing依赖生成二维码生成条形码 前言 …...

Leetcode刷题详解——两两交换链表中的节点

1. 题目链接:24. 两两交换链表中的节点 2. 题目描述: 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 …...

Openssl数据安全传输平台019:外联接口类的封装以及动态库的制作 - Bug未解决,感觉不是代码的问题

文章目录 1 外联接口1.1 接口类的封装1.2 共享内存与配置文件 2 json格式配置文件的定义2.1 共享内存中存储的节点结构2.2 服务器端配置文件2.3 客户端配置文件2.4 改进配置文件 3 共享内存类修改4 将接口打包成库(静态/动态)4.1 相关的指令4.1.1 静态库4.1.2 动态库 4.2 外联接…...

YOLO目标检测——安全帽佩戴检测数据集【含对应voc、coco和yolo三种格式标签】

实际项目应用:安全帽佩戴检测数据集可以用于实时检测工作人员是否按照要求佩戴了安全帽,以保障他们的安全数据集说明:安全帽佩戴检测数据集,真实场景的高质量图片数据,数据场景丰富,图片分为带头盔和没带头…...

P4345 [SHOI2015] 超能粒子炮·改 题解---------Lucas定理

题面: 题目 题意概括: T T T 次询问,每次给出 n , k n,k n,k,求 ∑ i 0 k C n i % 2333 \sum_{i 0}^{k} C_{n}^{i} \ \% \ 2333 ∑i0k​Cni​ % 2333。 1 ≤ T ≤ 1 0 5 , 1 ≤ n , k ≤ 1 0 18 1\leq T \leq10^5…...

http代理和ip代理的区别,代理IP带来了哪些好处?

随着互联网的快速发展,代理IP和HTTP代理已成为网络爬虫、网络营销、数据抓取等领域中不可或缺的一部分。但是,很多人在使用代理IP和HTTP代理时并不清楚两者的区别,以及代理IP所带来的好处。本文将详细介绍这两者之间的差异,以及代…...

浅谈电动汽车充电桩检测技术的实现

叶根胜 安科瑞电气股份有限公司 上海嘉定 201801 摘要: 关键词:电动直流和交流充电桩是我国电动汽车充电桩中运行量较大的一种。为了保持正常运行和使用,应高度重视检测、运行和维护工作。因此,有关部门应做好充电桩的检测工作…...

20 分钟搭建一个串流服务器

步骤1:准备Nginx RTMP容器 首先,您可以使用官方的Nginx RTMP Docker镜像来创建Nginx RTMP容器。运行以下命令: docker run -d -p 1935:1935 --name nginx-rtmp tiangolo/nginx-rtmp 这将在后台运行Nginx RTMP容器,将本地1935端…...

Android ActivityLifecycleCallback使用

在 Android 开发中,ActivityLifecycleCallbacks 是一个接口,用于监听和管理应用程序中 Activity 的生命周期事件。通过实现 ActivityLifecycleCallbacks 接口,可以在 Activity 的创建、启动、暂停、恢复、停止和销毁等各个阶段执行相应的操作…...

力扣labuladong——一刷day14

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、力扣21. 合并两个有序链表二、力扣86. 分隔链表三、力扣23. 合并 K 个升序链表四、力扣19. 删除链表的倒数第 N 个结点五、力扣876. 链表的中间结点六、力扣…...

循环神经网络(RNN)与长短期记忆网络(LSTM)

前言: 通过前面的学习,我们以BP神经网络为基础,认识到了损失函数,激活函数,以及梯度下降法的原理;而后学习了卷积神经网络,知道图像识别是如何实现的。今天这篇文章,讲述的就是计算机…...

ArxDbgDocLockWrite 类简介

ArxDbgDocLockWrite 类是一个用于在 AutoCAD 中锁定文档的自定义类。它提供了一些方法来获取和释放对文档的写入锁定,并且还可以设置当前文档。 该类的原理如下: 构造函数 ArxDbgDocLockWrite() 和 ArxDbgDocLockWrite(AcDbDatabase* db) 用于创建 Arx…...

【教3妹学编辑-算法题】环和杆

3妹:2哥,今年春节的放假安排出来了,今年春节放8天假,我们公司除夕提前放一天,总共9天假。 耶~~~ 2哥 :你们公司这么好啊, 我们公司的放假安排还没出来,不知道今年除夕能不能回家了… 3妹&#x…...

解决 eslint 的 Parsing error: Unexpected token 错误

解决 eslint 的 Parsing error: Unexpected token 错误 问题描述:import动态导入,将js文件单独打包时,webpack打包错误 ERROR in ./src/js/main.js Module Error (from ./node_modules/_eslint-loader4.0.2eslint-loader/dist/cjs.js ): F…...

VR全景技术在文化展示与传播中有哪些应用?

引言: 随着科技的不断进步,虚拟现实(VR)全景技术已经成为文化展示与传播领域的一项重要工具。那么VR全景技术是如何改变文化展示与传播方式,VR全景技术又如何推动文化的传承和普及呢? 一.VR技术…...

Linux shell编程学习笔记19:until循环语句

Linux shell编程中的until语句,在功能上与其它编程语言一致,但在结构与其它编程语言又不太一样。在大多数编程语言中,until语句的循环条件表达式一般位于循环体语句的后面,但是在Linux shell编程中,until语句的循环条件…...

云计算 Linux Rocky day05【rpm、yum、history、date、du、zip、ln】

云计算 Linux Rocky day05【rpm、yum、history、date、du、zip、ln】 目录 云计算 Linux Rocky day05【rpm、yum、history、date、du、zip、ln】1.RPM包的一般安装位置2.软件名和软件包名3.查询软件信息4.查询软件包5.导入红帽签名信息,解决查询软件包信息报错6.利用…...

人脸识别技术成为时代需求,视频智能分析网关视频监控系统中AI算法的应用

一、应用背景:时代需求与技术革新的双重驱动​ 1)传统安防系统的困境​:传统监控系统依赖人工逐帧筛查海量视频,在人流密集场所极易漏检,且缺乏实时锁定和主动预警能力,面对突发安全事件响应迟缓。​ 2&a…...

解构与重构:PLM 系统如何从管理工具进化为创新操作系统?

在智能汽车、工业物联网等新兴领域的冲击下,传统产品生命周期管理(PLM)系统正在经历前所未有的范式转换。当某头部车企因 ECU 软件与硬件模具版本失配导致 10 万辆智能电车召回,损失高达 6 亿美元时,这场危机不仅暴露了…...

TK海外抢单源码/指定卡单

​ 抢单源码,有指定派单,打针,这套二改过充值跳转客服 前端vue 后端php 两端分离 可二开 可以指定卡第几单,金额多少, 前后端开源 PHP7.2 MySQL5.6 前端要www.域名,后端要admin.域名 前端直接静态 伪静…...

linux_centos7.x的ifconfig命令显示内容详解

这是一段在Linux系统中执行 ifconfig 命令后得到的网络接口信息输出。ifconfig 命令用于显示或配置网络接口的参数。以下是对输出中各个网络接口信息的详细解释&#xff1a; 1. ens33 接口 ​​状态标志​​&#xff1a;flags4163<UP,BROADCAST,RUNNING,MULTICAST> 表示…...

使用vite-plugin-html在 HTML 文件中动态注入数据,如元数据、环境变量、标题

vite-plugin-html 是一个用于 Vite 构建工具的插件&#xff0c;它可以帮助你在构建过程中动态注入一些 HTML 内容&#xff0c;比如标题、元数据、环境变量等。通过使用这个插件&#xff0c;你可以根据项目的配置和环境变量自动生成带有动态内容的 HTML 文件&#xff0c;适用于 …...

HarmonyOS运动开发:精准估算室内运动的距离、速度与步幅

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在室内运动场景中&#xff0c;由于缺乏 GPS 信号&#xff0c;传统的基于卫星定位的运动数据追踪方法无法使用。因此&#xff0c;如何准确估算室内运动的距离、速度和步幅&#xff0c;…...

Apache IoTDB V2.0.3 发布|新增元数据导入导出脚本适配表模型功能

Release Announcement Version 2.0.3 Apache IoTDB V2.0.3 已经发布&#xff01; V2.0.3 作为树表双模型正式版本&#xff0c;主要新增元数据导入导出脚本适配表模型、Spark 生态集成&#xff08;表模型&#xff09;、AINode 返回结果新增时间戳&#xff0c;表模型新增部分聚…...

AWS之数据分析

目录 数据分析产品对比 1. Amazon Athena 3. AWS Lake Formation 4. AWS Glue 5. Amazon OpenSearch Service 6. Amazon Kinesis Data Analytics 7. Amazon Redshift 8.Amazon Redshift Spectrum 搜索服务对比 核心功能与定位对比 适用场景 关键差异总结 注意事项 …...

mybatis 参数绑定错误示范(1)

采用xml形式的mybatis 错误示例&#xff1a; server伪代码为&#xff1a; Map<String, Object> findMapNew MapUtil.<String, Object>builder().put("applyUnit", appUnit).put("planYear", year ! null ? year : -1).put("code&quo…...