
peterdavehello/azcopyDocker-AzCopy 是一个基于 Alpine Linux 的轻量级 Docker 镜像,预装了 Azure AzCopy 工具。AzCopy 是 Azure 官方提供的命令行数据传输工具,用于在本地存储与 Azure 存储服务(如 Blob、File Storage 等)之间高效传输文件。本镜像提供多版本 AzCopy 支持,可直接集成到 CI/CD 工作流,简化 Azure 存储数据传输的容器化部署。
10)及 latest 标签。本镜像同时推送至以下仓库,可根据网络环境或偏好选择:
ghcr.io/peterdavehello/azcopypeterdavehello/azcopy提示:使用 GHCR 时需添加前缀
ghcr.io/,例如ghcr.io/peterdavehello/azcopy:10.11.0。
镜像标签与 AzCopy 官方 GitHub 发布版本 对应,标签名不含版本号前缀 v。例如:
v10.11.0 对应镜像标签 10.11.0。latest:对应最新稳定版 AzCopy。10),自动指向该主版本下的最新次版本(如 10.x.y)。有效标签可通过以下途径查看:
bashdocker run --rm -it \ -v /本地路径:/容器内路径 \ # 挂载本地目录至容器,供 AzCopy 访问文件 peterdavehello/azcopy[:<版本标签>] \ # 镜像名及可选版本标签 azcopy [命令] [参数] # AzCopy 命令及参数
--rm:容器退出后自动删除。-it:交互式终端(如需手动输入 AzCopy 命令或授权信息)。-v /本地路径:/容器内路径:必须项,挂载本地文件目录至容器,确保 AzCopy 可读取/写入文件。bashdocker run --rm peterdavehello/azcopy:10.11.0 azcopy --version
输出示例:
azcopy version 10.11.0
将本地 ./src 目录同步至 Azure Blob 容器 $$web(静态网站托管容器):
bashdocker run --rm -it \ -v $PWD/src:/src \ # 挂载当前目录下的 src 至容器内 /src peterdavehello/azcopy:10.11.0 \ azcopy sync /src [***]
注:执行前需确保已通过
azcopy login完成 Azure 授权(可在交互式模式下执行),或使用 SAS 令牌直接授权(如https://<storage-account>.blob.core.windows.net/<container>?<sas-token>)。
在 .gitlab-ci.yml 中添加任务,将构建产物同步至 Azure:
yamldeploy_to_azure: stage: deploy image: peterdavehello/azcopy:10 script: - azcopy sync ./dist [***] --delete-destination true only: - main
创建 docker-compose.yml,定义 AzCopy 服务(适用于需持久化配置的场景):
yamlversion: '3' services: azcopy: image: peterdavehello/azcopy:10 volumes: - ./local-data:/data # 挂载本地数据目录 command: sync /data [***]
执行:
bashSAS_TOKEN="your-sas-token" docker-compose up
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务