SlideShare a Scribd company logo
1 of 17
2011/05/28
                                             浅見 城輝
                                http://www.asami.asia/

Copyright 2011 Kuniteru Asami                            1
浅見 城輝
 個人事業主 (2006年8月に独立)
 http://www.asami.asia/
    Windows Azure導入支援
     ◦ LAMPからWindows Azureへの移行
    データベース関連サービス
     ◦ パフォーマンスチューニングが得意
    サーバー構築
    Webアプリケーション開発
    インストールマニアックス2008ドキュメント賞
    元々はUNIX/Linux+Oracleな人
     実はWindowsのテクノロジはあまり知らない

Copyright 2011 Kuniteru Asami    2
   PHP on Azureな開発環境を作るツール
    Azureで便利なPHP用API




Copyright 2011 Kuniteru Asami   3
   Windows Azure Companion
    WebPi Command Line
    Microsoft Visual Web Developer
    Eclipse PDT (windowsazure4e)
    CSPack & CSRun Command Line Tool
    Windows Azure Command-line Tools for PHP




Copyright 2011 Kuniteru Asami                   4
http://archive.msdn.microsoft.com/azurecompanion




                     省略         さっき「できる!Windows Azure Companion」で聞いたでしょ?




Copyright 2011 Kuniteru Asami                                              5
と言いつつ少しだけ…
  ProductListXmlFeedを自前で用意することで、
   他のアプリケーションもインストールすることが
   できます。


                                http://www.asami.asia/WindowsAzureCompanionFeed.xml




Copyright 2011 Kuniteru Asami                                                         6
http://blogs.iis.net/satishl/archive/2011/01/26/webpi-command-line.aspx

    Web Platform Installerのコマンドライン版です。
    Startup TaskでWindows Azure上にPHPを
     簡単にインストールできます。
     ◦ 標準では細かいバージョンの選択はできません。
       5.3/5.2が選択可能です。5.3.x/5.2.xは選択不可です。




Copyright 2011 Kuniteru Asami                                              7
ServiceDefinition.csdef
   <?xml version="1.0" encoding="utf-8"?>
   <ServiceDefinition name="ProjectName"
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
     :
     <WebRole>
       :
       <Startup>
         <Task commandLine="startup.cmd" executionContext="elevated" taskType="simple" />
       </Startup>
     </WebRole>
   </ServiceDefinition>


   startup.cmd (出力ディレクトリ:常にコピーする or 新しい場合はコピーする)
   md "%~dp0appdata"
   reg add "hku.defaultsoftwaremicrosoftwindowscurrentversionexploreruser shell folders" /v ^
     "Local AppData" /t REG_EXPAND_SZ /d "%~dp0appdata" /f
   "%~dp0webpicmdline.exe" /AcceptEula /Products:PHP53 >>log.txt 2>>err.txt
   reg add "hku.defaultsoftwaremicrosoftwindowscurrentversionexploreruser shell folders" /v ^
     "Local AppData" /t REG_EXPAND_SZ /d %%USERPROFILE%%AppDataLocal /f




Copyright 2011 Kuniteru Asami                                                                          8
   古い(Azure SDK 1.2以前の)ドキュメントの手順ではAzure上で
     PHPが利用できるようになりません。
    以下のサイトが参考になります。
     ◦ http://blogs.gine.jp/kusa/archives/1407
     ◦ http://blogs.gine.jp/taka/archives/1978




Copyright 2011 Kuniteru Asami                    9
http://www.windowsazure4e.org/
  添付されているWindows Azure SDK for PHPや
   PHP contributions(php_azure.dll)のバージョンが古いことがありま
   す。
  リモートデスクトップの設定など、GUIで対応していない機能がありま
   す。




           参考) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/3_eclipse.pdf

Copyright 2011 Kuniteru Asami                                                                                    10
CSPack(パッケージ作成) :http://msdn.microsoft.com/en-us/library/gg432988.aspx
 CSRun(エミュレータ実行):http://msdn.microsoft.com/en-us/library/gg433001.aspx
    Windows Azure SDKに標準添付されています。
    コマンドプロンプトで、
     デプロイパッケージの作成や開発ファブリックでの実
     行ができます。
    ServiceConfiguration.cscfg,
     ServiceDefinition.csdefを、
     自分で作成する必要があります。
  コンピュートエミュレータ(開発環境)での実行例

  rem コンピュートエミュレータ用パッケージの作成
  cspack ServiceDefinition.csdef /copyonly /out:SamplePackage.csx /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwroot
  rem コンピュートエミュレータで実行
  csrun SamplePackage.csx ServiceConfiguration.cscfg /launchbrowser
  rem コンピュートエミュレータを停止し削除
  csrun.exe /removeall

  デプロイ用パッケージの作成例

  cspack ServiceDefinition.csdef /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwroot

                  参考) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/4_cui.pdf



Copyright 2011 Kuniteru Asami                                                                                                          11
http://azurephptools.codeplex.com/
  phpコマンドを利用してコマンドプロンプトで、
   デプロイパッケージの作成や開発ファブリックで
   の実行ができます。
  ServiceConfiguration.cscfg,
   ServiceDefinition.csdefは、
   用意されているテンプレートから作成されます。
     ◦ 細かい変更をコマンドライン引数で指定できます。
    デプロイパッケージ作成例                               コンピュートエミュレータ(開発環境)での実行例
    php package.php ^                          php package.php ^
      --project=MyProject ^                      --project=MyProject ^
      --source=..php_source ^                  --source=..php_source ^
      --phpRuntime="C:Program FilesPHP" ^     --phpRuntime="C:Program FilesPHP" ^
      --target=..workspace                     --runDevFabric ^
                                                 --cleanRebuild



Copyright 2011 Kuniteru Asami                                                             12
   Windows Azure SDK for PHP
    Windows Azure - PHP contributions
    OData SDK for PHP
    AppFabric SDK for PHP Developers




Copyright 2011 Kuniteru Asami            13
http://phpazure.codeplex.com/
 PHPからWindows Azure Platform特有の機能など
 を利用することができます。
  Azure Storage(Blob, Table, Queue)へのアクセ
   ス
  PHPセッション管理
  Azureサービス管理
  障害や性能などのモニタリングや診断




Copyright 2011 Kuniteru Asami               14
   Japan Windows Azure User Group
     PHP on Windows Azure
     http://r.jazug.jp/wiki/tech/php

    Microsoft
     使えるWindows Azure
     http://www.microsoft.com/japan/windowsaz
     ure/campaign/mobile/chapter.aspx



Copyright 2011 Kuniteru Asami                   15
http://www.windows-maniax.com/




Copyright 2011 Kuniteru Asami     16
Azure ユーザー会にご参加ください




       http://r.jazug.jp

More Related Content

What's hot

[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリde:code 2017
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibilityTakeshi Fujimoto
 
ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)Takayoshi Tanaka
 
Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Kazushi Kamegawa
 
最近の PowerShell のお話
最近の PowerShell のお話最近の PowerShell のお話
最近の PowerShell のお話Kazuki Takai
 
Power shell の基本操作と処理の自動化 v2_20120514
Power shell の基本操作と処理の自動化 v2_20120514Power shell の基本操作と処理の自動化 v2_20120514
Power shell の基本操作と処理の自動化 v2_20120514junichi anno
 
PowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First StepPowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First StepKazuki Takai
 
How to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageHow to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageKazushi Kamegawa
 
Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門leverages_event
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~Akira Inoue
 
[MR08] 知っておくべき UWP アプリ開発の A to Z
[MR08] 知っておくべき UWP アプリ開発の A to Z[MR08] 知っておくべき UWP アプリ開発の A to Z
[MR08] 知っておくべき UWP アプリ開発の A to Zde:code 2017
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介de:code 2017
 
System4 comment
System4 commentSystem4 comment
System4 commentJun Chiba
 
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨde:code 2017
 
20130606 alfresco study16audit
20130606 alfresco study16audit20130606 alfresco study16audit
20130606 alfresco study16auditTakeshi Totani
 

What's hot (19)

[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibility
 
ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)
 
Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編
 
Cakephp
CakephpCakephp
Cakephp
 
最近の PowerShell のお話
最近の PowerShell のお話最近の PowerShell のお話
最近の PowerShell のお話
 
Redmine Ansible
Redmine AnsibleRedmine Ansible
Redmine Ansible
 
Power shell の基本操作と処理の自動化 v2_20120514
Power shell の基本操作と処理の自動化 v2_20120514Power shell の基本操作と処理の自動化 v2_20120514
Power shell の基本操作と処理の自動化 v2_20120514
 
PowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First StepPowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First Step
 
How to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageHow to create your own Azure Pipeline's image
How to create your own Azure Pipeline's image
 
Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
 
[MR08] 知っておくべき UWP アプリ開発の A to Z
[MR08] 知っておくべき UWP アプリ開発の A to Z[MR08] 知っておくべき UWP アプリ開発の A to Z
[MR08] 知っておくべき UWP アプリ開発の A to Z
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
 
TFSを支える技術
TFSを支える技術TFSを支える技術
TFSを支える技術
 
System4 comment
System4 commentSystem4 comment
System4 comment
 
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
 
20130606 alfresco study16audit
20130606 alfresco study16audit20130606 alfresco study16audit
20130606 alfresco study16audit
 

Viewers also liked

Viewers also liked (7)

Not your mother's JavaScript
Not your mother's JavaScriptNot your mother's JavaScript
Not your mother's JavaScript
 
PHP on Azure
PHP on AzurePHP on Azure
PHP on Azure
 
MySQL 5.5
MySQL 5.5MySQL 5.5
MySQL 5.5
 
Azure pm
Azure pmAzure pm
Azure pm
 
AccessU 2011 Keynote
AccessU 2011 KeynoteAccessU 2011 Keynote
AccessU 2011 Keynote
 
Subversion in a distributed world
Subversion in a distributed worldSubversion in a distributed world
Subversion in a distributed world
 
Succeeding with Functional-first Programming in Enterprise
Succeeding with Functional-first Programming in EnterpriseSucceeding with Functional-first Programming in Enterprise
Succeeding with Functional-first Programming in Enterprise
 

Similar to Windows Azure PHP Tips

[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用de:code 2017
 
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるNetラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるdavid9142
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドKazumi Hirose
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Shotaro Suzuki
 
PHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferencePHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferenceMicrosoft
 
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説Akira Inoue
 
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像Akira Inoue
 
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた日本マイクロソフト株式会社
 
はじめてのコンテナーDocker & Windows & Linux
はじめてのコンテナーDocker & Windows & LinuxはじめてのコンテナーDocker & Windows & Linux
はじめてのコンテナーDocker & Windows & LinuxKazushi Kamegawa
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介Etsuji Nakai
 
Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Etsuji Nakai
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線Akira Inoue
 
ゆるふわAzure Functions
ゆるふわAzure FunctionsゆるふわAzure Functions
ゆるふわAzure FunctionsKeiji Kamebuchi
 
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!decode2016
 
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NETAkira Inoue
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築Hideharu MATSUFUJI
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Shotaro Suzuki
 
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~Akira Inoue
 

Similar to Windows Azure PHP Tips (20)

[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるNetラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
PHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferencePHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source Conference
 
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
 
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
 
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた
【de:code 2020】 「あつまれ フロントエンドエンジニア」 Azure Static Web Apps がやってきた
 
はじめてのコンテナーDocker & Windows & Linux
はじめてのコンテナーDocker & Windows & LinuxはじめてのコンテナーDocker & Windows & Linux
はじめてのコンテナーDocker & Windows & Linux
 
Using Windows Azure
Using Windows AzureUsing Windows Azure
Using Windows Azure
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
 
Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
 
Mvc conf session_5_isami
Mvc conf session_5_isamiMvc conf session_5_isami
Mvc conf session_5_isami
 
ゆるふわAzure Functions
ゆるふわAzure FunctionsゆるふわAzure Functions
ゆるふわAzure Functions
 
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!
INF-009_PowerShell を 使いこなして、自動化対応 エンジニア になろう!!
 
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
 

More from Microsoft Openness Japan (10)

Pycon APAC 2013 Windows Azure Session
Pycon APAC 2013 Windows Azure SessionPycon APAC 2013 Windows Azure Session
Pycon APAC 2013 Windows Azure Session
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
PHP on Windows Azure
PHP on Windows AzurePHP on Windows Azure
PHP on Windows Azure
 
Azure de PHP
Azure de PHPAzure de PHP
Azure de PHP
 
Azure de Linux
Azure de LinuxAzure de Linux
Azure de Linux
 
Windows Azure Community Open Day 2012
Windows Azure   Community Open Day 2012Windows Azure   Community Open Day 2012
Windows Azure Community Open Day 2012
 
PHP on Windows Azure Training
PHP on Windows Azure TrainingPHP on Windows Azure Training
PHP on Windows Azure Training
 
Oss on Azure, Websites, WordPress
Oss on Azure, Websites, WordPressOss on Azure, Websites, WordPress
Oss on Azure, Websites, WordPress
 
Oss on Azure, social mobile web
Oss on Azure, social mobile webOss on Azure, social mobile web
Oss on Azure, social mobile web
 
PHP on Windows Azure
PHP on Windows Azure PHP on Windows Azure
PHP on Windows Azure
 

Windows Azure PHP Tips

  • 1. 2011/05/28 浅見 城輝 http://www.asami.asia/ Copyright 2011 Kuniteru Asami 1
  • 2. 浅見 城輝 個人事業主 (2006年8月に独立) http://www.asami.asia/  Windows Azure導入支援 ◦ LAMPからWindows Azureへの移行  データベース関連サービス ◦ パフォーマンスチューニングが得意  サーバー構築  Webアプリケーション開発  インストールマニアックス2008ドキュメント賞  元々はUNIX/Linux+Oracleな人 実はWindowsのテクノロジはあまり知らない Copyright 2011 Kuniteru Asami 2
  • 3. PHP on Azureな開発環境を作るツール  Azureで便利なPHP用API Copyright 2011 Kuniteru Asami 3
  • 4. Windows Azure Companion  WebPi Command Line  Microsoft Visual Web Developer  Eclipse PDT (windowsazure4e)  CSPack & CSRun Command Line Tool  Windows Azure Command-line Tools for PHP Copyright 2011 Kuniteru Asami 4
  • 5. http://archive.msdn.microsoft.com/azurecompanion 省略 さっき「できる!Windows Azure Companion」で聞いたでしょ? Copyright 2011 Kuniteru Asami 5
  • 6. と言いつつ少しだけ…  ProductListXmlFeedを自前で用意することで、 他のアプリケーションもインストールすることが できます。 http://www.asami.asia/WindowsAzureCompanionFeed.xml Copyright 2011 Kuniteru Asami 6
  • 7. http://blogs.iis.net/satishl/archive/2011/01/26/webpi-command-line.aspx  Web Platform Installerのコマンドライン版です。  Startup TaskでWindows Azure上にPHPを 簡単にインストールできます。 ◦ 標準では細かいバージョンの選択はできません。 5.3/5.2が選択可能です。5.3.x/5.2.xは選択不可です。 Copyright 2011 Kuniteru Asami 7
  • 8. ServiceDefinition.csdef <?xml version="1.0" encoding="utf-8"?> <ServiceDefinition name="ProjectName" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"> : <WebRole> : <Startup> <Task commandLine="startup.cmd" executionContext="elevated" taskType="simple" /> </Startup> </WebRole> </ServiceDefinition> startup.cmd (出力ディレクトリ:常にコピーする or 新しい場合はコピーする) md "%~dp0appdata" reg add "hku.defaultsoftwaremicrosoftwindowscurrentversionexploreruser shell folders" /v ^ "Local AppData" /t REG_EXPAND_SZ /d "%~dp0appdata" /f "%~dp0webpicmdline.exe" /AcceptEula /Products:PHP53 >>log.txt 2>>err.txt reg add "hku.defaultsoftwaremicrosoftwindowscurrentversionexploreruser shell folders" /v ^ "Local AppData" /t REG_EXPAND_SZ /d %%USERPROFILE%%AppDataLocal /f Copyright 2011 Kuniteru Asami 8
  • 9. 古い(Azure SDK 1.2以前の)ドキュメントの手順ではAzure上で PHPが利用できるようになりません。  以下のサイトが参考になります。 ◦ http://blogs.gine.jp/kusa/archives/1407 ◦ http://blogs.gine.jp/taka/archives/1978 Copyright 2011 Kuniteru Asami 9
  • 10. http://www.windowsazure4e.org/  添付されているWindows Azure SDK for PHPや PHP contributions(php_azure.dll)のバージョンが古いことがありま す。  リモートデスクトップの設定など、GUIで対応していない機能がありま す。 参考) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/3_eclipse.pdf Copyright 2011 Kuniteru Asami 10
  • 11. CSPack(パッケージ作成) :http://msdn.microsoft.com/en-us/library/gg432988.aspx CSRun(エミュレータ実行):http://msdn.microsoft.com/en-us/library/gg433001.aspx  Windows Azure SDKに標準添付されています。  コマンドプロンプトで、 デプロイパッケージの作成や開発ファブリックでの実 行ができます。  ServiceConfiguration.cscfg, ServiceDefinition.csdefを、 自分で作成する必要があります。 コンピュートエミュレータ(開発環境)での実行例 rem コンピュートエミュレータ用パッケージの作成 cspack ServiceDefinition.csdef /copyonly /out:SamplePackage.csx /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwroot rem コンピュートエミュレータで実行 csrun SamplePackage.csx ServiceConfiguration.cscfg /launchbrowser rem コンピュートエミュレータを停止し削除 csrun.exe /removeall デプロイ用パッケージの作成例 cspack ServiceDefinition.csdef /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwroot 参考) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/4_cui.pdf Copyright 2011 Kuniteru Asami 11
  • 12. http://azurephptools.codeplex.com/  phpコマンドを利用してコマンドプロンプトで、 デプロイパッケージの作成や開発ファブリックで の実行ができます。  ServiceConfiguration.cscfg, ServiceDefinition.csdefは、 用意されているテンプレートから作成されます。 ◦ 細かい変更をコマンドライン引数で指定できます。 デプロイパッケージ作成例 コンピュートエミュレータ(開発環境)での実行例 php package.php ^ php package.php ^ --project=MyProject ^ --project=MyProject ^ --source=..php_source ^ --source=..php_source ^ --phpRuntime="C:Program FilesPHP" ^ --phpRuntime="C:Program FilesPHP" ^ --target=..workspace --runDevFabric ^ --cleanRebuild Copyright 2011 Kuniteru Asami 12
  • 13. Windows Azure SDK for PHP  Windows Azure - PHP contributions  OData SDK for PHP  AppFabric SDK for PHP Developers Copyright 2011 Kuniteru Asami 13
  • 14. http://phpazure.codeplex.com/ PHPからWindows Azure Platform特有の機能など を利用することができます。  Azure Storage(Blob, Table, Queue)へのアクセ ス  PHPセッション管理  Azureサービス管理  障害や性能などのモニタリングや診断 Copyright 2011 Kuniteru Asami 14
  • 15. Japan Windows Azure User Group PHP on Windows Azure http://r.jazug.jp/wiki/tech/php  Microsoft 使えるWindows Azure http://www.microsoft.com/japan/windowsaz ure/campaign/mobile/chapter.aspx Copyright 2011 Kuniteru Asami 15