matarillo.com

The best days are ahead of us.

1 ASP.NET 5をLinuxにインストールする (手動)

2015-01-17 21:31:15

前提

この記事は2015/1/1に書きました。 執筆当時のASP.NET 5のバージョンはv1.0.0-beta1です。 執筆当時のMonoのバージョンは3.10.0、libuvのバージョンは1.1.0です。

OSはLinux Mint 17.1 Rebecca MATE (x64)という、Ubuntu 14.04 Trusty Tahrの派生版を使いました。

(2015/1/17追記) ASP.NET 5のバージョンはv1.0.0-beta2になりました。README.mdはまだ古いままですが、いずれ更新されるでしょう。

Mono 3.10.0のインストール

デフォルトaptリポジトリに含まれているMonoのバージョンは古いので、最新版を入れるにはMonoプロジェクトのaptリポジトリを参照する必要があります。

まず、MonoプロジェクトのGPG公開鍵を追加します。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

次に、/etc/apt/sources.list.d にエントリを追加します。

echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list

追加できたら、apt-getmono-develをインストールします。

sudo apt-get update
sudo apt-get install mono-devel

libuv 1.1.0のインストール

ASP.NET 5 v1.0.0-beta1が前提にしているlibuvは1.0.0-rc2なのですが、サンプルアプリケーションは1.1.0でも動作しました。

ビルドに必要なツールやライブラリをインストールしておきます。

sudo apt-get install autoconf automake build-essential libtool

libuv 1.1.0のtarballをダウンロードして展開します。

wget http://libuv.org/dist/v1.1.0/libuv-v1.1.0.tar.gz
tar -xvf libuv-v1.1.0.tar.gz

libuvのサイトに記載されている方法でビルドしても問題ないようです。

cd libuv-v1.1.0/
sh autogen.sh && ./configure && make && sudo make install
ldconfig

K Version Manager (KVM)のインストール

K Version Managerをインストールすると、ログインユーザーのホームディレクトリ直下に.kreというディレクトリが作られます。

curl -sSL https://raw.githubusercontent.com/aspnet/Home/master/kvminstall.sh | sh && source ~/.kre/kvm/kvm.sh

K Runtime Environment (KRE)のインストール

kvm upgradeコマンドで、上と同じく.kreディレクトリに最新のK Runtime Environmentがインストールされます。

kvm upgrade

K Package Manager (KPM)の利用準備

K Package Managerは、クラスライブラリをMSのサイトやNuGetリポジトリなどから取得して、アプリケーションのプロジェクトに配置するものです。

アセンブリをダウンロードする際には証明書が必要となるので、ここでmozrootsコマンドとcertmgrコマンドでインストールしておきます。

sudo mozroots --import --machine --sync
sudo certmgr -ssl -m https://go.microsoft.com
sudo certmgr -ssl -m https://nugetgallery.blob.core.windows.net
sudo certmgr -ssl -m https://nuget.org
sudo certmgr -ssl -m https://www.myget.org/F/aspnetvnext/

インデックスへ戻る