Let's start with AWS Cloud9
Tags: aws, cloudskills, serverless, cloudnative
Published: 2021-05-23 22:48:01

> En esta serie de posts sobre Amazon Web Services (AWS), estoy escribiendo instrucciones breves y rápidas para ponerse al día.

Este es mi primer post desde que fui seleccionado como **AWS Community Builder** , mi principal objetivo es escribir mis aprendizajes y errores para que otras personas puedan beneficiarse de ello y adicionalmente es una forma de llevar un registro de lo que construyo.

Ahora vamos a hablar de unos de los servicios que últimamente eh venido utilizando y me parece alucinante y muy practico.
**Cloud9** es un IDE de desarrollo que se ejecuta en la nube en la cual nos permite editar, ejecutar y probar nuestro código.CLOUD9 ejecuta su entorno de desarrollo en una instancia de Amazon EC2 o en cualquier servidor Linux compatible con ssh ,adicionalmente incluye herramientas para varios lenguajes de programación(PHP, javascript , Phyton entre otros).

###Beneficios

* Se puede compartir el entorno de trabajo con tu equipo de desarrollo.
* Existe un terminal integrado.
* Nos permite usar la capacidad de chat integrada para comunicarse con su equipo sin tener que salir del IDE.
* Se integra con AWS CodeStar la cual nos permite configurar rápidamente una cadena de herramientas de entrega continua integral para la aplicación.
* Almacena el historial de revisiones de los archivos.
* Se acabaron las instalaciones de los IDE locales.

##Configuración del Entorno de CLOUD9
*  **Paso 01:**
Lo primero que tenemos que hacer es ingresar a nuestra cuenta de AWS, para luego dirigirnos al menu de servicios y buscar dentro de la sección Developer Tools el servicio CLOUD9.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bqe2y21jjptd4nbv6t9y.png)
*  **Paso 02:**
Después de eso se mostrara un pantalla similar a la que se muestra en la imagen , donde nos va a permitir crear nuestro primer entorno de desarrollo , le damos click en create environment.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f0nx6inlheol6j6rkqp6.png)
*  **Paso 03:**
Ponemos un nombre a nuestro entorno , adicionalmente ponemos un breve descripción de nuestro entorno.![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/39wun5iocp9h25su88h6.png)
*  **Paso 04:**
Realizamos los ajustes necesarios para nuestro entorno de acuerdo a la imagen mostrada y le damos click en Next step.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1d0ya9bk2v4qjw9irlks.png)
*  **Paso 05:**
Revisamos las configuraciones realizadas y le damos click en create Environment.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ea3crc4hkuoyidd786v3.png)
*  **Paso 06:**
Nuestro IDE se esta preparando y nos mostrara un imagen similar a la siguiente.![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bwu45oqxsbkkgbb4en2z.png)
*  **Paso 07**:
Terminado de haber realizado todas las configuraciones ya estará preparado nuestro ambiente de desarrollo.![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7to8o5e6bctyoawkwd7.png)

##Subiendo nuestro proyecto a GitHub desde CLOUD9

Teniendo nuestro ambiente de desarrollo ahora lo que vamos a hacer es crear un pequeño proyecto para luego subirlo a nuestro repositorio GitHub.
*  **Paso 01**:
Contar con un cuenta en GitHub, y crear un repositorio para poder subir nuestros proyecto desde Cloud9.![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c4a3ise6lqj5hdek5hs3.png)
*  **Paso 02:**
Nos dirigimos a nuestro Entorno creado y desde la terminal vamos a configurar nuestro perfil GIT.
En nuestra terminal ejecutamos los siguientes comandos reemplazando los valores de "USERNAME","EMAIL_ADDRESS".
```
git config --global user.name "USER_NAME"
```
```
git config --global user.email EMAIL_ADDRESS
```
*  **Paso 03:**
Ahora configuramos nuestras credenciales Git.
Hay dos formas de conectarnos a nuestro repositorio de GitHub  desde la terminal : SSH , HTTPS.
En este caso vamos a trabajar con HTTPS ya que es más fácil de configurar que SSH, y normalmente funciona a través de firewalls. Sin embargo, de igual manera nos va a pedir que introduzcamos nuestras credenciales de GitHub cada vez que hacemos push a nuestro repositorio.
Para evitar que nos pida que introduzcamos nuestras credenciales de GitHub cada vez que hacemos push a un repositorio, configuraremos el caché de contraseñas.
Por defecto, Git guardará en caché tu contraseña durante 15 minutos.
```
git config --global credential.helper cache
```
```
git config --global credential.helper 'cache --timeout=3600'
``` 
*  **Paso 04:**
Ahora nos descargamos nuestro repositorio que habíamos creado , reemplazamos GITHUB_REPO_URL por nuestra url.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/menbbagn8214khec03mr.png)
```
git clone GITHUB_REPO_URL
```
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ckbfqu855xv7pj2zkvv0.png)
Al descargar nuestro repositorio se creado una carpeta , dentro de ella añadiremos un archivo .txt para subir ese archivo a nuestro repositorio.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f1zai3som0s202k2xgbw.png)
*  **Paso 05:**
Desde la terminal nos dirigimos a nuestra carpeta donde hemos creado nuestro archivo. Luego subiremos nuestro archivo a GitHub ejecutando los siguientes comandos luego de eso nos solicitaran nuestro usuario y password de GitHub.
```
git add .
git commit -m "subiendo mi proyecto a GitHub desde cloud9"
git push
```
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a71ru3676g9xcf8srppt.png)
* **Paso 06:**
Luego de ejecutar los comandos nuestro proyecto ya estará disponible en nuestro repositorio de GitHub.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rjbgz8t4jy3u86129un1.png)

## Instalando AWS-SDK y ejecutando NodeJs
*  **Paso 01:**
Dentro de nuestro mismo entorno de desarrollo nos dirigimos a ruta principal.Primero verificamos si tenemos instalado NodeJS luego actualizamos nuestro sistema operativo Linux ejecutando el siguiente comando , luego de completado instalamos el aws-sdk.
```
node --version
sudo yum update -y
npm install aws-sdk
```
*  **Paso 02:**
Luego nos descargamos el siguiente repositorio que es un ejemplo de NodeJs.
* [FuentesEjemplo](https://github.com/heroku/node-js-sample.git)
```
git clone https://github.com/heroku/node-js-sample.git
```
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ts9bsnnxyhz7o2v82nzb.png)
* **Paso 03:** Desde la terminal nos dirigimos a la carpeta del ultimo repositorio descargado y ejecutamos el siguiente comando.
```
npm install
```
y finalmente ejecutamos el siguiente comando.
```
npm start
```
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8b3a25eh09hv6n1k09b0.png)Al final en nuestro Browser debe de mostrar lo siguiente.![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/olo9yiuuf0c3rj767tzh.png)
**Conclusiones:**
* Editor completo
* Amplia selección de configuraciones de ejecución
* Depurador integrado
* Herramientas integradas para desarrollo sin servidor
* Terminal integrado
* Chat y edición colaborativa

**Próximos pasos**
En el próximo post, empezaremos a construir una pequeña aplicación desde Cloud9.

Si te gustó este post, dale un like, comparte y comenta.

⭐🔥 Sígueme en mis redes 🔥⭐

🕮 Mi Twitter— https://twitter.com/KaldasJhairzino
🕮 Mi Linkedin — https://www.linkedin.com/in/caldasmendoza/
🕮 Mi blog — https://cristhiancaldas.com/