我使用BitBucket中的Git Deploy将Orchard CMS网站部署到Windows Azure .
只是我的最新更改在尝试部署时遇到错误:
该进程无法访问文件'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ wwwroot \ App_Data \ Dependencies \ Joel.Net.Akismet.dll',因为它正由另一个进程使用 .
鉴于其Azure网站,我不能“停止AppPool”或类似的东西 . 我已经尝试停止该网站,但后来我无法进行部署停止该网站 . 我对如何进一步排除故障没有想法 .
Trying to update via ftp
没有选项“重新启动”但我可以停止并启动该站点,这不起作用(502 Web服务器错误) .
通过ftp删除文件\ App_Data \ Dependencies文件夹不起作用,并得到相同的错误 .
停止站点然后通过ftp上传文件确实有效 . 但是尝试通过Git重新部署,我得到了一个类似的错误:
命令:deploy.cmd处理基本Web站点部署 . KuduSync.NET从: 'C:\ DWASFiles \站点[MyWebsite] \ VirtualDirectory0 \站点\存储库' 为: 'C:\ DWASFiles \站点[MyWebsite] \ VirtualDirectory0 \站点\ wwwroot的' 错误:过程不能访问文件C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ wwwroot \ App_Data \ Dependencies \ Markdown.dll'因为它正由另一个进程使用 . 复制文件:'App_Data \ Dependencies \ dependencies.compiled.xml'复制文件:'App_Data \ Dependencies \ dependencies.xml'复制文件:'App_Data \ Dependencies \ Ionic.Zip.dll'复制文件:'App_Data \ Dependencies \ Joel . Net.Akismet.dll'正在复制文件:'App_Data \ Dependencies \ Markdown.dll'网站部署期间发生错误 . 处理基本Web站点部署 .
我敢肯定它不仅仅是一个dll,而是在Git部署期间,\ App_Data \ Dependencies文件夹中的所有dll都不会被“停止” .
Trying to set up another site on Azure Websites to do the Git Deploy
我已经为Git设置了另一个Azure站点来部署相同的代码分支,这样可以正常工作 .
但是,当我将我的域名切换到新的Azure网站时,我的新网站不再有效,但我的旧网站可以接受git deploy .
所以我的域名所针对的网站必须得到活动,导致更新停止工作 . 有没有办法阻止网站 AND 做一个Git部署?
因此,根据@ David的评论从我的repo中删除Dependencies文件夹后,我收到一个新错误:
命令:deploy.cmd处理基本Web站点部署 . KuduSync.NET从:'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ repository'到:'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ wwwroot'错误:访问路径'Joel . Net.Akismet.dll'被拒绝 . 复制文件:' . gitignore'删除文件:'App_Data \ Dependencies \ Joel.Net.Akismet.dll'网站部署期间发生错误 . 处理基本Web站点部署 .
好像Kudu同步看到Dependencies文件夹中没有文件,并试图删除它们!当我根本没有Dependencies文件夹时会发生同样的情况 - 它会尝试删除Dependencies文件夹 .
@David有没有kudu忽略文件?
SOLVED!
好吧,我坚持下去,我终于解决了 .
-
我删除了整个app_data文件夹(先备份它),然后将其检入Git .
-
这被推入Azure,给我一个新的果园网站
-
然后我重新添加了我的app_data,但选择忽略app_data / dependencies文件夹
-
推送到Git并完美更新到Azure
希望我的下一次入住仍然有效(手指交叉)
2 回答
我猜测问题的根源在于您将
App_Data\Dependencies
文件夹提交到您的仓库中 . 这个文件夹是Orchard动态创建的,不应该在你的仓库中 .我怀疑如果你不这样做(通过使用.gitignore),一切都会正常工作,你不会得到这个错误 .
您可以在部署之前重新启动网站,这类似于回收应用程序池 . 只需点击仪表板上页脚的重启按钮即可 .