利用docker在服务器配置带有torch的环境,使用vscode远程连接容器进行训练

在服务器上利用docker拉取镜像

1.在docker hub上拉取想要使用的镜像,如果想要单纯带有torch的conda环境,选择下方的pytorch/pytorch就可以。
在这里插入图片描述
2.点开后。点击下方的Tags按钮会有很多的版本可以选择。我这里选择的是torch1.13.0,cuda11.6。复制下图的命令到服务器中运行即可
在这里插入图片描述
但是在拉取的过程中可能会报错unauthorized,如果报错,在拉取之前需要先在服务器登录自己的docker账号。(需要在docker hub上提前注册)

docker login
用户名
密码

3.通过docker images,可以查看是否拉取成功。
在这里插入图片描述
4.利用镜像创建容器。注意这里我们必须要设置端口8022:22,因为后续通过端口连接到容器,如果不留下端口,最后只能连接到服务器。

docker run -it --name 容器的名字 --gpus all -p 8022:22 -v /path1(本机要挂载地址):/path2(容器要挂载地址):rw pytorch/pytorch:1.13.0-cuda11.6-cudnn8-devel

在容器内安装SSH服务

1.首先启动容器,进入容器

docker start 容器名称//启动容器
docker exec -it 容器名称 bash//进入容器

2.更新;安装vim;设置root密码(为了后续连接)

apt-get update//更新
apt-get install vim//安装vim
apt-get install openssh-server
passwd//设置密码

3.配置/etc/ssh/sshd_config文件。在文件/etc/ssh/sshd_config中添加下面的代码:

# 启用公钥私钥配对认证方式
PubkeyAuthentication yes
# 允许root用户使用ssh登录
PermitRootLogin yes

4.重启SSH服务,service ssh restart。最后通过docker ps查看容器port是否显示 0.0.0.0:8022->22/tcp, :::8022->22/tcp。
5.通过个人主机测试能否连接容器,按下win+r。输入ssh root@ip -p 8022。(这里一定要附上8022才能连接到容器)
在这里插入图片描述

通过Vscode连接容器

1.首先安装Vscode连接的插件。(忘了有哪些了,可以参考其他博客)
新建远程,然后在上方输入ssh root@ip地址 -p 8022
在这里插入图片描述
随后根据提示进行选择,输入密码完成连接。
2.以上完成了连接,我们需要选择python解释器。首先在vscode中下载扩展python。按下快捷键“Ctrl+Shift+P”,输入“python: select interpreter”,点击“选择解释器”,就会列出在系统中找到的Python环境,点击需要的python解释器即可。
Alt
3.打开文件夹开始新建文件,输入以下测试代码运行。结果如下所示。

import torch
# 检查PyTorch版本
print(f"PyTorch version: {torch.__version__}")
# 检查是否可以使用CUDA(GPU)
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
print(f"Using device: {device}")
# 创建两个随机张量
x = torch.rand(3, 3, device=device)
y = torch.rand(3, 3, device=device)
# 进行矩阵乘法运算
z = torch.matmul(x, y)
# 输出结果
print("Matrix x:")
print(x)
print("\nMatrix y:")
print(y)
print("\nMatrix multiplication result (z = x * y):")
print(z)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值