网站审批需要什么手续,辽宁城建设计院有限公司网站,徐州市建设局网站电话号码,wordpress pythonpycharm连接远程服务器的docker容器通常有两种方法#xff1a;
第一种#xff1a;pycharm通过ssh连接已在运行中的docker容器
第二种#xff1a;pycharm连接docker镜像#xff0c;pycharm运行代码再自动创建容器
第一种方法比较通用简单#xff0c;作者比较推崇。
条件…pycharm连接远程服务器的docker容器通常有两种方法
第一种pycharm通过ssh连接已在运行中的docker容器
第二种pycharm连接docker镜像pycharm运行代码再自动创建容器
第一种方法比较通用简单作者比较推崇。
条件
1准备好pycharm专业版社区版没有连接远程服务器的功能
2远程服务器ubuntu已安装好docker
一、配置远程服务器的docker容器
1. 启动并运行交互式容器 docker run -it --name pycharm_test -v /home/th/PycharmProjects/qa/:/workspace/qa -p 8080:22 --gpus all pytorch/pytorch:1.4-cuda10.1-cudnn7-runtime /bin/bash
这里需要映射主机端口到容器端口后续就是通过端口来连通容器的。
-p 8080:22这里主机端口8080 容器端口是22
2.进入交互式后修改容器的root密码 passwd
3. 给容器安装openssh-server和openssh-client
apt-get install openssh-server
apt-get install openssh-client
安装ssh服务时如果出现以下错误 编辑
那就是因为/etc/apt/source.list中的源比较旧了需要更新一下。更新命令以下
apt-get -y update
4. 修改SSH配置文件以下选项
vim /etc/ssh/sshd_config
以上命令打开sshd_config文件在文件最后面添加以下。 PermitRootLogin yes #允许root用户使用ssh登录 5. 重启ssh服务
/etc/init.d/ssh restart 6. 退出容器连接测试
注意以上2-5步骤都是在容器内部操作的。
ssh root127.0.0.1 -p 8080
root容器内部系统的root账号不是服务器的用户账号
127.0.0.1服务器本机ip
-p 端口号这里的端口就是我们在步骤1 启动容器时映射的主机端口号8080不是容器的端口22
在服务器上运行以上命令 这样就测试连接成功了接下来就是到我们本机windows系统的pycharm连接docker容器了。
二、配置pycharm并连接docker容器
1. Configuration配置远程连接 创建SFTP服务docker_test 参考以上截图填写。 路径映射 2. 上传本地代码数据到docker容器中并运行 上传完代码数据后 需要选择设置python编译器 设置好python解释器就可以run代码了 这里要注意一下代码所要的运行环境还需要在docker容器安装配置好比如我这里需要pytorch环境以及python代码运行所需的依赖库都已经在docker容器中通过pip安装好了。
三、 使用Dockerfile创建可以ssh启动的镜像
Dockerfile内容
————————————————————————————————————————
FROM pytorch/pytorch:1.4-cuda10.1-cudnn7-runtime
ADD tools/ /opt/tools/ RUN mkdir ~/.pip/ cp /opt/tools/pip_sources_aliyun.txt ~/.pip/pip.conf \ cp /opt/tools/sources.list /etc/apt/ apt -y update \ apt install -y vim zip \ /opt/conda/bin/pip install -r /opt/tools/requirements.txt --trusted-host http://mirrors.aliyun.com
#以下是设置ssh服务
RUN apt-get install -y openssh-server openssh-client \ echo root:123456 | chpasswd \ echo PermitRootLogin yes /etc/ssh/sshd_config
ENV LANG C.UTF-8 CMD [/usr/sbin/sshd, -D] WORKDIR /work/
————————————————————————————————————————————————
其实在你原来的Dockerfile中添加以下内容就可以
RUN apt-get install -y openssh-server openssh-client \ echo root:123456 | chpasswd \ echo PermitRootLogin yes /etc/ssh/sshd_config
其中
echo root:123456 | chpasswd
123456是设置步骤2的密码
这里注意一下使用Dockerfile创建镜像后并启动运行一个容器后要手动去启动docker容器的ssh
/etc/init.d/ssh start
note不管是第一种还是第二种方法在pycharm连接容器跑代码在代码中所有有关路径都要写绝对路径要不然会运行代码时会报错找不到文件或文件夹。