2015年9月28日月曜日

SubversionとGitの連携

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載の途中なのですが、その副産物でちょっとした事に気付いたので、今回は番外編です。

内容は、「SubversionとGitの連携」です。

今の潮流はGit

さて、このブログをご愛読の皆さんはGitをご存じでしょうか?
使ったことの無い人でも名前くらいは聞いたことのある、世界的に有名なバージョン管理システムです。

細かい内容は専門サイトにお任せするとして、やっぱり最近はGitが流行ですよね。

流行の原動力となっているのは、こちら、GitHubが最大の要因でしょう。


まあ、簡単に言ってしまえばGitサーバレンタルサービスとでも申しましょうか。

オープンソースを開発してGitHubに掲載!!
今の時代はこれが世界で一番クールなIT技術者というイメージです。

プログラマーなら一度はオープンソースを作ってGitHubデビューしてみたいですね。

弊社はSubversion

しかし、バージョン管理システムはGitだけではありません。
他にも色々なバージョン管理システムがあり、その一つにSubversion(以下、SVN)があります。

弊社、ジェニシスでは主にこのSVNが使われています。

何故、GitではなくSVNを使っているかって?
そりゃ、前からSVNだからですよ。

今までSVNでソース管理してきちゃってるんだから、今更Gitに引っ越しなんて大変でしょ?

分かり易い事情としてご理解頂けると思います。(泣)

このため、私もGitを使う機会が殆ど無かったのですが、最近の連載であるAzureはGitを使う都合上で触っていたら、なーんだ。
既にSVN運用していても途中からGitデビューする方法があることに気付きました。

これが今回のテーマになります。

SVNの問題点

さて、何故私がSVNからGitに乗り換えることを画策するのか?
それはSVNには困った問題点があるからです。
それは「ゴミコミット」です。

まず前置きとして、SVNは特にチーム内で運用ルールを設けない限り、開発メンバーは以下のようにガンガンソースをコミットしてきます。



結果、このようにコミット履歴がボンボコボンボコ。。。
中にはミスコミットも混ざり込んでいることもあります。
リポジトリの肥大化が著しいですね。
これがゴミコメット問題です。




「だったらコミットルールを作れば良いじゃん?」

ってのはありますね。

  • レビューが完了するまでコミットしない。
  • コミットする時は複数人でコミット。

こういうルールにしておけばゴミコメット問題は発生しません。
しかし、これは面倒&非効率なのですよ。

実装者の立場としては、

  • ちょっと作って、動作確認。コミット。
  • ちょっと作って、動作確認。コミット。
  • ちょっと作って、動作確認。コミット。

これを繰り返したいのです。
そして何かミスってソースが壊れちゃった場合は、前回コミット段階までロールバック。
綺麗スッキリやり直し。

こうやって実装を進めるのが効率が良いのです。

しかし、「レビューが完了するまでコミット禁止」なんてやられるとこのテクニックが使えません。
あっちこっち未コミット状態になってしまって、何が何やら……。

逆にミスして変なバグが起きたりしないか、心配でなりません。



小まめにコミットした方が安全、合理的。

これは絶対そうなのですよ。
しかしこれだと上記のゴミコメット問題が発生する……。

Gitの利点

しかし、Gitだとこのゴミコメット問題が解消されます。


Gitでは本体リポジトリのクローンを自分のリポジトリに作って、クローンに対してコミットします。
そしてレビュー完了など万全な状態になったら、「プッシュ」を行うことで本体と統合!!

自分のパソコンに作ったクローンに何をコミットしようが本体リポジトリには影響がありません。

これで作業効率は高いまま、リポジトリへのミスコミット、ゴミコメットを防ぐことが可能になります。

これはぜひGit使いたいなぁ……。
でもウチの会社って本体がSVNだし……。

SubversionとGitの連携

ずっとこう思っていたのですが、Gitを触り始めて気がつきました。

本体SVNをGitクローン化。
これが出来るじゃありませんか。



本体がGitでなければGitは使えないと思っていたが、そんなこと無かった。

例えばTortoizeGitのクローン操作画面でも、以下のようにSVNからのクローンというメニューが出てきます。


Gitクローンを自分のローカルPCに作ったら、後は普通のGitと同じです。

本体がSVNである以上はGitの全機能が解放されているとは言えませんが、
少なくとも自分のローカルPC内ではGit機能がバッチリ使えます。

ゴミコミット問題もこれで解決です。

すぐに始めてOK

このGitクローンの好都合な点は、自分のローカルPCの中だけで完結する話だということです。

自分のローカルPCに何が起きても周囲に派生しませんし、
本体SVNから見れば普通にチェックアウトしてコミットしているようにしか見えませんからね。

今までSVNを使っているチームメンバー全員が一気にこのやり方に変更するのはチーム運用上手間がかかる話ですが、
このSubversion-Git連携の場合、自分一人だけコッソリGit活用していても周囲には何の影響もありません。

さあ、Gitを使いたがっているそこのあなた、さっさと移行してしまいましょう。

ただし、今までGitを使ったことの無い人は、事前にちゃんと使い方を覚えてからをオススメします。
微妙に高機能で複雑ですから。

例えば、当記事の「何度も作業コミットして、最後に一回だけ本番プッシュしたい」という目的の時に、
普通に「SVNへコミット」を実行すると、ご丁寧にも作業コミット履歴まで遡ってSVNに入ってしまってゴミコミット状態と何も変わらないという憤怒のオチになっちゃったりします。

事前に「一つのコミットに集約」をやっておくとか、Gitの機能を知っておかないと目的を果たせませんので、事前勉強は怠らないようにして下さい。



終わりに

既にGitを使っている人にとっては当たり前の知識かもしれませんが、
新しい技術領域にチャレンジしてみると、副産物でこういうチョイテクに気付くこともあるものです。

技術者たる者、アンテナは幅広く伸ばしていきたいものですね。

2015年9月24日木曜日

【Azure】ソースチェックアウト

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。
引き続き調査を継続していきます。

ソースを見たい

さて、前回までの記事の通り、AzureではWebアプリ作成時に最初からデフォルトで一通りのアプリがセットアップされた状態でスタート出来ます。
よって、Web上では既にソースが展開されているはずなのですが……、どうやってそのソースに手を加えれば良いのでしょうね?

どこかからチェックアウト出来るはず。今回はそれを探してみましょう。

ソース管理の統合

該当箇所はどこかな、と探していると、Webコンソールの最初の所にそれっぽいものがありました。

「ソース管理の統合」です。


トップページの一番下にありますね。
これを選択してみると……。


ふむ。
「デプロイの設定」というタイトルで一覧が表示されてきました。

  • Visual Studio Online
  • ローカル Git リポジトリ
  • GitHub
  • Dropbox
  • Bitbucket
  • CodePlex
  • 外部リポジトリ


色々ありますが、見た限りだと「Git」が目立つ印象です。
やっぱりGitにPushした瞬間にリリース完了、という手順が一番合理的なように思えますね。

話はそれますが、こんな所にDropboxが……。
画像とかドキュメントとかを共有したりクラウド活用したりする為のサービスだと思っていましたが、同じ要領でソースのデプロイにも使えるようです。
意外でした……。

さて今回、私は「ローカルGitリポジトリ」を選択したいと思います。


自分のパソコンにGitリポジトリを置いて、そこと連動するモードのようです。
これに当たって、私は先にGit本体と「TortoiseGit」をインストールしています。
WindowsでGitするならこれが定番でしょう。

では、次に進みます。

すると、ユーザとパスワードを登録する画面に来てしまいました。


んー。
AzureコンソールのログインIDとは別にデプロイ用のIDを必要とするようですね。

ここはIDは一緒にさせて貰った方がお手軽なのになぁ、と思う所ですが、
Dropboxとか別のアプリと連動する機能もある以上、別に権限管理しなければいけない技術的な都合があるのでしょうね。

お好みでIDを作成して次の画面へ。


おお。
心の準備をする前にGitリポジトリを作り始めてしまいました。ちょっと驚きました。

この辺りは外国製らしさを感じます。
日本のサービスだったら、きっと「Gitリポジトリを作成します。宜しいですか?」と確認メッセージが出て、そこで「はい」を押すと作成開始に進む流れだと思います。
しかし、外国製サービスでは問答無用で作っちまうというスタイルが多いです。

ユーザが作るつもりは無いのに間違えて作ってしまったら? その時は消せばいいのですよ。

  • 日本:間違えないように確認する為に確認画面を作成する。⇒工数高
  • 外国:間違えた? 修正画面で直せば大丈夫でしょ?⇒工数安

こういうノリなんですね。
日本人のおもてなし精神が垣間見える一面です。
しかし、その分だけ開発効率が……。なかなか悩ましい問題です。

さて、そうこうしているうちにリポジトリの作成が終わった模様です。


GITのURLをゲット出来ました!!

先ほど作成した私のIDがモロに出てしまっているので一部隠させて頂いていますが、URLをゲットすればこっちのもの。

後はコレをGit機能を使ってクローンしたりチェックアウトしたりすれば、無事にソースに触れるはずです。

続く

記事が長くなってきたので、ここから先は次回に回します。
しかし、かなり簡単に実現出来そうで好印象ですね。

2015年9月7日月曜日

【Azure】DBに接続

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。
引き続き調査を継続していきます。

DBはどうなった?

さて、前々回のWebアプリ起動にて、CakePHPの起動を行いました。

これを見ると、以下のような記述があります。


  • Your database configuration file is present.

つまるところ、Webアプリ起動時にCakePHPを選んだ時点で、勝手にDBがセットアップされているわけですね。

お手軽なことこの上ないです。
今回はこれに対して接続してみたいと思います。

SQL Databaseではない

まず最初にお断りしておかなければいけないのは、今回のテーマはWebアプリサービスで作ったDBの話です。
Azure界には別のDBもあるのです。

その名は「SQL Database」です。


コンソール画面から行くことが出来ますが、作っていないので当然無いですね。

「SQL Database」は、Microsoftが誇るデータベース「SQL Server」のクラウド版みたいなもので、MySQLとはまた別の製品なんですよ。

検証は出来ておりませんが、クラウドならではの長所はきっとあるのでしょう。
しかし、世の中の製品は、大抵は「SQL Database」なんて想定していなくて、例えば上記で登場しているPHPライブラリ「CakePHP」なんかは、MySQLを選ぶことが標準です。

つまるところ、「SQL Database」を選んでしまうと、「ライブラリが対応していない」「ライブラリの一部機能だけバグる」「そのままでは使えない」みたいなそれなりのハードルがあることが想定されます。
ゼロから気合い入れて大規模サービスを構築する場合はこれも有力選択肢として検討したいですが、今回みたいに「とりあえず初めてみよう」みたいな初期コストを安く抑える発想でスタートするプロジェクトだと、ちょっと敬遠した方が良いんじゃないかなって気がしますね。

Azureの目玉機能の一つである為、「Azure データベース」で検索すると最初に引っかかるのはこちら「SQL Database」ですが、私が今回テーマにしているのは別物ですのでお間違えなく。

設定を探せ

では、DBの接続に必要な設定情報を探していきましょう。
知らないうちに出来上がっているので自分でもどんな設定になっているか分かりません。

探していくと、ここにありました。
Webアプリコンソールの「構成」のページです。


ここの下の方に行くと「接続文字列」という項目があります。


どうやらこれのようです。

「<セキュリティ上の理由により非表示>」とあって接続文字列が非常になっていますが、すぐ上の「接続文字列の表示」をクリックすると表示されます。

厳重機密事項ではありますが、このアプリは検証用で大事なものでも無いですので、一部公開します。

  • Database=tacyA36lcaR9nz8A;Data Source=ja-cdbr-azure-west-a.cloudapp.net;User Id=bcec23b3f13af8;Password=●●●●●●

これらの意味は以下のとおり。

  • データベース名:tacyA36lcaR9nz8A
  • 接続先URL:ja-cdbr-azure-west-a.cloudapp.net
  • ユーザID:bcec23b3f13af8
  • パスワード:●●●●●●

普通ですね。
ポートとかは乗っていませんが、デフォルトということでしょう。

では、これで接続してみます。


これでOKです。
接続出来ました。

簡単ですね!!

ログインしたら既に権限もあって普通に「Create Table」とかも出来ました。

考察

以上、ハッキリ言って特に変わったことなど何も無いです。
本当にハードルが低く作られた良い出来だと思います。

これだけ簡単で互換性も高いとなると有望ですね。

例えば、現行で既に時前でMySQLを持っていますが、これがサーバ故障や負荷などで大変な問題が起きているとします。
でも、サーバ引っ越しは大事ですから、そう簡単には出来ません。

そんな時、こんな風にチョロッとMySQLのインスタンスを作り、DBだけ先行して引っ越しすることも十分可能だということです。
DB接続パラメータを切り替えるだけなら工数も少なめですし、
いつぶっ壊れるか分からないDBを持つより、この方が余程安心でしょう?

理想型は全部Azureに引っ越しですが、こんな小技で乗り切るような柔軟性もAzureにはあるのです。

終わりに

それにしてもAzureは分かり易くて助かりますね。

引き続き検証を進めていきたいと思います。

2015年8月24日月曜日

【Azure】番外編_無料試用期限が切れた

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。

期限切れ

さっそくですが、一ヶ月の無料評価版の期限切れの日がやってきました。

忘れてただけだろッ!!

いえいえ、意図的に切れるまで待ったのです。

「期限切れしたらどうなるんだろう?」

とビクビクしているユーザは沢山いると思いましたので。

今回は期限切れに至るまでの経緯についてご報告しようと思います。

経緯

7/22:契約

7月22日に無料試用版の契約を行いました。

この日に作業内容については過去ページ「無料評価版開始1」をご確認下さい。

8/15:警告が来る


期限切れまで一週間を切った日の翌日というロジックでしょうか?
「無料試用版 のサブスクリプションの無効化のお知らせ」というメールが届きました。

遠藤 太志郎 様

以下のサブスクリプションは期限が切れており、 2015年8月22日 に無効になります。サービスの継続利用をご希望の場合は、サブスクリプションの更新手続きをお願いいたします。

サブスクリプション名: 無料評価版

ご不明点がある場合は、弊社まで (電話番号: 0120-952-593) ご連絡いただくか、http://www.azure.microsoft.com/support にアクセスしてください。

ここは敢えて放置して様子を見ます。

8/21:最終通達


期限切れの前日に「無料試用版 のサブスクリプションの無効化のお知らせ」というメールが届きました。

遠藤 太志郎 様

以下のサブスクリプションは期限が切れており、 2015年8月22日 に無効になります。サービスの継続利用をご希望の場合は、サブスクリプションの更新手続きをお願いいたします。

サブスクリプション名: 無料評価版

ご不明点がある場合は、弊社まで (電話番号: 0120-952-593) ご連絡いただくか、http://www.azure.microsoft.com/support にアクセスしてください。

これでも放置します。

8/22:無効化

結果、ピッタリ一ヶ月後に無効化されてしまいました。

「無料試用版 の解約手続き完了のお知らせ」

遠藤太志郎 様、こんにちは

2015年8月22日に以下のサブスクリプションの解約手続きが完了しましたので、ご確認ください。

サブスクリプション名: 無料評価版

「サブスクリプション - 無料評価版 - は無効になりました」

サブスクリプションのデータは 90 日間保持され、Fri, 20 Nov 2015 02:32:53 GMT に完全に削除されます。 その前に、重要なデータは保存しておいてください。

どうやら一ヶ月が経過した段階で無効状態になり、更に90日が経過すれば完全削除となるようです。

流石に完全削除まで見届けるわけにはいきませんので、この辺りで復活させたいと思います。

さて、ここからどうやって復活するか。
今回の主題はそこになります。

サインイン

では、さっそくAzureの管理コンソールにログインします。
普通にログイン出来ましたので、一つ分かりましたね。


  • アカウントそのものが消えるわけではない。


すると、コンソールは以下のような状態になっています。


ふむ。
赤い警告マークが出てしまっていますね。

しかしやっぱり無効化されているだけで消えたわけではないようです。

警告マークをクリックすると次の画面に進みます。


無料版から有料版へのアップグレードを促されますので、指示に従って次に進みます。


アップグレードを実行します。


これでもうアップグレードが完了してしまいました。

既に有料モードに入っています。
ただし、これは従量課金制ですので、使用しなければまだ費用が発生することは無いようです。

無料は続く

こうして有料の従量課金制に入ってしまったわけですが、心配はいりません。

従量課金制の中に「無料コース」があるのです。

設定画面の「スケール」というページに進みますと、以下のような画面になりました。


無料という選択をしているうちはずっと無料です。

これは開発用の設定でして、このブログを書いている私のように一人で検証しているうちはこの無料コースでの開発で十分でしょう。

複数人で本格的に開発する場合は「共有」「BASIC」など、有料コースにシフトして行きたいですね。

詳細はこちら公式サイトをご覧下さい。



終わりに

一先ずこれで、無料期間が終わっても急に有料になってしまったりすることは無いことが確認出来ました。

まだしばらく検証を続けて、いずれはちゃんとした有料コースでサービス展開をしてみたいところですね。

2015年8月6日木曜日

【Azure】Webアプリ起動

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。
前回に引き続き、無料評価版にて検証を続けていきたいと思います。

アプリ新規作成

こちらが全ての基本となる管理コンソール画面です。


早速ですが、今回の検証では一番の標準であるWEBアプリの開発を行っていきたいと思います。

左のメニューからWEBアプリを選択して、WEBアプリの作成をクリックすると、このように作成メニューが出てきます。




この時、とりあえず適当にポンポンと作成してみたい気もしますが、ここで気になる項目「ギャラリーから」というのがあります。
これを選んでみましょう。

すると、ジャーン。

最初からミドルウェアやライブラリが選べる状態ではありませんか。


  • Acquia Drupal 7
  • Apache Tomcat 8
  • Better CMS
  • BlogEngine.NET
  • Bottle
  • BugNET
  • CakePHP
  • Composite C1 CMS
  • Concrete5
  • DasBlog
  • Django
  • DNN Platform
  • Drupal Commerce
  • EC-CUBE
  • Express サイト
  • Flask
  • Gallery Server Pro
  • Ghost
  • Incentive
  • Java Coffee Shop
  • Jetty
  • Joomla!
  • Kentico CMS for ASP.NET
  • Lemoon
  • MageliaWebStore (IIS 用)
  • Magento
  • MediaWiki
  • mojoPortal
  • MonoX
  • MVC フォーラム
  • nopCommerce
  • nService
  • NuData DKAN
  • OpenCart
  • Orchard CMS
  • osCommerce
  • OWA
  • phpBB
  • Piwik
  • Pligg
  • razorC.net
  • SageFrame
  • Service Gateway
  • SoNET Web Engine 4.1
  • SugarCRM
  • Umbraco CMS
  • Virto Commerce
  • WordPress

凄く沢山ありますね……。
ほぼ軒並み聞いたこともありませんが……。

でも、人によっては「あっ、これ、知ってる!!」みたいなのもあるんじゃないでしょうか。
初期セットアップがそこそこ面倒なあのライブラリも、Azureなら最初からインストール済みでスタート出来るのです。

アップデートも盛んで、今後もこのギャラリーは数を増やしていくものと推測されます。

では今回は、自分で何かアプリを作ってみようと思いますので、CakePHPを選択してみましょう。

すると以下のように作成画面に移ります。


そのまま次に進むとDBセットアップ画面へ。


あら?
MySQLしか選択肢に出てきませんね。

本当はMicrosoftのクラウド専用データベース「SQL Database」を使ってみたかったのですが、ライブラリの制約によりMySQLを選ばざるを得ないようです。
ここは残念な所ですが、CakePHPの仕様を考えると仕方無いかもしれませんね。

完成

はい、これで終わりです。もうサイトが出来上がってしまいました。
早ぇぇ~。


終わりに

と言うわけで、CakePHPの起動までなら一瞬でしたね。

ここから先はもう実装に入れるような感じがしますが、まずは着手する前に「データベースへのアクセス方法」とか「コミット方法」とか、
その辺を調査していこうと思います。

2015年7月25日土曜日

【Azure】無料評価版開始1

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。
前回では体験版を使ってみましたが、体験版とはちょっと隅っこをかじるだけのシロモノ。
いよいよ本格的な評価用である無料評価版のサインアップを開始していきましょう。

無料版開始


無料版の入り口はパッと見て一番目立つ所にあります。



すると、Microsoftアカウントのサインイン画面に進みます。



これを見たとき、「あれ、hotmailのアカウントが必要なのかな?」と直感で思いましたが、別にそんなことはありませんでした。
好きなメアドを自分のIDで登録して下さい。
(そもそもhotmail自体がとっくの昔にサービス終了していましたね)

次に進むのは、こちら。Azureサインアップ画面です。


この画面では個人認証を行います。
まず自分の携帯電話にコードを送って貰います。
その上でクレジットカード認証が必須です。

うっ、やだなーとは思いました。最近って流出事件が多いですからね。。。
しかし、ここはMicrosoftのブランド力を信用しましょう。

なお、「この情報は本人確認のためにのみ収集されます。」とあり、勝手に有料モードに切り替わることもありません。
「知らないうちにお金取られてた」という事態にはならないはずなので安心したいところです。(大丈夫かな???)

今は私の私物クレジットカードを使用。
早めに会社カードに差し替えたいです。

この調子で登録すると、「サブスクリプション」と呼ばれる利用開始契約が結ばれます。


これで準備は整いました。
「サービスの管理を開始する」を選んで次に進みます。

すると、最初にチュートリアルが出てきました。



早い話が、管理コンソール画面はWeb画面ですけど、まるでクライアントソフトウェアのようなリッチな操作が可能ですよ、というアピールのようです。
私の主観ですが、かなり綺麗で使い易そうです。

前に私が試してみたGoogleAppEngineと比較すると、絶対こっちの方が好印象です。
シェアの違いはこういうところにあるんですよ……。


さて、これで一先ず使用可能状態に入ったようですね。
この間、このブログを書いている時間を差っ引けば10分くらいで開始出来たと思います。

まだアカウントを作っただけですが、かなり簡単ですね。
現状、私としては以下のようか感想を抱いています。

  • 分かり易い。
  • 親切。
  • 綺麗。
  • 丁寧。

正直言いますと、クラウドって結構最近のサービスだから色々と難しい所も多いかなぁ、と思っていましたが、
Azureだとそういう印象はありませんね。

次回以降の記事に回しますが、このコンソール画面も非常に直感的に使い易くなっています。
精神的な導入ハードルは低いです。

流石はMicrosoftか、この辺りは実に洗練されたものですね。

終わりに

以上、まず今回はアカウント作成まで進みました。

次回以降はWebアプリの作成に入っていきたいと思います。

2015年7月21日火曜日

【Azure】体験版起動

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はMicrosoft Azureについて連載中です。
事前調査は前回までで切り上げて、そろそろアプリの作成に入っていきましょう。

無料版を探せ

まずはAzureがどんなものか、無料範囲で検証していきたいと思います。
しかし、さっそく行き詰まる所が……。
無料バージョンが複数見つかるんですよね。



それぞれ、


  • ①体験版
  • ②一ヶ月無料版
  • ③一ヶ月無料版(別リンク)


紛らわしいわ!!

何が違うかと言いますと、
①はWebAppを本当にチョチョイとお手軽に初めて見るインスタント体験版、
②③はフルパックを1ヶ月間だけ無料で出来るコースのようです。

何でこんな構成になっているのか経緯は調べようもありませんが、恐らくは過去にそれぞれ別サービスだった頃の名残だと思われます。

今でこそAzureは「App Service」という一つのサービスに統合されていますが、昔は「Web Apps」「Virtual Machine」など機能に応じて別々に展開していました。
別々だった頃にそれぞれ別々に無料プランがあった。
その名残で、①と②のように違う無料プラン、②と③のように同じものでもリンクが違う、といった状況になっているのだと私は考えています。

やっぱりAzureと言うかクラウド業界はまだまだ発展段階なのですね。

完成された技術領域でやっていると無いことも、こういう発展途上領域だと「あれっ?」っていうことが結構出てきます。
そういうのも含めて気ままにやっていきましょう。

体験版を選択

では、上記の中から、今回は体験版を選びたいと思います。

  • http://azure.microsoft.com/ja-jp/services/app-service/web/


数秒で開始できます。とのこと。実に早いですね。
Webサイトを始めるのに必要な設定が最初から揃っている所からスタート出来るのがAzureの魅力の一つです。

次に、言語を選択します。
プランは以下。

  • C#
  • 空のサイト
  • HTML5
  • Java
  • NodeJs
  • PHP
  • Python

選択した言語のランタイムが適用された状態からスタート出来るものと思われます。

しかし「HTML5」って要は単なるhtmlだろと突っ込みたくなりましたが、これはつまり、普通のホームページもAzureに引っ越ししろというアピールなのでしょう。

「単なる普通のホームページなんて、普通のレンタルサーバにFTPでファイルを置けば十分」みたいに思っている人は多いでしょうけれども、
言語を実行しない単純なホームページでも、クラウド化する価値は十分にある!!

急にアクセスが増えても落ちませんし、バージョン管理も体系化出来ますし、高度なアクセス解析機能が使用出来るようになったり。値段も安くなるんじゃないかな?
単にHTMLファイルを一個置くだけでも技術革新はあるのです。

それはさておき、今回は言語はPHPを選択したいと思います。


作成画面

PHPを選んで、Webアプリの作成を実行します。
すると、以下のように英語版の画面に飛ばされてしまいました。


クラウド界ってこのパターンが非常に多いのですが、日本語化が中途半端なのですよ。
細部に渡って細かく日本語を整備するのが面倒だから以外に理由など考えられませんが、
むしろ「プロのSEなら面倒がらずに英語くらい読めよ」の方が正論でしょう。

下の方に進むと以下の項目があります。


前の画面で選択したPHPがデフォルトでセットされています。

ここから選択肢は2つ。

  • PHP Empty Site
  • PHP Starter Site

EmptyはHello World状態、Starterはそこそこ色々取りそろえ状態からスタートです。
今回はStarterを選択します。

Create

PHP Starter Siteを選択して、Create実行!!

この直後にサインインが求められますが、サインインしてから数秒後、サイト完成ッ!! 速いッ!!


ランダム文字列みたいなURLが出ていますので開いてみますと、以下のようなサイトが出来上がっていました。
これがスターター画面なのですね。


本当に数秒でスタート出来てしまいました。

しかし、開発者の観点からですと、「これってどうやって動いているんだろう?」まで調べておかないと意味無いです。
親切なことに、このスターターサイトはGit連動しているようなので、Gitでソースを取得してみましょう。

その結果がこちら。


なるほど。
普通にPHPですね。
既にDBにも接続されており、正にスタート状態です。

ここから先は普通にソースをプッシュしていけばサイトを作っていけるというわけです。
いやぁ、便利なものですね。

終わりに

と言うわけで、難なくサイト構築まで辿り着くことが出来ました。
ちなみに上記は体験版につき、1時間しかサイトが残留しません。

本格的には一ヶ月無料版を選ぶ必要があるので、また次回からやり直しです。

しかし、体験版により開発風景の感触を掴むことは出来ましたね。
よく出来ていると思います。

スムーズにキックオフ出来たことですし、今後も頑張って行きたいです。