Genesis Vargas J

Ejecutar ASP.NET VNEXT en GNU/Linux (Ejemplo MVC)

Comparte:

Hola que tal amigos, esta publicación va a mostrar como correr ASP.NET VNEXT sobre Gnu/Linux. Para los que aun no saben bien que es ASP.NET VNEXT, les cuento que es la última versión de ASP.NET de Microsoft que rompe el paradigma de lo que era antes esta tencología porque si analizamos bien esta versión nos daremos cuenta que es un rediseño muy revolucionario trayendo cosas para bien de la tecnología ASP.NET como para las comodidades de los programadores, podemos destacar varios puntos como: 1) ASP.NET ya no necesita de IIS (servidor para páginas que solo esta disponible en windows) y cuando me refiero a esto afirmo que MVC puede ejecutarse en sistemas linux, mac y hasta desde la terminal, todo esto es posible porque en esta nueva versión MVC se desacopla de System.Web lo cual hace que arranque el servicio más rápido, que consuma menos memoria y que ya no necesite IIS para ejecutarse, 2) !Es open source! y Multiplataforma si, como acbas de leer. Esta nueva versión se convierte completamente en open source ya que microsoft se ha dado a la tarea de liberar .NET y obviamente ASP.NET no era la exepción; se licencia bajo la Apache 2.0 (licencia open source y compatible con la GPL V3), puedes ver el proyecto desde su página en GITHUB 3) Configuración del entorno de Cloud-ready, que hace que exista una version optimizada para el cloud/nube con la colaboración de provedor de servicios like Nuget como MyGet para "hostear" nuestras aplicaciones y poder ejecutarlas desde el cloud. Y muchas novedades mas.

En este ejemplo vamos a configurar ASP.NET VNEXT en Ubuntu (Gnu/Linux) para correr las aplicaciones/ejemplos de muestra que nos deja el proyecto en en el repositorio de GITHUB.

Lo primero que vamos a hacer es abrir la terminal e instalar MONO (que es la implementación de .NET en Gnu/Linux, MAC, etc), para hacer esto es necesario escribir los siguientes comandos:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
sudo apt-get install mono

asp.net vnext en linux

(Si no estas usando ubuntu/debian te recomiendo que sigas la instalación de mono como lo dice en su página oficial ---> LINK)

Teniendo instalado mono en nuestro sistema operativo gnu/linux se realizan los siguiente pasos:

Instalar K Version Manager (KVM) que sirve para actualizar e instalar diferentes versiones de KRE.

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

Instalar K Runtime Environment (KRE) que es el código necesario para arrancar y ejecutar una aplicación ASP.NET vNext:

kvm upgrade

seguidamente clonamos el repositorio HOME de ASP.NET en github

git clone https://github.com/aspnet/home.git

Hasta este punto ya tenemos instalado y configurado ASP.NET VNEXT, ahora procedemos a correr los ejemplos de muestra que estan en el repositorio de github, para eso nos situamos en la carpeta del proyecto de ejemplo MVC que nos descargamos:

cd Home/samples/HelloMvc

ya situados en la carpeta, ejecutamos el comando:

kpm restore

y corremos el entorno:

k run

--> si es una aplicación de consola

k kestrel

--> si es una aplicación web

En este ejemplo será k kestrel y finalmente procedemos a entrar en nuestro navegador y nos dirigmos a la url: http://localhost:5004/

asp.net vnext en linux

Como podemos ver se ejecuto el ejemplo correctamente. Si tienes problemas con la configuración les entrego un script "instalador" que realiza toda esta tarea (debes tener ya instalado mono y solo configura, es decir: si quieres ejecutar el ejemplo despues de ejecutar el siguiente script deberas seguir los pasos desde clonar el home de asp.net en github, situarte en la carpeta del proyecto, ejecutar el comando kpm restore y despues ejecutar k run o k kestrel segun el ejemplo)

asp.net vnext en linux

Bueno eso es todo espero que les sirva mucho para aprender y practicar. les dejo el script de configuración desde github por si tienes problemas.

El script de configuración fue escrito por mi colega MVP Microsoft en .NET de singapur: Punit Ganshani

DESCARGAR SCRIPT

Comentarios


genesis vargas

Soy Genesis Vargas Jiménez, autor de éste blog. Me gusta desarrollar software en todas las plataformas (web, móvil y desktop) y compartir conocimiento para ayudar a muchas personas.

Desde el 2015 soy MVP Microsoft en Visual Studio y tecnologías de desarrollo, reconocimiento que me enorgullece mucho.

MVP Genesis Vargas J

A PHP Error was encountered

Severity: Core Warning

Message: Module 'timezonedb' already loaded

Filename: Unknown

Line Number: 0

Backtrace: