Windows系统下如何通过SSH连接主机运行Django应用
操作说明
核心概念先理清
ssh user@your-ip-or-domain 要连接的是公网可访问的远程Linux云服务器,既不是本地VirtualBox虚拟机,也不是本地Docker运行的Linux镜像:
- freenom仅提供免费域名注册服务,不提供主机资源,你需要自行准备一台公网Linux服务器(常规选Ubuntu 22.04系统即可,普通配置的轻量云服务器就足够跑Django+Nginx项目)
- 申请到freenom域名后,需要在域名解析后台添加A记录,指向你所持云服务器的公网IP,解析生效后才能通过域名ssh连接,未配置解析时直接用服务器公网IP连接也可以。
Windows环境下的ssh连接方法
Windows 10 1809及以上版本、Windows 11均自带OpenSSH客户端,无需额外安装虚拟机或Docker即可执行连接:
- 打开系统自带的命令提示符、PowerShell或Windows Terminal
- 直接输入ssh命令即可,将
user替换为云服务器的默认登录用户名(Ubuntu系统默认通常为root或ubuntu),your-ip-or-domain替换为云服务器公网IP或已解析生效的域名,示例:ssh root@123.45.67.89 - 首次连接会弹出主机指纹确认提示,输入
yes回车后,输入服务器登录密码(或加载提前配置的SSH私钥)即可成功连接远程主机。 - 如果系统版本过低未自带OpenSSH,直接在系统设置-可选功能中添加「OpenSSH客户端」组件即可正常使用。
关于你提到的两种本地方案的适用场景
- 本地VirtualBox安装Linux虚拟机、本地Docker运行Linux镜像仅能用于本地流程测试,无法完成教程中Let's Encrypt证书申请、公网部署的核心步骤:Let's Encrypt签发证书时需要校验域名的公网访问控制权,本地环境无公网静态IP、无法被公网正常访问,无法通过校验。
- 如果暂时不想采购云服务器想先熟悉命令流程,可以用VirtualBox安装Ubuntu虚拟机,将虚拟机网络设置为桥接模式获取局域网IP,通过ssh连接虚拟机局域网IP练习操作,但正式上线部署必须使用公网云服务器。
「Running the Containers」章节操作逻辑
该章节所有操作均需要在ssh连接成功后的远程云服务器上执行,不要在本地Windows环境执行:
- 连接成功后先在远程服务器上安装Docker、Docker Compose依赖
- 将本地开发完成的Django项目代码传输到远程服务器(可通过scp命令、git拉取,新手可使用带文件传输功能的ssh客户端简化操作)
- 按照教程步骤在服务器上完成Nginx配置、证书路径配置、docker-compose.yml文件编写,最后执行
docker compose up -d即可后台启动所有服务容器。
内容的提问来源于stack exchange,提问作者solid
相关产品推荐
相关产品推荐

