如何设置SSH远程连接docker容器

本文详细介绍了如何通过SSH远程连接Docker容器,包括创建容器、设置端口映射、安装SSH服务、修改配置、设置容器密码以及远程登录等步骤。同时提供了常用的Docker命令,帮助读者更好地管理和操作容器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建容器

在ubuntu镜像中创建容器,并将docker服务器的50003端口映射到容器的22端口上

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

( -d : 保持在后台运行)

或者先创建容器后再启动

docker run -it -p 50003:22 ubuntu:14.04
docker start f965baf8acfd

进入容器

查看启动容器

docker exec -it f965baf8acfd /bin/bash

设置容器密码

设置容器root密码
修改容器的root密码:passwd
密码设置为:123456

安装ssh及修改配置

安装ssh server

apt-get update
apt-get install openssh-server

安装好后查看SSH是否启动
输入”ps -e |grep ssh“–>回车–>有sshd,说明ssh服务已经启动
如果没有启动,输入”service ssh start“–>回车–>ssh服务就会启动

修改配置

修改配置文件”/etc/ssh/sshd_config” 获取远程ROOT权限
把配置文件中的”PermitRootLogin without-password“加一个”#”号,把它注释掉–>再增加一句”PermitRootLogin yes“–>保存

重启ssh服务

service ssh start

远程连接

ssh远程登录上述创建的容器:

ssh root@192.168.1.99 -p 50003

扯远了

给运行中的容器设置端口映射

1.提交运行中的容器为镜像
2.运行镜像并添加端口
在这里插入图片描述

docker ps
docker commit 8c7ad592a3bb test
docker run -it -d -p 51000:22 -p 51001:3306 test:latest

一些常用Docker命令

----------------- docker ps 查看当前正在运行的容器

----------------- docker ps -a 查看所有容器的状态

----------------- docker start/stop id/name 启动/停止某个容器

----------------- docker attach id 进入某个容器(使用exit退出后容器也跟着停止运行)

----------------- docker exec -ti id 启动一个伪终端以交互式的方式进入某个容器(使用exit退出后容器不停止运行)

----------------- docker images 查看本地镜像
----------------- docker rm id/name 删除某个容器
----------------- docker rmi id/name 删除某个镜像

----------------- docker run --name test -ti ubuntu /bin/bash 复制ubuntu容器并且重命名为test且运行,然后以伪终端交互式方式进入容器,运行bash

### 配置 VSCode 远程连接带有 CUDA 的 Docker 容器 为了实现这一目标,需确保已按照指导完成必要的软件安装和配置工作[^1]。具体来说,这涉及到几个方面: #### 创建并启动带 CUDA 支持的 Docker 容器 创建容器时应指定 GPU 资源分配参数 `--gpus` 和端口映射 `-p 8022:22` 来允许外部访问 SSH 服务,并通过卷挂载选项 `-v` 将主机目录与容器内部共享以便于数据交换[^3]。 ```bash docker run -it --name cuda_dev_container --gpus all -p 8022:22 -v /local/path:/container/path pytorch/pytorch:latest-cuda-devel ``` #### 在容器内安装 SSH 服务 进入新创建的容器后,需要进一步设置 SSH 服务器以供远程登录使用。通常情况下,可以通过包管理工具如 apt-get 或 yum 来获取 openssh-server 并开启相应服务。 ```bash apt-get update && apt-get install -y openssh-server service ssh start ``` #### 设置 VSCode Remote-SSH 扩展 在本地计算机上打开 Visual Studio Code 应用程序,前往扩展市场搜索 "Remote - SSH" 插件并点击安装按钮。之后可通过命令面板 (Ctrl+Shift+P) 输入 “Remote-SSH: Connect to Host...”,输入之前设定好的 IP 地址或者域名加上用户名组合形式来建立连接[^2]。 #### 开始开发流程 一旦成功建立了到目标机器上的安全 Shell 会话,则可以在左侧活动栏中的“资源管理器”视图里找到对应的工作区文件夹;此时即可如同操作本机项目一样编辑、编译乃至运行基于 NVIDIA CUDA 架构的应用程序了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值