管理者レベルのアクセス (レジストリの変更、msi のインストールなど) を必要としない限りOnStart()
、スクリプトの起動を含む からセットアップを行うことができます。プロジェクトに起動スクリプトを含めるだけです (Copy Local を true に設定することを忘れないでください)。
スタートアップ スクリプトについても同様です。cmd ファイルを呼び出すと、シーケンスが実行されます。また、権限を昇格させれば、インストーラーの実行、レジストリ設定の変更、カスタム パフォーマンス カウンターのインストールなどを行うことができます。
どちらの場合でも、Apache zip、Ruby インストーラーなどを BLOB ストレージに保持し、起動時にそれらをローカル ストレージにダウンロードできます。これにより、デプロイ内のすべてをバンドルする必要がなくなり、いくつかの利点が得られます (再デプロイせずに ruby / apache を更新できる、パッケージ サイズが縮小されるなど)。
スタートアップ スクリプトを使用して Tomcat を設定する基本を示すサンプル アプリが codeplex にあります。もう 1 つの例として、Java 用の Eclipse Windows Azure プラグインを介してインストールされたスクリプトを見ることができます。これらのスクリプトは非常に似ています。重要なのは、blob ストレージからファイルをダウンロードしてから解凍する何らかの方法を用意することです。私が参照した codeplex プロジェクトは、単純な BLOB のダウンロードを行うサンプル アプリを指しています。Eclipse パッケージは、.vbs アプリで同様の機能を提供します。これは、Eclipse ベースのプロジェクトからの私のスクリプトの 1 つのスニペットです。
SET SERVER_DIR_NAME=apache-tomcat-7.0.25
SET WAR_NAME=myapp.war
rd "\%ROLENAME%"
mklink /D "\%ROLENAME%" "%ROLEROOT%\approot"
cd /d "\%ROLENAME%"
cscript /NoLogo util\unzip.vbs jre7.zip "%CD%"
cscript /NoLogo util\unzip.vbs tomcat7.zip "%CD%"
copy %WAR_NAME% "%SERVER_DIR_NAME%\webapps\%WAR_NAME%"
cd "%SERVER_DIR_NAME%\bin"
set JAVA_HOME=\%ROLENAME%\jre7
set PATH=%PATH%;%JAVA_HOME%\bin
cmd /c startup.bat
codeplex プロジェクトには、似たようなスクリプトがあります。
忘れないでください: ロールの入力エンドポイントを設定する必要があります (ロール プロパティの一部)。
BLOB を BLOB ストレージに入れるには、無料のツール (Clumsy Leaf CloudXplorerなど) と有料のツール (Cerebrata の Cloud Storage Studio など) の両方があります。
BLOB をローカル ストレージにダウンロードするには、(OnStart から) 数行の .net コードを記述するか、codeplex プロジェクトで指定されているユーティリティを使用するだけです。