You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移至AKS时将Azure App Service目录拷贝到Azure Fileshare的方法咨询

Azure App Service public目录迁移到Azure Fileshare操作步骤

前置准备

  • 提前生成目标Azure Fileshare的SAS令牌:在Azure Portal对应存储账户的文件共享配置页,生成拥有「读取、创建、写入、列出」权限的SAS,拼接后的完整访问地址格式为 https://<存储账户名>.file.core.windows.net/<共享名>?<SAS令牌>
  • 确认源App Service的持久化存储已开启:Linux App Service默认开启/home路径持久化,Windows容器实例需提前手动配置持久化存储,确保/home/site/wwwroot/public路径内容可正常访问
  • 如果你选择本地中转方案,请先在本地设备安装最新版azcopy工具

方案1:Kudu环境直接传输(无本地中转,速度最快)

无需将文件下载到本地,直接在App Service的运行环境内执行跨服务传输,适合大文件量场景

  1. 进入Azure Portal对应App Service的管理页,在左侧「开发工具」分类下找到「SSH」,点击进入Kudu的SSH交互终端
  2. 终端内执行如下命令下载并解压azcopy工具:
# 下载azcopy v10 Linux版本
wget https://aka.ms/downloadazcopy-v10-linux
# 解压压缩包
tar -xvf downloadazcopy-v10-linux
# 进入解压后的目录
cd azcopy_linux_amd64_*
  1. 执行递归拷贝命令,将public目录完整同步到目标Fileshare:
    ./azcopy cp "/home/site/wwwroot/public/*" "<你的Fileshare完整SAS地址>/public/" --recursive=true
  2. 等待命令执行完成后,核对输出的成功传输文件数和源目录文件数是否一致即可

方案2:本地中转传输(适合需本地留存备份的场景)

先将源文件拉取到本地备份,再上传到Fileshare

  1. 获取App Service的FTPS访问凭证:在App Service管理页的「部署中心」->「FTPS凭据」页面,记录FTPS地址、用户名、密码
  2. 执行azcopy命令拉取源目录到本地:
    azcopy cp "ftps://<你的FTPS地址>/site/wwwroot/public/*" "<本地存储路径>" --recursive=true --ftp-user <FTP用户名> --ftp-password <FTP密码>
  3. 执行上传命令将本地文件同步到Fileshare:
    azcopy cp "<本地存储路径>/public/*" "<你的Fileshare完整SAS地址>/public/" --recursive=true

校验与生产环境注意事项

生产环境操作提示:传输前建议先将App Service切换到维护模式,或者把业务流量临时切到备用实例,避免传输过程中public目录有新增/修改文件,导致两边内容不一致
传输完成后可执行如下命令对比两边文件哈希,确认内容完全一致:
./azcopy sync "/home/site/wwwroot/public" "<你的Fileshare完整SAS地址>/public" --recursive=true --compare-hash=MD5
如果命令没有输出待同步的文件,说明两边内容完全匹配,迁移完成。


内容的提问来源于stack exchange,提问作者gharbi.bdr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 18:48:03