Instalando ASP .Net vNext no Linux Ubuntu

A equipe do ASP .Net lançou no último Build algumas novidades que estão por vir na próxima versão do ASP .Net, também conhecida como vNext (próxima versão).
E uma das novidades que gostei foi a possibilidade de poder rodar o ASP .Net MVC em Linux e este é o propósito deste artigo.

O maior problema não é rodar e configurar o ASP .Net no Linux, a maior dificuldade que encontrei foi a instalação do Mono no Linux, já que precisamos ter a última versão instala.

Tentei por várias vezes e não obtive sucesso, até encontrar uma versão que fizeram para o Vagrant, resolvi olhar o código e vi que tinha alguns comandos que estavam sendo negligenciados por mim.

Vamos a instalação, estou usando uma máquina virtual do Hyper-V rodando o Ubuntu 14.04, com uma instalação limpa, ou seja, que acabei de instalar.

Instalar a última versão do Mono no Linux Ubuntu

Primeiro precisamos atualizar e instalar alguns pacotes do Linux, já que temos que compilar a última versão do Mono, que iremos clonar do repositório oficial deles no GitHub nos próximos passos. Abra o shell do seu Ubuntu e execute o comando abaixo:

1
sudo apt-get -y install curl unzip git-core build-essential autoconf libtool gettext libgdiplus libgtk2.0-0 xsltproc

Uma vez atualizados os pacotes básicos, vamos entrar na pasta /tmp para iniciar o processo de clonagem do repositório do Mono, para isso execute os comandos abaixo:

1
2
cd /tmp
git clone --depth=1 https://github.com/mono/mono

O detalhe aqui na hora de clonar o repositório é –depth=1 com esse parâmetro estamos informando ao Git que precisamos somente da última versão e que não precisa baixar todo histórico de commits do repositório, já que vamos usar o código somente para compilar e instalar e não para contribuir. Como não conhecia esse –depth clonei o repositório inteiro e isso leva muito tempo, já que ele todo tem em média 300mb.

Agora precisamos configurar o nosso código para a instalação, para isso execute os comandos abaixo:

1
2
cd mono
./autogen.sh --prefix=/usr --with-mcs-docs=no

Uma vez configurado, vamos baixar a última versão do MonoLite e instalar de fato o Mono:

1
2
3
make get-monolite-latest
make
sudo make install

Pronto com isso você já deve ter o Mono instalado em seu Linux, agora para finalizar precisamos atualizar os certificados instalados na nossa máquina, execute o comando abaixo:

1
mozroots --import --sync

Instalando o ASP .Net vNext no Linux

Para rodar o ASP .Net precisamos instalar o kvm que é quem inicializa e roda o ASP .Net.
Para isso precisamos baixar o script que irá fazer toda a mágica para nós.

1
curl https://raw.githubusercontent.com/graemechristie/Home/KvmShellImplementation/kvmsetup.sh | sh && source ~/.kre/kvm/kvm.sh && kvm upgrade

Com isso já podemos rodar código ASP .Net MVC no Linux! Usando os comandos do KVM.

Rodando o ASP .Net vNext no Linux

Para testar nossa instalação do ASP .Net MVC no Linux vamos clonar um repositório de exemplo, para isso execute o comando abaixo:

1
git clone https://github.com/davidfowl/HelloWorldVNext ~/helloworld

Agora já temos no nosso Hello World em ASP .Net vNext, criado na pasta do usuário atual, para finalizar precisamos acessar a pasta do código e baixar todos os pacotes necessários para este exemplo.

1
2
cd ~/helloworld
kpm restore

Agora nosso exemplo está pronto para ser executado!
Para inicia-lo:

1
2
cd src/hellowordweb
k web

O comando k web é quem inicia o nosso site, que agora já pode ser acessado em http://localhost:8080

ASP .Net vNext roda no Linux!

Bom antes de mais nada isso é só um pouco de diversão, já que todo o código ainda está em versão Alpha e deve mudar muito até o seu lançamento oficial!

É muito bom poder ver a equipe do ASP .Net seguindo esses novos caminhos e poder acompanhar o código no GitHub commit a commit e aprender muito com o código escrito por eles, e pra quem se arrisca pode participar contribuindo!

É isso pessoal, espero que tenham gostado da dica e vamos aguardar a próxima versão que deve chegar no ano que vem!

Comentarios

comentarios

One Response to Instalando ASP .Net vNext no Linux Ubuntu