--- title: "Trae远程开发部署指南" type: source tags: [remote-ssh, trae, ubuntu] date: 2026-04-22 --- ## Source File - [[Vibe Coding/Trae远程开发部署指南]] ## Summary(用中文描述) - 核心主题:使用 Trae IDE 通过 SSH 远程连接 Ubuntu 服务器进行 Docker 容器化项目的开发工作流配置 - 问题域:远程开发环境搭建、Docker 与 IDE 集成、内网穿透访问 - 方法/机制:SSH 免密登录 → Trae Remote-SSH 连接 → Docker 容器 Attach 或宿主机文件编辑 → Tailscale/FRP 公网访问 - 结论/价值:提供一套完整的"本地 UI + 远程服务器开发"解决方案,支持 Attach 容器调试和 docker-compose 编排两种模式 ## Key Claims(用中文描述) - Trae 原生支持 VS Code 插件生态,通过 Remote-SSH 插件可远程连接 Ubuntu 服务器 - 开发模式 A(Attach 容器):适合调试,环境完全隔离,直接使用容器内语言环境 - 开发模式 B(宿主机文件 + Docker CLI):适合编排 docker-compose.yml 和管理多容器配置 - 用户必须加入 docker 用户组才能让 Trae 的 Docker 插件正常工作 - 文件权限(UID/GID)问题会导致 Volume 挂载生成的 Build 文件归属 root,宿主机无法操作 ## Key Quotes > "开发环境的核心在于 Bind Mount(绑定挂载),实现代码修改实时生效" — 解释开发环境 docker-compose.yml 的设计原则 > "SSH 登录服务器执行:sudo usermod -aG docker $USER,必须注销并重新登录" — Docker 用户组配置关键步骤 > "不要直接暴露 SSH 端口,建议安装 Tailscale 或 Cloudflare Tunnel" — 内网穿透安全建议 ## Key Concepts - [[Remote-SSH]]:通过 SSH 协议将本地 IDE 连接到远程服务器,代码运行在服务器端但 UI 在本地 - [[Bind Mount]]:Docker Volume 挂载方式,将宿主机目录映射到容器内,实现代码修改实时生效 - [[Attach 容器]]:将 IDE 直接连接到正在运行的 Docker 容器内部进行开发调试的模式 - [[Docker 用户组]]:将用户加入 docker 组使其无需 sudo 即可运行 docker 命令 - [[SSH Config]]:SSH 客户端配置文件(~/.ssh/config),定义 Host 别名和连接参数 - [[SSH 免密登录]]:通过 ssh-copy-id 公钥分发实现无密码 SSH 连接 - [[Docker Compose 开发模式]]:使用 docker-compose.yml 编排开发环境,通过 volumes 实现源码挂载 ## Key Entities - [[Trae]]:国产 AI IDE,基于 VS Code,支持 Remote-SSH 远程开发,与 Cursor 功能类似 - [[Ubuntu 2]]:开发服务器(192.168.3.45),存放源码,运行带 Bind Mount 的开发容器 - [[Ubuntu 1]]:生产服务器(192.168.3.47),运行生产容器,通过 Docker 卷持久化数据 - [[ThinkBook]]:本地笔记本,作为 Trae UI 端连接远程服务器 - [[Tailscale]]:零配置 VPN 工具,可替代 FRP 提供安全的公网 SSH 访问 - [[Docker]]:容器化平台,远程开发的核心载体 ## Connections - [[Trae]] ← remote-ssh ← [[Ubuntu 2]] - [[Docker]] ← hosts ← [[Ubuntu 2]] - [[Docker Compose]] ← manages containers on ← [[Ubuntu 2]] - [[Remote-SSH]] ← 公网穿透方案 ← [[Tailscale]] / [[frp]] - [[Ubuntu 2]] ← 公网访问 ← [[frp]] (ubuntu2-ext: ubuntu2.ishenwei.online:60024) ## Contradictions - 无已知冲突内容