Microsoft Tech Summitに行ってきた(PartsUnlimitedをMacで動かす、のおさらい)

2016/11/1-2に開催されたMicrosoft Tech Summit 2016にちょこっとだけ参加してきました。 2日間フル参戦できれば幸せですが、打ち合わせやら作業やらの為、11/2に3セッションのみの参加となりました。

で、私が受講したのは以下の3セッション。

  • SPL003 【DevOps Global Consortium 発足記念】日本生まれの DevOps! DevOps スペシャリスト達のあくなき挑戦
  • SNR001 [ランチ付き] Azure IaaS 応用編~実務で使えるVMとPaaSの組み合わせ~
  • APP001 .NET Core アプリケーションに見るクラウド時代の開発運用サイクル (前編)

それぞれ感想はありますが、「APP001 .NET Core アプリケーションに見るクラウド時代の開発運用サイクル (前編)」で紹介されていた PartsUnlimited アプリケーションをMacでビルド&実行するというのを自分でおさらいしておこうと思います。

PartsUnlimitedを動かす!

PartsUnlimited(https://github.com/Microsoft/PartsUnlimited)とはMicrosoftが作成してGithubで公開している「DevOpsシナリオを想定した」コマースサイトの実装です。で、.NET Coreでビルド&実行することができます。

井上 章さん・小塚 大介さんのセッション中でもgithubから取得して実行するというデモがありましたが、改めて自分のMacで動作させる操作をここに記したいと思います。(なぜなら公式サイトのGettingStarted for Linux/OS Xの記述はdnuコマンドを使うというβ版だったかα版だったかの頃の.NET Coreコマンドで説明されているので。そのうち更新されるかな・・・)

私の環境はこんな感じ

まず、私のMacのNode / npmのバージョンは以下の通り。 f:id:daigo-knowlbo:20161103135856p:plain

1. PartsUnlimitedのソースを取得

gitコマンドでソースを自分のPCにcloneしましょう。 ソースを置きたい任意のフォルダに移動して、ターミナルから以下のコマンドを実行します。

git clone https://github.com/Microsoft/PartsUnlimited.git 

※ここでは「/Users/daigo/projects」ディレクトリにcloneしました。 f:id:daigo-knowlbo:20161103141029p:plain

2. bowerとgruntをインストールする

PartsUnlimitedアプリケーションでは、パッケージ管理のBowerとタスクランナーのGruntが使われています。
ですのでこれらをインストールしておく必要があります。

npmを使ってBowerとGruntをインストールします。以下のように-gを付けてグローバルにインストールしちゃってOKです。

sudo npm install bower -g 

f:id:daigo-knowlbo:20161103141516p:plain

sudo npm install grunt -g

f:id:daigo-knowlbo:20161103141758p:plain

※npm関連でエラーが出たら以下のあたりのチェックを行うと良いと思います。(まあ、発生したエラーでググれば良い感じかな。情報は多いので、なんとなく(苦労しながら?)解決することができるのではないかと・・・)

qiita.com

parashuto.com

3. dotnetコマンドでプロジェクト依存パッケージ等の取得を行う

githubからクローンしたPartsunlimitedディレクトリ配下のsrc/Partsunlimited.Modelsに移動して以下のdotnetコマンドを実行します。

dotnet restore 

f:id:daigo-knowlbo:20161103142443p:plain

次にPartsunlimitedディレクトリ配下のsrc/PartsunlimitedWebSiteに移動して以下のdotnetコマンドを実行します。

dotnet restore 

f:id:daigo-knowlbo:20161103142702p:plain

4. dotnetコマンドでプロジェクトを実行する

引き続きsrc/PartsunlimitedWebSiteディレクトリにおいて以下のdotnetコマンドを実行します。

dotnet run 

f:id:daigo-knowlbo:20161103143221p:plain 上記画像の続き↓↓↓ f:id:daigo-knowlbo:20161103143314p:plain コンパイルが成功して、localhostの5000番ポートでリスニングしたよー、と表示されます。

ブラウザで http://localhost:5000 にアクセスしたのが以下の画面です。見事にASP.NET Core / C# コードがMacで実行できました! f:id:daigo-knowlbo:20161103143544p:plain