云服务是通过两个文件进行发布的,一个是cspkg,包含所有程序代码,一个是cscfg,包含配置信息。如果要在云服务的虚拟机上安装软件或者拷贝文件,简单的做法是把要装的软件和文件打包在cspkg里面,然后在csdef里面定义启动脚本,进行软件的自动化安装或者文件拷贝。下面看一个简单的例子
比如我们要把一个test.dll文件拷贝到目标虚拟机的系统目录下,而不是仅仅放在Webrole/worker role的缺省目录下,那么我们需要这样做:
首先,把这个dll放到Azure Role的代码目录内,比如web role/worker role的根目录
查看文件属性,确保生成操作为“内容”
如果当前是workerrole,还需要将待拷贝的文件复制属性改为“较新则复制”。这会让该文件复制到bin目录下,而Bin目录会成为worker role的approot。而Web role则不需要修改,因为Web role的app root就是项目根目录
此时如果我们打包该项目,然后将输出的cspkg解压缩,可以发现该文件出现在了目标role的approot目录下
接下来,我们需要让Azure进行文件的自动拷贝。打开项目的csdef文件,找到相应Role的定义,添加<startup>段落,定义拷贝命令
<WebRole name="GuestBook_WebRole" vmsize="Small">
....
....
....
<Startup>
<Tas

本文介绍了如何在Windows Azure云服务的虚拟机上安装软件和拷贝文件。通过打包软件和文件到cspkg,利用csdef定义启动脚本实现自动化安装或拷贝。详细步骤包括设置文件属性、编写startup命令、使用setup.cmd脚本及从Blob存储下载文件。

1万+

被折叠的 条评论
为什么被折叠?



