Pycharm ssh docker container【最小白版】远程连接服务器上的容器

这篇文章以快速使用为目的,介绍一下自己对docker远程连接的理解。这次团队在服务器上给了一个docker镜像,我第一次接触docker,发现其实远程连接它和远程连接conda环境在使用上没有很大区别。

基本概念

(白话便于理解,不严谨之处请包涵。)

Docker镜像是容器的可执行文件,Docker容器是一个程序,在服务器上每个用户都可以运行一个自己的容器,初始化的容器提供的环境是完全一样的,保证了多次快速部署。

docker ps 
# 查看正在运行的容器
# 观察一下PORTS,看看其他人都使用了什么端口

docker images
# 查看服务器上的镜像,找到自己要使用的镜像

运行容器

# 交互式启动容器,<REPOSITORY:TAG> 可用 <IMAGE ID>替换
docker run -it <REPOSITORY:TAG> 

# 后台启动容器
# '-d' 为后台运行此时不会自动进入容器
# '-p' 设置端口,第一个数字是服务器的端口号,可以根据可用的端口号自行指定;
##     第二个数字是容器的端口号,其中22是ssh应用的默认端口
docker run -itd -p 8085:22 <IMAGE ID>

# 确认容器运行,查看容器ID
docker ps

# 进入容器,这条命令开启了一个交互式终端
docker exec -it <CONTAINER ID> /bin/bash

配置容器内环境

进入容器后的命令行提示符示例:root@<CONTAINER ID>:/workspace#

# 在容器内首先建议为root设置密码
passwd

# 安装必要的库
apt-get update
apt-get upgrade
apt-get install vim
apt-get install openssh-server
# 安装过程需要选择地理区位,随便填一下就好

# 修改ssh配置文件
vim /etc/ssh/sshd_config

密码是用来充分控制这个容器内环境的,在后面pycharm连接的时候会使用。

新启动的容器类似一台新机,安装vim工具是便于我们使用命令行修改ssh配置文件,安装openssh-server是为了使用ssh,这一步需要几分钟。

SSH配置文件

ssh配置文件初始为默认值,可能根据不同操作系统有不同情况。

只需要添加一行 PermitRootLogin yes 即可,(原始的#PermitRootLogin *****)可以删掉。

【vim使用小tip】 vim有编辑模式和命令模式,首先[i] 切换到编辑模式,修改后[esc]切换到命令模式,输入:wq 命令保存退出。

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

# 退出终端
exit

退出终端后,命令行提示符又恢复到服务器默认的,此时运行docker ps确认一下容器仍在运行。

docker ps

# 在服务器上测试能否连接到容器的ssh应用
ssh root@0.0.0.0 -p 8085
# 可能需要输入yes, 并输入刚刚设置的容器密码,之后会进入容器,同样可以exit退出。

完成这一步,服务器环境、容器环境已经配置好了。但是这样的一个容器,没有图形化界面查看起来很不方便。所以我们可以在本地创建一个容器内文件的映射。

Pycharm 配置

打开pycharm新建一个空白工程。首先配置python解释器,连接到容器中的解释器。

Tools>>Deployment>>Configuration, 先填Connection:

1. 首先我们测试一下能够正常连接服务器:host 填 服务器ip,port 先填22,用户、密码填自己在服务器上的身份(不是刚刚passwd配置的),test connection成功。

2. 然后,port 改填自己指定的端口(eg. 8085),用户改为root,密码改填刚刚在容器内配置的密码,test connection 成功。

然后再填Mapping, Deployment Path填到容器中的工程文件夹即可。

然后我们Downloads from ..., 就可以在本地同步容器中的文件啦(建议先查看大小)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值