You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyCharm连接AWS ECS集群Docker远程解释器(需经堡垒机)方案咨询

解决方案:PyCharm连接AWS ECS无公网IP容器(通过堡垒机)

我刚好折腾过一模一样的场景,PyCharm其实可以通过SSH隧道+Docker远程连接的组合搞定这个需求,具体步骤一步步来:

1. 先建立本地到ECS实例的SSH隧道(通过堡垒机)

首先得把ECS实例上的Docker daemon端口转发到本地,这样PyCharm就能间接访问到它。在本地终端执行下面的SSH命令(替换成你的实际参数):

ssh -i /path/to/your-ecs-key.pem -L 23750:localhost:2375 ubuntu@堡垒机公网IP -o ProxyCommand="ssh -W %h:%p -i /path/to/your-bastion-key.pem ubuntu@堡垒机公网IP"
  • 解释一下参数:
    • 23750:本地用来映射的端口,随便选一个没被占用的就行
    • localhost:2375:ECS实例上Docker daemon默认的非加密端口(如果是生产环境建议用TLS加密的2376端口,需要额外配置证书)
    • 两个ubuntu@堡垒机公网IP:第一个是连接堡垒机,第二个是通过堡垒机跳转ECS实例的代理命令
    • 两个-i后面是对应的密钥文件路径,分别是堡垒机和ECS实例的密钥

执行后保持这个终端窗口打开,隧道就会持续生效。如果想让隧道后台持久化,可以用autossh工具代替普通ssh。

2. 在PyCharm中配置Docker远程连接

打开PyCharm,按步骤操作:

  • 进入File > Settings(Windows/Linux)或者PyCharm > Preferences(Mac)
  • 找到Build, Execution, Deployment > Docker选项
  • 点击左上角的+号,添加新的Docker连接
  • 选择TCP socket类型,在Engine API URL里填tcp://localhost:23750(就是刚才本地映射的端口)
  • 点击Test Connection,如果弹出“Connection successful”,说明已经能连上ECS实例的Docker了

3. 配置Python远程解释器指向目标容器

接下来把PyCharm的解释器关联到ECS里的目标容器:

  • 回到Settings/Preferences,找到Project: [你的项目名] > Python Interpreter
  • 点击右上角的齿轮图标,选择Add
  • 在弹出的窗口左侧选择Docker,然后在右侧选择刚才配置好的Docker连接
  • 切换到Image/Container标签页,找到你运行中的目标ECS容器(注意容器必须处于运行状态)
  • 选中容器后,PyCharm会自动检测容器内的Python解释器路径,确认无误后点击OK保存

几个关键注意事项

  • ECS实例的Docker配置:要确保ECS实例上的Docker daemon允许远程访问。修改/etc/docker/daemon.json,添加:
    {
      "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
    }
    
    然后重启Docker服务:sudo systemctl restart docker。生产环境建议用TLS加密,避免端口暴露风险。
  • 安全组配置:堡垒机的安全组要开放22端口给你的本地IP;ECS实例的安全组要开放2375/2376端口给堡垒机的内网IP。
  • 隧道持久化:如果不想每次手动开终端建隧道,可以用autossh设置后台运行,比如:
    autossh -M 0 -f -i /path/to/your-ecs-key.pem -L 23750:localhost:2375 ubuntu@堡垒机公网IP -o ProxyCommand="ssh -W %h:%p -i /path/to/your-bastion-key.pem ubuntu@堡垒机公网IP"
    

这样配置完成后,你就能在PyCharm里正常使用ECS容器作为远程解释器,调试代码、运行程序都和本地容器一样顺畅。

内容的提问来源于stack exchange,提问作者gCoh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:02:31