如何从DigitalOcean应用平台下载Strapi导出的.tar文件至本地?
解决DigitalOcean App Platform上Strapi导出文件的下载问题
你的SCP命令报错原因
你执行的命令scp -r root@:/root/my-strapi-export.tar.gz Documents/export.tar.gz存在两个问题:
- 缺少目标主机地址:
root@后面为空,SSH无法识别要连接的服务器,直接导致连接超时。 - 平台权限限制:DigitalOcean App Platform是托管式PaaS服务,默认不提供SSH直接访问实例的权限,即便补全IP,也无法通过root用户直接SSH连接。
正确的下载方案
方案1:通过App Platform控制台传输文件
- 登录DigitalOcean控制台,进入你的Strapi应用页面,打开「Console」(内置控制台)。
- 在控制台中确认导出文件的路径(比如你提到的
/root/my-strapi-export.tar.gz)。 - 用简单的命令行工具传输到本地:
- 本地终端先监听端口:
nc -l 1234 > ~/Documents/export.tar.gz - 控制台执行传输命令:
nc 你的本地公网IP 1234 < /root/my-strapi-export.tar.gz
注:如果本地在局域网内,需要先做端口映射,确保控制台能访问到本地端口。
- 本地终端先监听端口:
方案2:将导出文件存到DigitalOcean Spaces(推荐)
- 在DigitalOcean后台创建一个Spaces存储桶,获取对应的访问密钥和密钥ID。
- 修改Strapi的导出逻辑,让生成的.tar文件直接上传到Spaces(可通过Strapi存储插件或自定义代码实现)。
- 文件上传完成后,要么通过Spaces控制台直接下载到本地,要么用命令行工具拉取:
aws s3 cp s3://你的存储桶名称/my-strapi-export.tar.gz ~/Documents/export.tar.gz --endpoint-url=https://你的存储桶区域.digitaloceanspaces.com
若你混淆了App Platform和Droplet(VPS)
如果你的Strapi实际部署在Droplet上,按以下步骤修正:
- 补全SCP命令中的Droplet公网IP:
scp root@你的DropletIP:/root/my-strapi-export.tar.gz ~/Documents/export.tar.gz - 确认Droplet防火墙开放22端口(SSH),且本地网络未拦截SSH连接。
内容的提问来源于stack exchange,提问作者Shivansh Singh
相关产品推荐
相关产品推荐

