lunes, 2 de enero de 2017

Desplegar Sitio Web ASP .Net MVC 6 en AWS Elastic BeanStalk con Docker



Una de las nuevas características que tenemos en .Net es que podemos ejecutar código .Net en Mac y Linux. En este bloc explicaremos como hacer esto utilizaremos .Net Core y Docker.


Pre requisitos

1.       Visual Studio

Lo primero que necesitamos es tener instalado Visual Studio (en este caso lo hice como Visual Studio)

2.       Net Core.

Net Core nos permite ejecutar código ASP .Net MVC y Web API en (Windows, Linux, MAC)
       Del siguiente link puedes descargarlo

https://download.microsoft.com/download/F/6/E/F6ECBBCC-B02F-424E-8E03-D47E9FA631B7/DotNetCore.1.0.1-VS2015Tools.Preview2.0.3.exe

3.       Docker para Visual Studio.

En el siguiente link puedes descargar el Componente de Docker Para Visual Studio
https://marketplace.visualstudio.com/items?itemName=MicrosoftCloudExplorer.VisualStudioToolsforDocker-Preview

4.       SDK AWS para Visual Studio.

Este SDK nos proporciona de las herramientas para poder conectar desarrollar y desplegar en la Nube de Amazon. Unas de las cosas que se pueden hacer es las funciones Lambda que en el siguiente bloc explicaremos con desarrollar proar y desplegarlas.

En el siguiente link puedes descargar el SDK AWS Para visual Studio
https://sdk-for-net.amazonwebservices.com/latest/AWSToolsAndSDKForNet.msi

5.       Docker para Windows

Para poder ejecutar nuestro código necesitamos tener instalado Docker en este caso como lo estamos haciendo en Windows es Docker para Windows

El siguiente link puedes descargar Docker para Windows.


 Teniendo todo esto listo podemos empezar.
Paso 1
Creamos un proyecto seleccionando .NET Core/ ASP .NET Core Web Aplicación/[Nombre de Tu  Web]/Aceptar


Paso 2

Para que nuestro sitio web puede ejecutarse dentro de un contenedor Docker, tenemos que hacer lo siguiente. Teniendo nuestro Sitio Web dentro de un contenedor Docker, nos da la posibilidad y la facilidad de que este sitio sea más fácil su despliegue y su escalabilidad.
Para que el sitio Web se ejecute en Linux dentro de un Contenedor Docker. Damos click botón derecho en el proyecto Agregar Docker Support.


Nota: Con esto se genera los ficheros de configuración de Docker donde están las dependencias, así como los Runtime necesarios para que nuestro sitio funcione.

Paso 3

En este paso se pueden extender todo lo que quieran pues aquí está la lógica del Sitio. Básicamente es el desarrollo de el sitio Web. En este caso utilizaremos el MVC 6 

Vista

Aquí podríamos utilizar Angular JS 2 Para las Vistas, React. En este caso para ir de forma más rápida con los fines didácticos utilizamos Razor “Es decir utilizamos el Framework ASP MVC 6”

Controlador

El caso del controlador lo que haremos es agregar un método Asíncrono que llama a un servicio REST que está en WEB API.

Modelo

Para el caso del Modelo solo hemos agregado una clase del TIPO POCO (Plain Old CLR Objetc) con las propiedades de nuestra entidad. Cabe resaltar que podemos utilizar Entity Framwork para conectarnos con Base de Datos como SQL Server, Oracle, mySQL, ETC. Pero en nuestro caso sería lo más parecido a ODATA.
Nota: Para este paso puedes desarrollar todo lo que sea necesario para abarcar la lógica de tu portal Web.
Codificamos Las Vistas/Controladores/Necesarias ...

Paso 4

Creamos la aplicación en AWS. Para nuestro caso utilizaremos elastic beanstalk.


Nota: Aquí es necesario contar con una cuenta AWS, puedes utilizar la gratuita que te permite utilizarla por 12 Meses.
Creamos una nueva Aplicación
En las Aplication Name ponemos una descripción de la aplicación tenemos que considerar que este nombre no debe tener espacios
Y en Descripción ponemos la funcionalidad de la aplicación.


Paso 5

En este paso crearemos en el entorno, donde se ejecutará nuestro sitio web. Nosotros utilizaremos Linux con Docker.
1. Seleccionamos Web Server enviroment
2. En la opción de plataform
3. Después en Cofigure more options /Enviroment settings

4. Finalmente, click en el Boton Create enviroment Esperamos a que se cree el entorno.

Es importante que cuando crea la aplicación carga una de ejemplo. Solo es algo a considerar porque nosotros remplazaremos dicha aplicación con nuestro Sitio Web. 
Cuando este listo en entorno con la aplicación en la consola de AWS tenemos que ver esto. Si se dan cuenta nos creo una aplicación que se ejecutara en Linux dentro de un contenedor Docker.

Paso 6.

El despliegue desde Visual Studio. Es importante resaltar que en este paso tuviste que haber considerado los pre requisitos, pues es aquí nos conectamos AWS médiate en SDK.
1. Damos click en el proyecto y damos click en Publish AWS Elastic Beanstalk.



2. Aquí nos mostrara las Aplicaciones y Entorno que tenemos que creados para la región seleccionada.
En nuestro caso es Demo_ASP_Net_Cores "Que es la que acabamos de crear en el paso 5".


3. La siguiente etapa del asistente nos muestra los detalles con que Framwork en los que se ejecutara la aplicación "netcoreapp 1.0"

4.Finalmente nos muestra un resumen de todo del Perfil Aplicación las opciones de aplicación
5. Click en Deploy.
En la barra de tareas de Visual Studio se muerta todas las operaciones que esta realizando.
6. Cuando esta tarea esta finaliza nos mostrara el siguiente modal.

Paso 7.
Vamos a la consola de AWS damos clic en el link y tendríamos que acceder a nuestra página web.
En mi caso seria la siguiente pagina.

Con esto concluimos. espero les sirva por favor comente. Para sus dudas
Aldo Flores Reyes.
@alduar
La nube no es el furo es el presente.

miércoles, 27 de enero de 2016

Bug Safari iOS 9.2.1 OS X

Se ha presentado un bug que hace que Safari el iOS y OS X no funcionen correctamente.

Sintoma:

Para iOS cuando se intenta escribir una dirección safari se cierra.
Para OS X no se puede escribir la dirección.

Solucion: Se des habilita en las configuraciones la sugerencias de safari.


   Con esto podemos usar safari apple aun no dice nada de este problema esperemos que para la siguiente versión se corrijan este error.

Saludos
Aldo Flores Reyes

sábado, 1 de agosto de 2015

Windows 10 Problemas Redes

El recién nacido Windows 10. Tiene problemas con UVN de CISCO. Esto hace que Windows no se pueda conectar a ninguna RED "Modem 4G, WIFI y Ethernet". El problema no es de Windows si no de CISCO hace que no pueda levantar el servicio de Redes. La solución suena complicada pero es mas rápido de lo que parece. Lo primero tenemos que regresar a Windows 8.1 Desinstalamos VPN Cisco. He instalamos de nuevo Windows 10. Espero que esto les resulte de ayuda pues por ahora no hay información en Microsoft de este problema. Tampoco en Cisco. Saludos Aldo Flores Reyes

viernes, 31 de julio de 2015

Instalar Windows 10 Directamente

Hola como sabemos el 19 de Julio se ha lanzado a nivel mundial Windows 10, un sistema operativo que promete mucho.

Me he encatrado con vario escenarios.

1 Surface con Windows 8.1 "NO actualizaba a Windows 10".
Solución:
-Se eliminan todos los archivos de la carpeta C:\Windows\SoftwareDistribution\Download
-Se ejecuta el comando "wuauclt /updatenow" Desde el símbolo de sistema.

2 Maquina Virtual en Mac OSX "Se Actualizo perfectamente sin hacer nada"

3 Equipo nativo con Windows 8.1 "En este equipo cuando intentaba descárgalo automáticamente el agente de Windows daba un fallo "

error 0x80240020: Actualizar a Windows 10
Y un error cuando intentaba hacerlo por Windows Update


Solución:
Descargas Windows 10 desde este Link
https://www.microsoft.com/es-es/software-download/windows10


 
 
Con esto ya podrías disfrutar de Windows 10.
 
Disfruten Windows 10.
 
Saludos
Aldo Flores Reyes
@alduar


 

miércoles, 22 de julio de 2015

Visual Studio 2015



El pasado Lunes Microsoft Libero 3 productos que revolucionar el software.
Visual Studio 2015
Team Foundation Server 2015
.NET FrameWork 4.6.

Porque digo que estos productos revolucionaran el software. lo mas importante es que los desarrollos hechos en .NET ya pueden ejecutarse en sistemas UNIX y Linux. Esto punto lleva que .NET no solo es multi lenguaje de programación si no también multi sistema operativo.

Y por parte de IDE Visual estudio ya tenemos la posibilidad de ejecutarlos también en MAC OSX y Linux. Llamado Visual Studio Code.
dejo el link para que lo descarguen.
https://code.visualstudio.com/

También dejo el link de descarga para Visual Studio.
https://www.visualstudio.com/products/visual-studio-enterprise-vs

En futuros post veremos las nuevas funcionalidades que tiene Visual Studio 2015

Saludos
Aldo Flores Reyes



 

martes, 14 de abril de 2015

SSO ADFS 2.0 SalesForce

Abecés es necesario integrar sistemas en la nube con sistemas que están en nuestra corporación. Uno de estos casos es integrar SalesForce "Nube", con ADFS 2 para poder hacer SSO con aplicaciones como SharePoint. En esta guía vamos a ver como hacer esta integración.

1) Exportamos el certificado que generamos en ADFS, esto permitirá a SalesForce decrepitar el token generado por ADFS.

Guardamos el archivo.cer "posteriormente lo vamos a necesitar para SalesFoce"

2) Configuración SalesForce
  1. Iniciamos sección con un usuario administrador en SalesForces.
  2. Ir a Configuración.

 
    3. Control de Seguridad / Configuración de inicio de sesión único
 
 
 
          4. Nuevo



 
       5. Agregar certificado.
 
Elegimos el Certificado que en el paso dos exportamos.
 
 
 
                6. Descargar metadatos
 
 
3 Configuración de ADFS.
 
  1. Agregar relación de Confianza

  2.  
    2. Seleccionamos el XML donde esta la configuración de SalesForce "Esto lo hicimos en el apartado 1-6"
     
    3. Next/Next/Next/Next/Close
     
     
     
     
     
     
    3. Agregar Reglas de Claims
     
     
     
     
    Apply/OK
     
     
    4. Cambiamos el algoritmo SHA-1 en la pestaña Avdvanced
     
     
     
     
    Con esto tenemos configurado SalesForce para que pueda hacer SSO utilizando ADFS 2.0
     
     
     
     
     
     
     
     
     
     
     
    
 
 
 
 

 


 

jueves, 12 de febrero de 2015

OData Entity Framework 6.1.2

Con la nueva versión de Entity Framework 6.1.2 los proyectos de OData tiene una particularidad.
Hace unos meses cree un tutorial de como hacer implementar OData con POCO.
OData POCO.

Algunas cosas han cambiado con la nueva versión de Entity Framework.
Lo primero es que hay una nueva dll. Entity Framework OData Provider.
La forma  de instalar esta dll es desde nuged. Mas adelante veremos como hacerlo.

Para desarrollar este tutorial nos basaremos en las capas de acceso a datos del pasado post.
En este tutorial solo veremos como crear el servicio de OData.
Nota: Este tutorial ser relazara con Visual Studio 2013.

Primero creamos un proyecto Web vacío.

 
 
Después agregamos un proyecto de WCF Data Service 5.6
 
 
Posteriormente agregamos las recrecías de nuestro Contexto
 

Agregamos la referencia de Entity Framework OData provider desdes nuget. con el siguiente comando
Install-Package Microsoft.OData.EntityFrameworkProvider -Pre
 
Posterior mente en el servicio tenemos que cambiar algunas cosas como se muestra a continuación.
 
 
Tenemos que configurar la cadena de conexión "Web.Config" donde estas nuestra Base de Datos.
 
 
Finalmente probáramos el servicio de OData.
 
 

 Como podemos observar podemos acceder a las entidades que tenga nuestro contexto así como sus datos.
 
Espero que sea de ayuda
Aldo Flores Reyes
@alduar
"La nube no es el futuro es el presente"