pycharm如何远程连接服务器上的docker容器

Posted 夏小悠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pycharm如何远程连接服务器上的docker容器相关的知识,希望对你有一定的参考价值。

文章目录

前言

  在上篇博客已经介绍了pycharm如何远程连接服务器,本篇文章介绍一下 pycharm 如何远程连接服务器上的docker容器,并在本地完成代码的运行与调试。

  所需软硬件环境:

环境版本
local systemwindows 10
service systemubuntu 18.04
docker20.10.7
docker systemubuntu 18.04
local IDEpycharm 2021.1.3

1. 配置docker

# 运行镜像
# 我这里使用的镜像是 sophgo/tpuc_dev:latest
docker run --privileged --name myname1234 -p 11777:22 -v $PWD:/workspace -it sophgo/tpuc_dev:latest

  对参数做个说明:
  --privileged,权限全开,不利于宿主机安全,生产环境应当禁止对外开放,不过这里仅是测试。
  --name,给容器命名,可以随便写个,这里是myname1234
  -p,端口映射,本地的11777端口与docker容器的22端口做映射。本地的端口可以随便设置,但容器的端口必须是22,因为我们要使用ssh来连接docker
  -v,目录映射,本地当前目录下的workspace目录与容器的/docker目录做映射,$PWD 指的是我本地的目录,即xxx/workspaceworkspace目录下存有代码文件tpu-mlir
  -it,以交互模式运行镜像。

  进入容器以后修改容器的root密码:

# 输入以下指定来修改密码
passwd


  在容器内安装ssh

# 更新数据源
apt-get update

# 安装 ssh
apt-get install openssh-server
apt-get install openssh-client

# 修改 ssh 的配置文件
vim /etc/ssh/sshd_config
# 在默认添加以下内容
PermitRootLogin yes # 允许 root 用户使用 ssh 登录

# 重启 ssh
/etc/init.d/ssh restart

  在服务器上进行ssh连通性测试:

ssh root@192.168.1.151 -p 11777
# 192.168.1.151为当前服务器的 ip

2. 配置pycharm

  pycharm的配置和pycharm如何远程连接服务器这篇文章中的一致,这里不再赘述。

  记得更改下端口,这里是访问服务器上的11777端口,也就是容器的22端口:


  在pycharm中将本地系统上(ps:不是服务器上的哦)的D:\\Python\\tpu-mlir与容器中的/workspace/tpu-mlir做路径映射:


  然后按照这篇文章将容器中的代码同步到本地的目录中:

  同步前:


  同步后:

  再配置pycharm中的python解释器,使用的是容器中的python
  选择配置好的 ssh,由于是第一次连接,因此需要将ssh的配置保存在IDE的设置中,这里直接Move


  分别选择docker容器的python路径和代码路径,然后点击Finish即完成配置:

结束语

  pycharm如何远程连接服务器pycharm如何远程连接服务器上的docker容器这两篇文章相辅相成,可以作为pycharm通过远程连接进行开发相关方面的参考资料。

以上是关于pycharm如何远程连接服务器上的docker容器的主要内容,如果未能解决你的问题,请参考以下文章

在远程服务器上的 docker 容器中设置本地 PyCharm 远程解释器

Pycharm连接远程服务器上的工作目录

Docker远程上的Pycharm远程解释器:[Errno 2]没有这样的文件或目录

pycharm远程连接docker开发

pycharm远程使用服务器上的docker建的anaconda3环境

pycharm远程使用服务器上的docker建的anaconda3环境