【声呐仿真】学习记录0.5-配置ssh远程连接docker、在docker中使用nvidia显卡

【声呐仿真】学习记录0.5-配置ssh远程连接docker、在docker中使用nvidia显卡

  • 配置ssh远程连接docker
    • 1.端口映射
    • 2.配置ssh
  • 在docker中使用nvidia显卡
  • 配置CUDA

注意:之前已经创建过容器的,需要打包成镜像,重新创建容器,因为要在创建的时候做端口映射

Docker隔离服务器不同用户环境

如何设置SSH远程连接docker容器_java ssh 执行docker命令-

配置ssh远程连接docker

1.端口映射

打包镜像:

docker ps
docker commit 容器id 镜像名

在这里插入图片描述

创建容器实例,将服务器的50003端口映射到容器的22端口上:

docker run -it -d -p 50003:22 ros

在这里插入图片描述

为了确保万无一失,所以在创建容器时加上之前的参数(环境变量env可以不加):

sudo docker run -it -d -p 50003:22 --gpus all -v /home/ouc/ros_noetic:/data --device=/dev/dri --group-add video --volume=/tmp/.X11-unix:/tmp/.X11-unix  --env="DISPLAY=$DISPLAY" --env="QT_X11_NO_MITSHM=1" --name=ros_noetic_2 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all ros /bin/bash

在这里插入图片描述

-----------------也可先执行下面的操作,然后打包镜像再创建容器--------------------

2.配置ssh

在容器实例里面执行下列指令:

apt-get update 
apt-get install openssh-server # 安装sshd 
which sshd

创建权限分离目录:

mkdir /var/run/sshd

设置密码,后续远程连接使用:

passwd

修改ssh配置文件,设置为允许root远程登录:

vim /etc/ssh/sshd_config

将PermitRootLogin prohibie-password 修改为:PermitRootLogin yes 即可。若没有则手动加上:

在这里插入图片描述

确保此时容器是开启状态(ssh连接服务器,开启的容器):

在这里插入图片描述

关闭服务器后,尝试连接容器:

ssh root@服务器ip -p 50003

刚开始没有映射端口的时候,报第一个错:
映射端口后,报第二个错:在这里插入图片描述

如何处理ssh: connect to host port 22: Connection refused

端口应该是已经开放了,但是还是连不上

sudo netstat -tlpn | grep 50003

在这里插入图片描述

解决了:

service ssh restart

在创建带端口映射的容器后,需要进入容器重启一下ssh才能远程

在这里插入图片描述

我一直以为容器关机开机,ssh服务相当于重启了,所以一直没有手动重启,没想到在这上面卡了这么长时间

使用ssh直连docker容器的方法 :解决Connection refused报错_docker connection refused-

在docker中使用nvidia显卡

在容器中查看显卡信息和CUDA版本:

nvidia-smi
nvcc --version

在这里插入图片描述

docker run -itd --gpus all --name 容器名 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all 镜像名
怎么在docker中使用nvidia显卡

报错:docker: Error response from daemon: could not select device driver “” with capabilities: [[gpu]].
Docker 使用GPU 错误之Error could not select device driver ““ with capabilities: [[gpu]]

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.listsudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker

在这里插入图片描述
在这里插入图片描述
少许报错,但是好像没有影响:

which nvidia-container-runtime

在这里插入图片描述

别忘了重启docker,然后创建容器:

在这里插入图片描述

配置CUDA

声呐仿真需要这个库Field-Robotics-Lab/nps_uw_multibeam_sonar:带有NVIDIA Cuda库的多波束声纳插件在这里插入图片描述

所以按需配置CUDA:多波束声纳|DAVE项目 — Multibeam Sonar | Project DAVE

我的NVIDIA驱动程序版本是535,准备安装CUDA 12.2(服务器上的是11.7,不知道后期会有影响不会)
在这里插入图片描述

CUDA工具包存档|NVIDIA开发者 — CUDA Toolkit Archive | NVIDIA Developer
Ubuntu22.04安装CUDA和cuDNN详细过程记录_ubuntu22.04安装cudnn-

在这里插入图片描述

wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
sudo sh cuda_12.2.2_535.104.05_linux.run

注意安装的时候取消Driver(光标移动到Driver,然后按enter/空格即可取消,不取消会导致安装终止)
安装完会有个警告 Incomplete installation! 不需要管

配置环境变量:

vim ~/.bashrc
export PATH=$PATH:/usr/local/cuda-你的版本/bin  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-你的版本/lib64  
source ~/.bashrc
nvcc -V

在这里插入图片描述

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

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

相关文章

【C++庖丁解牛】C++11---右值引用和移动语义

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1 左值引用和右值引用2 左…

第一个Spring Boot程序

目录 一、Spring Boot介绍 二、创建Spring Boot项目 1、插件安装(专业版不需要) 2、创建SpringBoot项目 (1)这里如果插件下载失败,解决方案: (2)项目启动失败,解决…

web测试基础知识

目录 web系统的基础 web概念(worldwideweb) 网络结构 发展 架构 B/S C/S P2P 工作原理 静态页面 动态页面 web客户端技术 浏览器的核心--渲染引擎 web服务器端技术 web服务器 应用服务器 集群环境 数据库 案例-URL 协议类型 主机名 端口 IP地址 分类 …

C#开发的全套成熟的LIS系统源码JavaScript+SQLserver 2012区域云LIS系统源码

C#开发的全套成熟的LIS系统源码JavaScriptSQLserver 2012区域云LIS系统源码 医院云LIS系统是一套成熟的实验室信息管理系统,目前已在多家三级级医院应用,并不断更新。云LIS系统是为病人为中心、以业务处理为基础、以提高检验科室管理水平和工作效率为目标…

贪心算法练习day.1

理论基础 贪心算法是一种常见的解决优化问题的方法,其基本思想就是在问题的每个决策阶段,都选择当前看起来最优的选择,即贪心地做出局部的最优决策,以此得到全局的最优解,例如在十张面额不同的钞票,让我们…

润申信息企业标准化管理系统 AddNewsHandler.ashx 任意用户创建漏洞复现

0x01 产品简介 润申信息科技企业标准化管理系统通过给客户提供各种灵活的标准法规信息化管理解决方案,帮助他们实现了高效的标准法规管理,完成个性化标准法规库的信息化建设。 0x02 漏洞概述 润申信息企业标准化管理系统 AddNewsHandler.ashx 接口处存在任意用户创建漏洞,…

Linux安装部署Tomcat

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ Linux安装部署Tomcat //将tomcat压缩包解压到对…

python识别电脑是windows还是linux

代码实现 import osif os.name nt:print(当前操作系统是 Windows) elif os.name posix:print(当前操作系统是 Linux 或 Unix 类型的系统) else:print(未知的操作系统)

kubernetes中的副本控制器rc(replicationcontrollers)和rs(replicasets)

一、rc控制器replicationcontrollers rc控制器就是控制相同pod副本数量 使用rc控制器资源创建pod,设定创建pod资源的数量 1.1 案例 1.1.1、创建资源清单 [rootmaster rc-demo]# cat rc.yaml apiVersion: v1 kind: ReplicationController metadata: name: rc01 …

个人搭建alist网盘的经验记录备忘

1、搭建宝塔LINUX面板,安装Docker 2、添加仓库 3、从镜像拉取xhofe/alist:latest 4、添加容器 5、新建一个网站,别忘记申请个SSL证书,重要的是反向代理 6、新建个mysql数据库 7、修改alist数据库的链接地址,方便自己备份&a…

如何有效地进行汽车制造业文件共享,一文了解

随着数字化转变,企业的业务文件大多通过电子形式在内外部流转。这增加了外发文件数据泄露或被篡改的风险,如何保护外发文件安全已成为企业不容忽视的课题。其中汽车制造业是一个高度依赖文件共享与协作的行业,涉及设计图纸、技术文件、供应链…

Docker命令总结

一.Docker常用命令总结 1.镜像命令管理 指令描述ls列出镜像build构建镜像来自Dockerfilehistory查看历史镜像inspect显示一个或多个镜像的详细信息pull从镜像仓库拉取镜像push推送一个镜像到仓库rm移除一个或多个镜像prune一处未使用的的镜像,没有被标记或被任何容…

【用户投稿】Apache SeaTunnel 2.3.3+Web 1.0.0版本安装部署

项目概要 Apache SeaTunnel 是一个分布式、高性能、易扩展的数据集成平台,用于实时和离线数据处理,支持多种数据源之间的数据迁移和转换。 其中,Apache-seatunnel-web-1.0.0-bin.tar.gz和apache-seatunnel-2.3.3-bin.tar.gz代表了 Apache SeaTunnel Web…

RTT学习 开发环境搭建

添加文件到工程 BSP下的applications文件夹用于存放用户自己的应用代码,目前只有一个main.c文件,如果用户的应用代码不是很多,建议相关源文件都放在这个文件夹下面,在applications文件夹下新增两个简单的文件hello.c和hello.h。 …

什么是正向代理和反向代理

正向代理和反向代理是两种不同的代理服务器配置方式,它们在代理的方向和作用上有所不同。 一、正向代理(Forward Proxy) 代表客户端发送请求到其他服务器的代理服务器。客户端将请求发送给正向代理服务器,然后由正向代理服务器代…

如何使用OSI七层模型的思路进行Linux网络问题排障?

在运维工作中,我们可能经常遇到诸如服务器无法远程连接、网站无法访问等各种网络问题。此时你是否想过,我们常背的OSI七层模型,能在处理这样的实际问题中发挥什么样的作用呢? 基于OSI架构的方法论,我们可以使用自下而…

ATFX汇市:欧元区和美国的制造业PMI将发布,市场预期乐观

ATFX汇市:今日16:00,市场研究机构Markit将发布欧元区4月制造业PMI初值,前值为46.1,预期值46.6,预期将增加0.5个百分点。历史数据看,最近三个月,欧元区的制造业PMI均处于较高水平,期间…

Springboot+Vue项目-基于Java+MySQL的房屋租赁系统(附源码+演示视频+LW)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:Java毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 &…

前端开发攻略---封装日历calendar组件(纯手搓),可以根据您的需求任意改变,可玩性强

1、演示 2、代码 <template><div class"box" v-if"startMonth.year"><div class"left"><div class"top"><span class"iconfont" click"changeMonth(-1)">左</span><span&…