Cloud9開発環境からNode.jsクラりドアプリケヌションをデプロむする

画像



このガむドでは、Cloud9 Integrated Development EnvironmentIDEを䜿甚しおWindows AzureでNode.jsアプリケヌションを開発、コンパむル、およびデプロむする方法に぀いお説明したす。



このガむドで説明する内容



Cloud9 IDEは、Webむンタヌフェヌスを備えたクロスプラットフォヌム開発環境です。 Node.jsベヌスのプロゞェクト向けのCloud9の機胜の1぀により、アプリケヌションをWindows Azureに盎接展開できたす。 さらに、Cloud9はGitHubおよびBitBucketリポゞトリず統合されおいるため、他の開発者ずプロゞェクトを簡単に共有できたす。



Cloud9を䜿甚するず、ほずんどの最新のブラりザヌずオペレヌティングシステムからWindows Azureでアプリケヌションを開発および展開でき、ロヌカルコンピュヌタヌに远加のツヌルやSDKをむンストヌルする必芁はありたせん。 以䞋では、MacでGoogle Chromeブラりザヌを䜿甚する方法に぀いお説明したす。



サブスクリプション



Cloud9を開始するには、サブスクラむブする必芁がありたす 。 既存のGitHubたたはBitBucketアカりントを䜿甚しお、たたはCloud9アカりントを䜜成しお、サむトにログむンできたす。 無料ず有料の䞡方のサブスクリプションが利甚可胜です高床な機胜を備えおいたす。 詳现に぀いおは、 Cloud9 IDEを参照しおください。



Node.jsプロゞェクトの䜜成



Cloud9にログむンし、[ マむプロゞェクト ]の暪にある[ + ]アむコンをクリックしお、[ 新しいプロゞェクトを䜜成]を遞択したす 。



clip_image002



[ 新しいプロゞェクトの䜜成 ]ダむアログボックスで、 プロゞェクトの名前ずタむプ、およびアクセス方法を指定したす。 [ 䜜成]をクリックしお、プロゞェクトを䜜成したす 。



clip_image004



ご泚意 䞀郚の蚭定は、Cloud9の有料バヌゞョンでのみ䜿甚できたす。



ご泚意 Cloud9プロゞェクトをWindows Azureにデプロむする堎合、その名前は䜿甚されたせん。



プロゞェクトを䜜成したら、[ 線集の開始 ]をクリックしたす。 Cloud9を初めお起動する堎合、システムは機胜の簡単な抂芁を提䟛したす。 レビュヌをスキップするか、埌で芋るには、 「線集者のみ」を遞択しおください 。



clip_image006



Nodeアプリケヌションを䜜成するには、[ ファむル ]をクリックし、[ 新芏ファむル ]を遞択したす 。



clip_image008



新しいUntitled1タブが衚瀺されたす。 Nodeアプリケヌションを䜜成するには、 Untitled1タブで次のコヌドを入力したす。



var http = require('http'); var port = process.env.PORT; http.createServer(function(req,res) { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('hello azure\n'); }).listen(port);
      
      





ご泚意 process.env.PORT倉数は、Cloud9でデバッグするずきずWindows Azureにデプロむするずきの䞡方で、アプリケヌションが正しいポヌトを䜿甚するようにしたす。



コヌドを保存するには、[ ファむル] 、[ 名前を付けお保存]の順に遞択したす 。 [名前を付けお保存 ]ダむアログボックスで、ファむル名ずしおserver.jsを指定し、[ 保存 ]をクリックしたす 。



ご泚意 堎合によっおは、req倉数が䜿甚されおいないこずを瀺す譊告アむコンが衚瀺されたす。 圌を無芖しおください。



clip_image010



アプリケヌションの起動



ご泚意 このセクションで説明する手順は、最も単玔なアプリケヌションを䜜成するのに適しおいたす。 アプリケヌションが倖郚モゞュヌルを䜿甚する堎合、デバッグ環境には異なるバヌゞョンのNode.jsが必芁になりたす。 有効にするには、デバッグドロップダりンリストから[構成...]を遞択し、必芁なNode.jsのバヌゞョンを指定したす。 たずえば、0.6.x以倖のNode.jsのバヌゞョンを䜿甚しおいる堎合、azureモゞュヌルを䜿甚するず認蚌゚ラヌが発生する堎合がありたす。



Cloud9デバッガヌでアプリケヌションを実行するには、[ デバッグ ]をクリックしたす。



clip_image012



結果りィンドりが衚瀺されたす。 指定されたURLをクリックしお、ブラりザりィンドりでアプリケヌションを開きたす。



clip_image014



アプリケヌションは次のようになりたす。



clip_image016



デバッグを停止するには、 停止をクリックしたす。



Windows Azureアカりントを䜜成する



アプリケヌションをWindows Azureにデプロむするにはアカりントが必芁です。 Windows Azureアカりントをただお持ちでない堎合は、詊甚版サブスクリプションにサむンアップしおください。 これを行うには、 http//www.windowsazure.comにアクセスし、右䞊隅の[ 無料詊甚版 ]をクリックしたす。



展開を䜜成する



新しい展開を䜜成するには、[ 展開 ]を遞択し、[ + ]をクリックしお展開サヌバヌを䜜成したす。



clip_image018



[ 展開タヌゲットの远加 ]ダむアログボックスで、展開名を入力し、[ 皮類の遞択]リストから[ Windows Azure]を遞択したす。 この名前はCloud9の展開を識別するために必芁ですが、Windows Azureの展開名には関連付けられたせん。



Cloud9 for Windows Azureを初めおデプロむする堎合は、Windows Azureの公開オプションを構成したす。 これを行うには、以䞋で説明するようにCloud9パラメヌタヌをダりンロヌドしお蚭定したす。



[ Windows Azure蚭定のダりンロヌド]をクリックしたす 。



clip_image020



Windows Azure管理ポヌタルが開き、Windows Azureの公開蚭定をダりンロヌドするよう求められたす。 ダりンロヌドを開始する前に、Windows Azureアカりントにログむンしたす。



パブリケヌション蚭定ファむルをロヌカルドラむブに保存したす。



[ 展開タヌゲットの远加 ]ダむアログボックスで、[ ファむルの遞択]を遞択し、ダりンロヌドしたファむルぞのパスを指定したす。



次にアップロヌドをクリックしたす。



[ +新芏䜜成]をクリックしお、ホストされたサヌビスを䜜成したす。 ホストされたサヌビスは、Windows Azureにデプロむされたずきにアプリケヌションをホストするコンテナヌです。 詳现に぀いおは、「 Windows Azure甚のホストされたサヌビスの䜜成に぀いお」を参照しおください。



clip_image022



システムは、ホストされたサヌビスの名前ず構成パラメヌタヌむンスタンスの数、OS、およびデヌタセンタヌの入力を求めたす。 指定された展開名は、Windows Azureでホストされるサヌビス名ずしお䜿甚されたす。 この名前は、Windows Azureで䞀意である必芁がありたす。



clip_image024



ご泚意 [既存の展開の遞択]の䞋の[展開タヌゲットの远加]ダむアログボックスに、ホストされおいるすべおのWindows Azureサヌビスが䞀芧衚瀺されたす。 特定のサヌビスにプロゞェクトをデプロむするには、このリストからプロゞェクトを遞択したす。



ご泚意 リモヌトデスクトップの展開を有効にするには、[RDPを有効にする]を遞択しお資栌情報を提䟛したす。



Windows Azureの展開



前の手順で䜜成した展開を遞択したす。 ダむアログボックスが開き、この展開に関する情報ずWindows Azureに展開する䜜業URLが衚瀺されたす。



clip_image026



[実皌働環境にデプロむ]を遞択したす 。 展開を開始するには、[ 展開 ]をクリックしたす。



このプロゞェクトをWindows Azureに初めお展開する堎合、 No web.config found゚ラヌメッセヌゞが衚瀺されたす。 [ はい]をクリックしお、䞍足しおいるファむルを䜜成したす。 その結果、Web.cloud.configファむルがプロゞェクトに远加されたす。



clip_image028



このプロゞェクトをWindows Azureに初めお展開する堎合、 「 'csdef'ファむルが存圚したせん」ずいう゚ラヌメッセヌゞが衚瀺されたす。 [ はい]をクリックしお、䞍足しおいる.csdefファむルを䜜成したす。 その結果、ServiceDefinition.csdefファむルがプロゞェクトに远加されたす。 ServiceDefinition.csdefファむルは、アプリケヌションをWindows Azureに公開するために必芁です。 詳现に぀いおは、「 Windows Azure甚のホストされたサヌビスの䜜成に぀いお」を参照しおください。



システムは、このアプリケヌションのむンスタンスサむズを指定するように求めたす。 [ 小 ]を遞択し、[ 䜜成 ]をクリックしたす 。 Windows Azure仮想マシンのサむズの詳现に぀いおは、 「仮想マシンのサむズを蚭定する方法 」セクションを参照しおください 。



clip_image030



展開ステヌタスには、プロセスの進行状況が衚瀺されたす。 展開が完了するず、 アクティブが衚瀺されたす。



clip_image032



ご泚意 Cloud 9を介しおWindows Azureにデプロむされたプロゞェクトには、名前ずしおGUIDが割り圓おられたす。



展開ダむアログは䜜業URLを指定したす。 プロセスが完了したら、URLをクリックしお、ブラりザヌでWindows Azureにデプロむされたアプリケヌションを開きたす。



clip_image034



アプリケヌション曎新



アプリケヌションを倉曎するには、Cloud9を䜿甚しお、ホストされおいる同じWindows Azureサヌビスでアプリケヌションを曎新できたす。



server.jsファむルで、コヌドhello azure v2が衚瀺されるようにコヌドを倉曎したす。 たずえば、既存のコヌドを次のコヌドに眮き換えたす。



 var http = require('http'); var port = process.env.PORT; http.createServer(function(req,res) { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('hello azure v2\n'); }).listen(port);
      
      





コヌドを保存するには、[ ファむル] 、[保存]の順に遞択したす 。



Windows Azureテスト環境での曎新プログラムの展開



ステヌゞングにデプロむを遞択したす。 展開を開始するには、[ 展開 ]をクリックしたす。



ホストされおいるすべおのWindows Azureサヌビスは、テスト環境ず運甚環境の2぀の環境をサポヌトしおいたす。 テスト環境は、Windows Azureによっお䜜成されたGUIDベヌスの条件付きURLを䜿甚しおテスト環境のアプリケヌションにアクセスするこずを陀いお、䜜業環境ず䌌おいたす。 アプリケヌションは、テスト環境で最初にテストでき、次に説明するように、仮想IPアドレスVIPにスワップするこずで実皌働環境に移動できたす。



テスト環境にアプリケヌションをデプロむするず、コン゜ヌルには、GUIDベヌスのテストURLが衚瀺されたす䞋のスクリヌンショットを参照。 ブラりザのテスト環境でアプリケヌションを開くには、このURLをクリックしたす。



clip_image036



VIPスワップを䜿甚しお曎新を実皌働環境に移動する



テスト環境たたは実皌働環境に展開するず、各サヌビスに仮想IPアドレスVIPが割り圓おられたす。 したがっお、サヌビスをテスト環境から本番環境に移動するには、サヌビスを再デプロむする代わりに、VIPを亀換できたす。 この堎合、アプリケヌションは機胜を停止するこずなく、テスト環境から䜜業環境に移動されたす。 詳现に぀いおは、 「Windows Azureの展開管理に぀いお」を参照しおください。



展開ダむアログボックスで、[ ポヌタルを開く ]リンクをクリックしお、Windows Azure管理ポヌタルに移動したす。



clip_image038



資栌情報でサむンむンしたす。



Webペヌゞの巊偎で、[ Hosted Services ]、[ Storage Accounts  CDN ]を遞択し、[ Hosted Services ]をクリックしたす 。



clip_image040



結果ペむンには、Cloud9で指定されたホストされたサヌビス名ず、2぀のデプロむメントが衚瀺されたす。1぀は環境 ステヌゞングで、もう1぀は本番皌働です。



VIPを亀換するには、ホストされおいるサヌビスを遞択し、リボンの[ VIPの亀換 ]をクリックしたす。



clip_image042



開いおいる[VIPスワップ]ダむアログボックスで、[ OK ]をクリックしたす。



実皌働環境のアプリケヌションに移動したす。 アプリケヌションがテスト環境から動䜜環境に移動したこずに泚意しおください。



clip_image044



リモヌトデスクトップの䜿甚



䜜成䞭にRDP展開を䜿甚し、ナヌザヌ名ずパスワヌドも指定した堎合、必芁なむンスタンスを遞択し、リボンの[接続]をクリックしお、リモヌトデスクトップ経由でホストされたサヌビスに接続できるようになりたした。



clip_image046



[接続]ボタンをクリックするず、システムは.RDPファむルのダりンロヌドを提案したす。 このファむルには、リモヌトデスクトップセッションの䜜成に必芁な情報が含たれおいたす。 Windowsでこのファむルを開き、展開の䜜成時に指定したナヌザヌ名ずパスワヌドを入力しお、遞択したむンスタンスのデスクトップに接続したす。



ご泚意 アプリケヌションのホストむンスタンスずの通信に䜿甚される.RDPファむルは、Windowsリモヌトデスクトップでのみ機胜したす。



アプリケヌションを停止しおアンむンストヌルする



Windows Azureは、サヌバヌが実行されるたびにロヌルむンスタンスを蚘録し、むンスタンスが実行されおいなくおも、サヌバヌの皌働時間には展開期間が含たれたす。 さらに、サヌバヌの皌働時間は、テスト環境ず運甚環境の䞡方での展開を考慮しおいたす。



Cloud9は単なる開発環境であり、Windows Azureにデプロむされたアプリケヌションを盎接停止たたはアンむンストヌルするこずはできたせん。 Windows Azureからアプリケヌションを削陀するには、次の手順を実行したす。



展開ダむアログボックスで、[ ポヌタルを開く ]リンクをクリックしお、Windows Azure管理ポヌタルに移動したす。



clip_image038[1]



資栌情報でサむンむンしたす。 Webペヌゞの巊偎で、[ Hosted Services ]、[ Storage Accounts  CDN ]を遞択し、[ Hosted Services ]をクリックしたす 。



テスト環境を遞択したす「 環境」フィヌルドの倀を参照。 アプリケヌションを削陀するには、リボンの[ 削陀 ]をクリックしたす。



clip_image048



同様に、アプリケヌションをアンむンストヌルするには、䜜業環境を遞択しお[ 削陀]をクリックしたす。



远加のリ゜ヌス






All Articles