Docker基本命令
- 创建自己的docker容器:
docker run --net host --name Container_name --gpus all --shm-size 1t -it -v Your_Path:Your_Dir mllm:mac /bin/bash
- docker run:用于创建并启动一个新容器
- -name:为当前新建的容器命名
- -gpus:指定该容器可以访问的GPU。“all”表示允许容器访问宿主机上的所有 GPU(NVIDIA GPU)
- -shm-size:设置容器的共享内存
- -it:-i(交互模式):保持 STDIN 打开,允许交互式输入;-t(分配伪终端):让容器像终端一样运行。
- v:指定挂载宿主机目录,将Your_Path替换为你的主路径,Your_Dir为指定文件夹(好像不重要)
- mllm:mac:指定使用的docker镜像名称和标签
- /bin/bash:容器启动后运行的命令,这里是启动 Bash shell,进入交互式终端
- 启动docker
docker start Container_name
- 进入docker
docker exec -it Container_name /bin/bash
- 删除docker
- docker ps,找到你自己对应容器的 ID
- docker stop ID,暂停容器
- docker rm ID, 删除容器
VS Code 远程连接服务器
- 下载Remote-SSH
- 点击左下角的图标,选择
连接到主机
(英文版对应为:Connect to Host...
)
- 选择
添加新的主机
按照ssh name@ip:port
的格式输入你需要连接的远程服务器
选择写入对应的配置文件
写入成功后打开对应的配置文件可以看到服务器的信息被成功添加
- 再次点击左下角的连接图标,选择
连接到主机
就可以看到已经写入配置文件的Host,选择你的服务器
- 输入密码,选择Linux即可远程连接上你的服务器!
VS Code远程通过连接Docker
方法一:通过SSH连接
前提条件:VS Code已经安装了Remote-SSH拓展
- 进入你的docker:
docker exec -it Container_name /bin/bash
- 在容器中安装SSH服务:
apt-get update apt-get install openssh-server apt-get install openssh-client apt-get install ssh apt-get install vim
- 修改容器内的ssh文件信息,将容器的端口号暴露出来允许root用户使用ssh登录
打开文件后,向文件中添加下列内容,保存后退出:vim /etc/ssh/sshd_config
Port 10008 PermitRootLogin yes #允许root用户使用ssh登录
- 重启ssh服务
/etc/init.d/ssh restart
- 设置root用户连接的密码
passwd
- 在容器中设置开机自启动ssh服务
在 Docker 容器内运行 SSH 服务时,当容器停止后 SSH 服务会随之关闭,而当容器重新启动后 SSH 服务默认情况下不会自动重启。这是因为 Docker 容器本身是一个隔离的环境,容器内的服务与主机环境是相互独立的。本操作可以用以解决restart容器后使ssh自动启动,从而不影响远程连接。
在.bashrc末尾添加如下代码vim /root/.bashrc
service ssh start
- 启动ssh服务
service ssh start
- 在VS Code中重复上述远程连接的操作即可连接docker,需要注意.ssh/config配置文件中用户名就写root,端口号写上面步骤中设置的端口号。不要使用原本连接这个服务器的用户名和端口号
方法二:使用Vscode中的Docker拓展,基于服务器访问容器
- 在VS Code的应用商店中下载Docker拓展
参考:https://blog.csdn.net/qq_19716143/article/details/132310200