一、生成镜像和容器

参考我的另一篇博客

也可以根据自己的需求拉取相应的镜像
在这里插入图片描述

1.1 创建容器,需要加端口映射

docker run --name py_gpu --runtime=nvidia -it -p 2222:22 cuda-11.3-pytorch:v1 /bin/bash

在这里插入图片描述

1.2 进入容器

root@67a90f086ded:/# apt-get update
root@67a90f086ded:/# apt-get upgrade
root@67a90f086ded:/# apt-get install vim
root@67a90f086ded:/# apt-get install openssh-server

到此,所有的准备工作完成,下面开始实际操作连接ssh

1.3 设置root密码,后续登录会用到

root@67a90f086ded:/# passwd 

设置123456

1.4 修改配置文件

root@67a90f086ded:/# vim /etc/ssh/sshd_config
#PermitRootLogin prohibit-password
PermitRootLogin yes

UsePAM no # 原先为 yes

注释这一行PermitRootLogin prohibit-password
添加一行PermitRootLogin yes
UsePAM yes 修改为 no #禁用PAM

1.5 重启ssh服务

root@67a90f086ded:/# service ssh restart 
 * Restarting OpenBSD Secure Shell server sshd 

在这里插入图片描述

1.5 本机连接ssh

ssh root@127.0.0.1 -p 2222

在这里插入图片描述连接成功!

二、pycharm连接docker

2.1 允许远程客户端连接

修改docker 允许远程客户端连接

修改配置文件

vim /lib/systemd/system/docker.service

找到 ExecStart 所在行

# ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock

在这里插入图片描述 
重点:为了能够使用此Docker socket,您需要具有进程级别(docker.pid)和文件级别(docker.sock)的适当权限。 因此,执行以下两个命令应该可以解决您的问题
 

sudo chmod a+rwx /var/run/docker.sock
sudo chmod a+rwx /var/run/docker.pid

保存退出,重启docker

sudo systemctl daemon-reload 
sudo systemctl restart docker

验证

# 内部能访问到:
curl 127.0.0.1:2376/version
# 外部访问不到(防火墙,入网规则)
# ubutun 关闭防火墙: sudo ufw disable
systemctl stop firewalld.service
# 再次查看 
systemctl status firewalld.service  #关闭了

2.2 pycharm配置docker

file----Settings
在这里插入图片描述在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐