部署文件到对象存储 CDN
文章目录
介绍
现在云厂商提供了对象存储,可以用作 CDN。
腾迅云 COS
文档
准备环境
coscmd 是腾迅云提供的命令行工具,必须使用 Python pip 安装。实测安装到单独的目录中无法运行,只能安装到默认位置。Windows 7 安装 coscmd 时,有一个依赖需要安装 Visual Studio 构建工具(Microsoft Visual C++ Build Tools)。这在实际使用时就很麻烦了,需要安装一个最新的 Visual Studio 或者手动选择其中的构建工具。
集成测试
使用 config
命令生成配置文件,再使用 upload
命令上传目录。按照文档编写命令,测试可用后,将其封装为 Python 脚本执行。
测试时需要关闭 Charles 之类的代理软件,否则会报错。
手动与自动
对于已手动上传的文件,coscmd 再次上传时会直接覆盖,而不会检查文件是否已上传。但是后续可以检查工具自己上传的文件是否已存在,猜测是只有工具在上传时会添加 md5 信息。
阿里云 OSS
文档
准备环境
ossutil 是阿里云提供的命令行工具,是一个单一的可执行文件,因此可以将其添加到版本控制中。
集成测试
使用 config
命令生成配置文件,再使用 sync
命令上传目录。
macOS 的程序需要在执行前手动添加可执行标记:chmod +x ossutilmac64
手动与自动
对于已手动上传的文件,ossutil 会像 rsync 一样检查是否上传过,只会上传变化或新增的。
总结
两个工具都分别在 Windows 与 macOS 使用,都对路径分隔符不敏感,配置好后可以直接用。
实际使用时感觉工具自身的依赖越少越好,最好只有一个可执行文件,这样便于使用。像依赖很多,且需要用户自行处理编译的工具,使用难度太大。
文章作者 狂飙
初次发布 2021-09-26 23:18:37 +0800
永久链接 https://networm.me/2021/09/26/deploy-to-object-storage-cdn/