Usar Bluemix a través de línea de comandos

Bueno amigos, en la pasada entrega vimos cómo crear una primera aplicación en Bluemix hecha en Python, y todo se hizo en el portal de una manera muy sencilla.

Si queremos modificar la aplicación podemos descargar el código a nuestra máquina y hacer los cambios para luego actualizar nuestra aplicación. Ello lo podemos hacer usando la línea de comandos y las herramientas hechas para tal fin.

Bluemix está basado en Cloud Foundry (https://www.cloudfoundry.org/ ) y existe una herramienta que se denomina Cloud Foundry CLI (Command Line Interface) y es la que nos permite interactuar con Bluemix usando línea de comandos.

Para instalarla es necesario descargar el software desde https://docs.cloudfoundry.org/cf-cli/install-go-cli.html seleccionando la plataforma que corresponda a nuestra máquina local, pues existen versiones para Windows, MAC y Linux.

En este caso voy a descargar la versión de Windows, que es la plataforma que estoy usando en este momento.

Una vez descargue el software elijo en qué ruta del disco lo voy a instalar, por ejemplo en “C:\Cloud Foundry”. Para facilidad de manejo sugiero agregar en la variable PATH del sistema la ruta en donde se instale la herramienta para poder invocarla desde cualquier lugar del disco. Para mayor información acerca de la variable PATH pueden ver el siguiente enlace:

https://technet.microsoft.com/en-us/library/cc755104(v=ws.11).aspx

Cuando ya tengan la herramienta instalada, basta con abrir una línea de comandos y escribir CF (este es el ejecutable, no es necesario escribir CF.EXE) o cf, el comando no es sensible a mayúsculas o minúsculas.

Imagen01

Ahí se ven las opciones –que son bastantes- de la herramienta.

Antes de poder interactuar con mi suscripción debo hacer login en la misma, para ello debo escribir

cf login

Imagen02

En donde dice Email debo escribir la dirección de correo que uso para ingresar a Bluemix, en este caso voy a usar la que tengo con mi cuenta de prueba, y además me solicita la contraseña:

Imagen03

Observen que la autenticación fue exitosa. Además me pregunta por el espacio (space) en donde voy a trabajar.

En Bluemix existe el concepto de Organización y Espacio. Una Organización puede estar a lo largo de varias regiones geográficas de Bluemix y se crea para efectos administrativos de modo que pueda agrupar a varios miembros del mismo equipo o asignar una cuota en términos de capacidad de cómputo a dicha organización.

Un Espacio sólo se crea en una región geográfica en particular y puede ser asociado a un ambiente específico, por ejemplo puedo tener un ambiente que se llame desarrollo (dev) para el desarrollo de mis aplicaciones y otro que se llame pruebas (test) para mis pruebas.

En este caso tengo 2 espacios: dev y space01. Puedo escribir el nombre del espacio en este mismo instante para trabajar sobre ese espacio específicamente o no escribir nada y luego definir el espacio a usar.

No voy a escribir nada relacionado con el espacio:

Imagen04

Observen que debo definir el espacio a usar, así que necesariamente debo definir el espacio (Eso me pasa por perezoso).

Uso el comando cf target –s dev

Imagen05

Si quiero listar las apps que tengo simplemente uso el comando cf apps

Imagen06

También puedo usar cf a

Imagen07

Observen que tengo 2 aplicaciones o sitios web ejecutándose en este momento, yo también podría detener su ejecución, por ejemplo voy a detener el sitio que se denomina phptestab00, para ello uso el comando cf stop phptestab00

Imagen08

Y aparece detenido. Como era de esperarse, puedo aquí mismo arrancar el sitio nuevamente usando

cf start phptestab00

Imagen09

Y además me muestra información acerca del estado de salud de la aplicación que acabo de subir.

Por otra parte, yo podría cambiar el tamaño de mi aplicación para que consuma más memoria RAM o para que tenga más instancias, lo cual es algo útil y dinámico que me permite ajustarme a mis propias necesidades según sea el caso.

Voy a aumentar las instancias de mi aplicación a 2 y además voy a aumentar la memoria que consume cada instancia a 512 MB, para ello uso el siguiente comando:

cf scale phptestab00 –i 2 –m 512M

Imagen10

Este cambio implica reinicio de mi aplicación, por lo tanto debo confirmar la ejecución de la operación antes de proceder.

Por supuesto podría hacer este mismo crecimiento usando la consola gráfica de Bluemix:

Imagen11

Simplemente debo hacer clic en el (+) o el (-) para aumentar los parámetros.

Por otra parte, yo puedo modificar mi aplicación localmente en mi PC y luego publicar los cambios usando la línea de comandos CF.

Esto es lo que muestra mi aplicación de PHP

Imagen12

Voy a descargar la aplicación a mi máquina, la modifico y la vuelvo a publicar.

Estando en mi consola hago clic en las rayitas que aparecen en la parte izquierda:

Imagen13

Selecciono Dashboard

Imagen14

Allí selecciono mi aplicación, que en este caso es phptestab00

Imagen15

Hago clic en Getting started

Imagen16

Ahora hago clic en download the sample code para descargar el código fuente de mi aplicación:

Imagen17

Observen que descargó un archivo .zip con el nombre de mi aplicación, es decir phptestab00.zip

Imagen18

Debo ir a la ruta en donde lo descargó y descomprimirlo en la carpeta que yo quiera.

Imagen19

Yo lo descomprimí en la ruta C:\MyAppPHP\phptestab00, allí se encuentra la página principal del sitio que se denomina index.php (Esta es una aplicación hecha en PHP).

Puedo abrir la página de inicio con el editor de mi preferencia (en este caso uso notepad++) y cambiar por ejemplo el mensaje inicial “Hello World!”

Imagen20

Lo cambié a “Hola Mundo!” y salvé el archivo index.php. Los demás archivos no los voy a modificar en este ejercicio.

Ya estoy listo para publicar el cambio, recuerden que lo que se ve actualmente es:

Imagen22

La carpeta en donde descargué mi aplicación es C:\MyAppPHP\phptestab00 y ahí se encuentra el archivo index.php que acabo de modificar.

Me voy a una línea de comandos y me ubico en esa ruta:

Imagen23

Para actualizar la aplicación, basta con ejecutar el siguiente comando:

cf push

Imagen24

Observen que me ubiqué dentro de la ruta C:\MyAppPHP\phptestab00, de modo que bastó con escribir cf push para actualizar la aplicación phptestab00

El proceso continúa

Imagen25

Si todo terminó bien no se generan errores.

Ahora veamos el sitio web y ya quedó actualizado con el mensaje “Hola Mundo!” en idioma español:

Imagen26

Puedo hacer otros cambios al archivo index.php y volver a cargarlo con el mismo proceso que ya expliqué:

Imagen27

Observen que hice unos cambios sencillos en la página y los fui aplicando usando cf push.

¿Interesante cierto? Puedo hacer cambios localmente y luego publicarlos, además puedo controlar las aplicaciones en cuanto a cambiar los parámetros de dichas aplicaciones. Todo ello usando CF

Espero que les haya gustado este contenido y lo pongan en práctica.

¡Nos vemos!

 

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s