

 AWS Cloud9 ya no está disponible para nuevos clientes. Los clientes existentes de AWS Cloud9 pueden seguir utilizando el servicio con normalidad. [Más información](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Tutorial de Docker para AWS Cloud9
<a name="sample-docker"></a>

En este tutorial, se muestra cómo conectar un entorno de desarrollo AWS Cloud9 SSH a un contenedor Docker en ejecución dentro de una instancia de Amazon Linux en Amazon EC2. Esto le permite usar el AWS Cloud9 IDE para trabajar con código y archivos dentro de un contenedor de Docker y ejecutar comandos en ese contenedor. Para obtener información acerca de Docker, consulte [Qué es Docker](https://www.docker.com/what-docker) en el sitio web de Docker.

Si sigue este tutorial y crea este ejemplo, es posible que se le cobren cargos a su AWS cuenta. Entre ellos, se incluyen posibles cargos por servicios como Amazon EC2. Para obtener más información, consulte [Precios de Amazon EC2](https://aws.amazon.com/ec2/pricing/).

**Topics**
+ [Requisitos previos](#sample-docker-prereqs)
+ [Paso 1: instalar y ejecutar Docker](#sample-docker-install)
+ [Paso 2: Crear la imagen](#sample-docker-build)
+ [Paso 3: Ejecutar el contenedor](#sample-docker-run)
+ [Paso 4: Crear el entorno](#sample-docker-env)
+ [Paso 5: Ejecutar el código](#sample-docker-code)
+ [Paso 6: limpiar](#sample-docker-clean-up)

## Requisitos previos
<a name="sample-docker-prereqs"></a>
+  **Debe tener una instancia de Amazon EC2 que ejecute Amazon Linux o Ubuntu Server.** En este ejemplo se supone que ya tiene una instancia de Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server en su AWS cuenta. Para lanzar una instancia de Amazon EC2, consulte [Lanzar una máquina virtual Linux](https://aws.amazon.com/getting-started/tutorials/launch-a-virtual-machine/). En la página de **elección de una instancia de Amazon Machine Image (AMI)** del asistente, elija una AMI cuyo nombre para mostrar comience por **Amazon Linux AMI** o **Ubuntu Server**.
+  **Si la instancia Amazon EC2 se ejecuta en Amazon VPC, hay requisitos adicionales.** Consulte [Configuración de VPC para entornos de desarrollo AWS Cloud9](vpc-settings.md).
+  **La instancia Amazon EC2 debe tener al menos de 8 a 16 GB de espacio libre en disco.** Esta muestra utiliza imágenes de Docker de un tamaño superior a 3 GB y puede utilizar incrementos adicionales de 3 GB o más de espacio en disco para crear imágenes. Si intenta ejecutar esta muestra en un disco que tenga menos de 8 GB de espacio libre, es posible que la imagen de Docker no se cree o que el contenedor Docker no se ejecute. Para consultar el espacio libre en el disco de la instancia, puede ejecutar un comando como ** `df -h` ** (para "información del sistema de archivos del disco en formato legible") en la instancia. Para aumentar el tamaño del disco de una instancia existente, consulte [Modifying a Volume](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-modify-volume.html) en la *Guía del usuario de Amazon EC2*.

## Paso 1: instalar y ejecutar Docker
<a name="sample-docker-install"></a>

En este paso, verificará si Docker está instalado en la instancia de Amazon EC2 y, si no es así, lo instalará. Después de instalar Docker, ejecútelo en la instancia.

1. Conéctese a la instancia de Amazon EC2 en ejecución mediante un cliente SSH como la utilidad ** `ssh` ** o PuTTY. Para ello, consulte "Paso 3: conectarse a la instancia" en [Lanzar una máquina virtual Linux](https://aws.amazon.com/getting-started/tutorials/launch-a-virtual-machine/).

1. Compruebe si Docker está instalado en la instancia. Para ello, ejecute el comando ** `docker` ** en la instancia con la opción ** `--version` **.

   ```
   docker --version
   ```

   Si Docker está instalado, se muestran la versión y el número de compilación de Docker. En este caso, vaya al paso 5 más adelante de este procedimiento.

1. Instale Docker. Para ello, ejecute el comando **`yum`** o **`apt`** con la acción **`install`** y especifique el paquete **`docker`** o **`docker.io`** que se va a instalar.

   Para Amazon Linux:

   ```
   sudo yum install -y docker
   ```

   Para Ubuntu Server:

   ```
   sudo apt install -y docker.io
   ```

1. Confirme que Docker está instalado. Para ello, vuelva a ejecutar el comando ** `docker --version` **. Se muestran la versión y el número de compilación de Docker.

1. Ejecute Docker. Para ello, ejecute el comando **`service`** con el servicio **`docker`** y la acción **`start`**.

   ```
   sudo service docker start
   ```

1. Confirme que Docker se está ejecutando. Para ello, ejecute el comando ** `docker` ** con la acción ** `info` **.

   ```
   sudo docker info
   ```

   Si se está ejecutando, se muestra información sobre Docker.

## Paso 2: Crear la imagen
<a name="sample-docker-build"></a>

En este paso, se utiliza un Dockerfile para crear una imagen de Docker para en la instancia. Esta muestra utiliza una imagen que incluye Node.js y una aplicación de servidor de chat de muestra.

1. En la instancia, cree el Dockerfile. Para ello, con el cliente SSH todavía conectado a la instancia, en el directorio `/tmp` de la instancia, cree un archivo llamado `Dockerfile`. Por ejemplo, ejecute el comando ** `touch` ** del modo siguiente.

   ```
   sudo touch /tmp/Dockerfile
   ```

1. Añada el siguiente contenido al archivo `Dockerfile`.

   ```
   # Build a Docker image based on the Amazon Linux 2 Docker image.
   FROM amazonlinux:2
   
   # install common tools
   RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
   RUN yum update -y
   RUN yum install -y sudo bash curl wget git man-db nano vim bash-completion tmux  gcc gcc-c++ make tar
   
   # Enable the Docker container to communicate with AWS Cloud9 by
   # installing SSH.
   RUN yum install -y openssh-server
   
   # Ensure that Node.js is installed.
   RUN yum install -y nodejs
   
   # Create user and enable root access
   RUN useradd --uid 1000 --shell /bin/bash -m --home-dir /home/ubuntu ubuntu && \
       sed -i 's/%wheel\s.*/%wheel ALL=NOPASSWD:ALL/' /etc/sudoers && \
       usermod -a -G wheel ubuntu
   
   # Add the AWS Cloud9 SSH public key to the Docker container.
   # This assumes a file named authorized_keys containing the
   # AWS Cloud9 SSH public key already exists in the same
   # directory as the Dockerfile.
   RUN mkdir -p /home/ubuntu/.ssh
   ADD ./authorized_keys /home/ubuntu/.ssh/authorized_keys
   RUN chown -R ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys && \
   chmod 700 /home/ubuntu/.ssh && \
   chmod 600 /home/ubuntu/.ssh/authorized_keys
   
   # Update the password to a random one for the user ubuntu.
   RUN echo "ubuntu:$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)" | chpasswd
   
   # pre-install Cloud9 dependencies
   USER ubuntu
   RUN curl https://d2j6vhu5uywtq3.cloudfront.net/static/c9-install.sh | bash
   
   USER root
   # Start SSH in the Docker container.
   CMD ssh-keygen -A && /usr/sbin/sshd -D
   ```

   Para añadir el contenido anterior al archivo `Dockerfile`, puede utilizar la utilidad ** `vi` ** en la instancia tal y como se indica a continuación.

   1. Use el AWS Cloud9 para abrir y editar el `/tmp/Dockerfile` archivo.

      ```
      sudo vi /tmp/Dockerfile
      ```

   1. Pegue el contenido anterior en el archivo `Dockerfile`. Si no sabe cómo hacerlo, consulte la documentación de su cliente SSH.

   1. Cambie al modo de comando. Para ello, pulse la tecla `Esc`. (`-- INSERT --` desaparece de la parte inferior de la ventana).

   1. Escriba `:wq` (para escribir en el archivo `/tmp/Dockerfile`, guárdelo y, a continuación, salga de ** `vi` **) y, a continuación, pulse `Enter`.
**nota**  
Puede acceder a una lista de imágenes de Docker que se actualiza con frecuencia desde AWS CodeBuild. Para obtener más información, consulte [las imágenes de Docker que se proporcionan CodeBuild en la](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html) Guía del *AWS CodeBuild usuario*.

1. En la instancia, crea un archivo que contenga la clave pública AWS Cloud9 SSH para que la utilice el contenedor de Docker. Para ello, en el mismo directorio que el archivo `Dockerfile`, cree un archivo llamado `authorized_keys`, por ejemplo, ejecutando el comando ** `touch` **.

   ```
   sudo touch /tmp/authorized_keys
   ```

1. Agrega la clave pública AWS Cloud9 SSH al archivo. `authorized_keys` Para obtener la clave pública AWS Cloud9 SSH, haga lo siguiente:

   1. Abre la AWS Cloud9 consola en. [https://console.aws.amazon.com/cloud9/](https://console.aws.amazon.com/cloud9/)

   1. En la barra de AWS navegación, en el selector de AWS regiones, elija la AWS región en la que desee crear el entorno de AWS Cloud9 desarrollo más adelante en este tema.

   1. Si aparece una página de bienvenida, en **Nuevo AWS Cloud9 entorno**, elija **Crear entorno**. De lo contrario, elija **Create environment (Crear entorno)**.

   1. En la página **Name environment** (Asignar nombre al entorno), en **Name** (Nombre), escriba un nombre para el entorno. (El nombre no es importante aquí. Elegirá uno diferente más tarde).

   1. Elija **Next Step** (Paso siguiente).

   1. En **Environment type (Tipo de entorno)**, elija **Connect and run in remote server (SSH) (Conectar y ejecutar en un servidor remoto (SSH))**.

   1. Expanda **View public SSH key (Ver clave SSH pública)**.

   1. Elija **Copy key to clipboard (Copiar clave en portapapeles)**. (Está entre **View public SSH key (Ver clave pública SSH)** y **Advanced settings (Configuración avanzada)**.)

   1. Elija **Cancelar**.

   1. Pegue el contenido del portapapeles en el archivo `authorized_keys` y, a continuación, guárdelo. Por ejemplo, puede usar la utilidad ** `vi` **, como se ha descrito anteriormente en este paso.

1. Para crear la imagen, ejecute el comando **`docker`** con la acción **`build`**, agregue la etiqueta `cloud9-image:latest` a la imagen y especifique la ruta al archivo `Dockerfile` que se utilizará.

   ```
   sudo docker build -t cloud9-image:latest /tmp
   ```

   Si se realiza correctamente, las dos últimas líneas de la salida de compilación muestran `Successfully built` y `Successfully tagged`.

   Para confirmar que Docker ha creado correctamente la imagen, ejecute el comando ** `docker` ** con la acción `image ls`.

   ```
   sudo docker image ls
   ```

   Si se realiza correctamente, la salida muestra una entrada en la que el campo `REPOSITORY` está configurado en `cloud9-image` y el campo `TAG` está configurado en `latest`.

1. Anote la dirección IP pública de la instancia de Amazon EC2. Lo necesitará para el [Paso 4: Crear el entorno](#sample-docker-env). Si no está seguro de cuál es la dirección IP pública de la instancia, puede ejecutar el siguiente comando en la instancia para obtenerla.

   ```
   curl http://169.254.169.254/latest/meta-data/public-ipv4
   ```

## Paso 3: Ejecutar el contenedor
<a name="sample-docker-run"></a>

En este paso, ejecutará un contenedor Docker en la instancia. Este contenedor se basa en la imagen que creó en el paso anterior.

1. Para ejecutar el contenedor Docker, ejecute el comando ** `docker` ** en la instancia con la acción ** `run` ** y las siguientes opciones.

   ```
   sudo docker run -d -it --expose 9090 -p 0.0.0.0:9090:22 --name cloud9 cloud9-image:latest
   ```
   +  `-d` ejecuta el contenedor en modo desasociado y sale siempre que el proceso raíz que se utiliza para ejecutar las salidas del contenedor (en esta muestra, el cliente SSH).
   +  `-it` ejecuta el contenedor con un pseudoTTY asignado y mantiene STDIN abierto, incluso si el contenedor no está asociado.
   +  `--expose` hace que el puerto especificado (en esta muestra, el puerto `9090`) esté disponible desde el contenedor.
   +  `-p` hace que el puerto especificado esté disponible internamente para la instancia de Amazon EC2 a través de la dirección IP y el puerto especificados. En esta muestra, se puede acceder internamente al puerto `9090` del contenedor a través del puerto `22` de la instancia de Amazon EC2.
   +  `--name` es un nombre en lenguaje natural para el contenedor (en esta muestra, `cloud9`).
   +  `cloud9-image:latest` es el nombre en lenguaje natural de la imagen creada que se va a utilizar para ejecutar el contenedor.

   Para confirmar que Docker está ejecutando correctamente el contenedor, ejecute el comando ** `docker` ** con la acción `container ls`.

   ```
   sudo docker container ls
   ```

   Si se realiza correctamente, la salida muestra una entrada en la que el campo `IMAGE` está configurado en `cloud9-image:latest` y el campo `NAMES` está configurado en `cloud9`.

1. Inicie sesión en el contenedor en ejecución. Para ello, ejecute el comando ** `docker` ** con la acción ** `exec` ** y las siguientes opciones.

   ```
   sudo docker exec -it cloud9 bash
   ```
   +  `-it` ejecuta el contenedor con un pseudoTTY asignado y mantiene STDIN abierto, incluso si el contenedor no está asociado.
   +  `cloud9` es el nombre en lenguaje natural del contenedor en ejecución.
   +  `bash` inicia el shell estándar en el contenedor en ejecución.

   Si se realiza correctamente, el símbolo del terminal cambia para mostrar el nombre del usuario que ha iniciado sesión del contenedor y el ID del contenedor.
**nota**  
Si desea salir del contenedor en ejecución, ejecute el comando ** `exit` **. El símbolo del terminal cambia vuelve a mostrar el nombre del usuario que ha iniciado sesión de la instancia y el DNS privado de la instancia. El contenedor debe seguir en ejecución.

1. Para el directorio del contenedor en ejecución desde el que desee AWS Cloud9 iniciar sesión, defina sus permisos de acceso en **`rwxr-xr-x`**. Esto significa read-write-execute permisos para el propietario, permisos de lectura y ejecución para el grupo y permisos de lectura y ejecución para otros. Por ejemplo, si la ruta del directorio es `~`, puede establecer estos permisos en el directorio ejecutando el comando ** `chmod` ** en el contenedor en ejecución del siguiente modo.

   ```
   sudo chmod u=rwx,g=rx,o=rx ~
   ```

1. Anote la ruta al directorio en el contenedor en ejecución que contiene el binario Node.js, ya que lo necesitará para el [Paso 4: Crear el entorno](#sample-docker-env). Si no está seguro de cuál es esta ruta, ejecute el siguiente comando en el contenedor en ejecución para obtenerla.

   ```
   which node
   ```

## Paso 4: Crear el entorno
<a name="sample-docker-env"></a>

En este paso, debe AWS Cloud9 crear un entorno de desarrollo AWS Cloud9 SSH y conectarlo al contenedor Docker en ejecución. Una AWS Cloud9 vez creado el entorno, muestra el AWS Cloud9 IDE para que puedas empezar a trabajar con los archivos y el código del contenedor.

Se crea un entorno de desarrollo AWS Cloud9 SSH con la AWS Cloud9 consola. No puede crear un entorno de SSH con la CLI.

### Requisitos previos
<a name="prerequisites"></a>
+ Asegúrese de completar los pasos de [Con AWS Cloud9 figuración](setting-up.md) en primer lugar. De esa forma, puede iniciar sesión en la consola de AWS Cloud9 y crear entornos.
+ Identifique una instancia de computación en la nube existente (por ejemplo, una instancia de Amazon EC2 en la suya Cuenta de AWS) o su propio servidor que desee conectar AWS Cloud9 al entorno.
+ Asegúrese de que la instancia existente o su propio servidor cumpla todos los [Requisitos del host SSH](ssh-settings.md#ssh-settings-requirements). Esto incluye tener versiones específicas de Python, Node.js y otros componentes instaladas, configurar permisos específicos en el directorio desde el que desea que se inicie AWS Cloud9 después del inicio de sesión y configurar cualquier instancia de Amazon Virtual Private Cloud asociada.

### Crear el entorno de SSH
<a name="create-the-envsshtitle"></a>

1. Asegúrese de que ha completado los requisitos anteriores.

1. Si todavía no se ha conectado a su instancia existente o a su propio servidor, conéctese con un cliente SSH. De este modo, podrá agregar el valor de clave pública SSH necesario a la instancia o al servidor. Esto se describe más adelante en este procedimiento.
**nota**  
Para conectarse a una instancia de Nube de AWS procesamiento existente, consulte uno o varios de los siguientes recursos:  
En el caso de Amazon EC2, consulte [Connect to Your Linux Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html) en la *Guía del usuario de Amazon EC2*.
Para Amazon Lightsail, consulte [Connect to your Linux/Unix-based Lightsail instance](https://lightsail.aws.amazon.com/ls/docs/how-to/article/lightsail-how-to-connect-to-your-instance-virtual-private-server) en la *documentación de Amazon Lightsail*.
Para ello AWS Elastic Beanstalk, consulte Cómo [enumerar las instancias de servidor y conectarse a](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.ec2connect.html) ellas en la *guía para AWS Elastic Beanstalk desarrolladores*.
Para AWS OpsWorks ello, consulte [Uso de SSH para iniciar sesión en una instancia de Linux](https://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-ssh.html) en la *Guía del AWS OpsWorks usuario*.
Para otros Servicios de AWS, consulte la documentación de ese servicio específico.
Para conectarse a su propio servidor, utilice SSH. SSH ya está instalado en los sistemas operativos macOS y Linux. Para conectarse a su servidor mediante SSH en Windows, debe instalar [PuTTY](https://www.putty.org/).

1. Inicie sesión en la AWS Cloud9 consola, en [https://console.aws.amazon.com/cloud9/](https://console.aws.amazon.com/cloud9/).

1. Después de iniciar sesión en la AWS Cloud9 consola, en la barra de navegación superior, elige una en la Región de AWS que crear el entorno. Para ver una lista de los disponibles Regiones de AWS, consulte [AWS Cloud9](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloud9_region)en *Referencia general de AWS*.  
![\[Selector de regiones en la AWS Cloud9 consola\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/consolas_region_new_UX.png)

1. Si es la primera vez que crea un entorno de desarrollo, se muestra una página de bienvenida. En el panel **Nuevo AWS Cloud9 entorno**, selecciona **Crear entorno**.

   Si ya ha creado entornos de desarrollo anteriormente, también puede expandir el panel de la izquierda de la pantalla. Elija **Your environments** (Sus entornos) y, a continuación, **Create environment** (Crear entorno).

   En la página de **bienvenida**:  
![\[Selección del botón Create environment (Crear entorno) si se muestra la página de bienvenida\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/create_welcome_env_new_UX.png)

   O bien, en la página **Your environments** (Sus entornos):  
![\[Selección del botón Create environment (Crear entorno) si no se muestra la página de bienvenida\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/console_create_env_new_UX.png)

1. En la página **Create environment** (Crear entorno), ingrese un nombre para su entorno.

1. En **Description** (Descripción), ingrese una nota acerca de su entorno. Para este tutorial, utilice `This environment is for the AWS Cloud9 tutorial.`

1. En **Environment type** (Tipo de entorno), elija **Existing Compute** (Computación existente) en las opciones siguientes:
   + **Nueva instancia EC2: lanza una instancia** de Amazon EC2 a la AWS Cloud9 que se puede conectar directamente a través de SSH.
   + **Computación existente**: lanza una instancia de Amazon EC2 que no requiere ningún puerto de entrada abierto. AWS Cloud9 se conecta a la instancia a través de. [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html)
     + Si selecciona la opción **Existing compute** (Computación existente), se crean un rol de servicio y un perfil de instancia de IAM para permitir que Systems Manager interactúe con la instancia de EC2 en su nombre. Puede ver los nombres de ambos en la sección **Service role and instance profile for Systems Manager access** (Función de servicio y perfil de instancias para el acceso a Systems Manager) más abajo en la interfaz. Para obtener más información, consulte [Acceso a instancias EC2 sin entrada con AWS Systems Manager](ec2-ssm.md). 
**aviso**  
La creación de una instancia EC2 para su entorno podría implicar posibles cargos Cuenta de AWS para Amazon EC2. No hay costo adicional por el uso de Systems Manager para administrar las conexiones a la instancia de EC2.
**aviso**  
AWS Cloud9 utiliza una clave pública SSH para conectarse de forma segura a su servidor. Para establecer la conexión segura, agregue nuestra clave pública a su archivo `~/.ssh/authorized_keys` y facilite sus credenciales de acceso en los pasos siguientes. Elija **Copy key to clipboard** (Copiar clave en el portapapeles) para copiar la clave SSH o **View public SSH key** (Ver clave SSH pública) para mostrarla.

1. En el panel **Existing compute** (Computación existente), en **User** (Usuario), ingrese el nombre de usuario que utilizó para conectarse a la instancia o al servidor anteriormente en este procedimiento. Por ejemplo, en el caso de una instancia de computación en la Nube de AWS , podría ser `ec2-user`, `ubuntu` o `root`. 
**nota**  
Recomendamos que el nombre de inicio de sesión esté asociado a los permisos de administrador o a un usuario administrador en la instancia o el servidor. Más concretamente, recomendamos que este nombre de usuario sea el propietario de la instalación de Node.js en la instancia o el servidor. Para verificarlo, ejecute el comando **`ls -l $(which node)`** desde el terminal de la instancia o el servidor (o **`ls -l $(nvm which node)` ** si utiliza `nvm`). Este comando muestra el nombre del propietario de la instalación de Node.js. También muestra los permisos de la instalación, el nombre del grupo y la ubicación.

1. En **Host**, ingrese la dirección IP pública (preferida) o el nombre de host de la instancia o el servidor.

1. En **Puerto**, introduce el puerto que quieres usar AWS Cloud9 para intentar conectarte a la instancia o al servidor. También puede mantener el puerto predeterminado.

1. Elija **Additional details - optional** (Detalles adicionales [opcional]) para mostrar la ruta de entorno, la ruta al binario de node.js y la información del host de salto de SSH.

1. En **Ruta del entorno**, introduce la ruta al directorio de la instancia o el servidor desde el que AWS Cloud9 quieres empezar. Lo identificó anteriormente en los requisitos previos de este procedimiento. Si deja este campo en blanco, AWS Cloud9 utiliza el directorio que su instancia o servidor utiliza normalmente para comenzar después de iniciar sesión. Normalmente, es un directorio raíz o predeterminado.

1. En **Path to Node.js binary path** (Ruta al binario de Node.js), ingrese la información de la ruta para especificar la ruta al binario de Node.js en la instancia o el servidor. Para obtener la ruta, puede ejecutar el comando **`which node`** (o **`nvm which node`** si está utilizando `nvm`) en su instancia o servidor. Por ejemplo, la ruta puede ser `/usr/bin/node`. Si deja este campo en blanco, AWS Cloud9 intenta adivinar dónde se encuentra el archivo binario Node.js cuando intenta conectarse.

1. En **SSH jump host** (Host de salto de SSH), ingrese información sobre el host de salto que utiliza la instancia o el servidor. Utilice el formato `USER_NAME@HOSTNAME:PORT_NUMBER` (por ejemplo, `ec2-user@:ip-192-0-2-0:22`).

   El host de salto debe cumplir los siguientes requisitos:
   + Debe ser accesible a través de la red de internet pública utilizando SSH.
   + Debe permitir el acceso de entrada desde cualquier dirección IP a través del puerto especificado.
   + El valor de clave pública de SSH que se ha copiado en el archivo `~/.ssh/authorized_keys` que se encuentra en el servidor o instancia existente también se debe copiar en el archivo `~/.ssh/authorized_keys` que se encuentra en el host de salto.
   + Netcat debe estar instalado.

1. Añada hasta 50 etiquetas suministrando los valores de **Key (Clave)** y **Value (Valor)** para cada etiqueta. Para ello, seleccione **Add new tag** (Agregar nueva etiqueta). Las etiquetas se adjuntan al AWS Cloud9 entorno como etiquetas de recursos y se propagan a los siguientes recursos subyacentes: la CloudFormation pila, la instancia de Amazon EC2 y los grupos de seguridad de Amazon EC2. Para obtener más información sobre las etiquetas, consulte [Control del acceso mediante etiquetas de AWS recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html) en la *[Guía del usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/)* y la [información avanzada](tags.md) sobre las etiquetas en esta guía.
**aviso**  
Si actualiza estas etiquetas después de crearlas, los cambios no se propagan a los recursos subyacentes. Para obtener más información, consulte [Propagación de actualizaciones de etiquetas a los recursos subyacentes](tags.md#tags-propagate) en la información avanzada acerca de las [etiquetas](tags.md).

1. Elija **Create** (Crear) para crear su entorno y se le redirigirá a la página de inicio. Cuando la cuenta se haya creado correctamente, aparecerá una barra flash verde en la parte superior de la AWS Cloud9 consola. Puede seleccionar el nuevo entorno y elegir **Open in Cloud9** (Abrir en Cloud9) para lanzar el IDE.   
![\[AWS Cloud9 Selector IDE en la AWS Cloud9 consola\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/cloud9-ide-open.png)

   Si se produce un error al crear la cuenta, aparecerá una barra parpadeante roja en la parte superior de la consola de AWS Cloud9 . Es posible que la cuenta no se pueda crear debido a un problema con el navegador web, los permisos de AWS acceso, la instancia o la red asociada. Puede encontrar información sobre posibles soluciones a los problemas que pueden provocar el error de la cuenta en la [sección Solución de problemas de AWS Cloud9](troubleshooting.md#troubleshooting-env-loading).

**nota**  
Si su entorno utiliza un proxy para acceder a Internet, debe proporcionar los detalles del proxy para AWS Cloud9 que pueda instalar las dependencias. Para obtener más información, consulte [Fallo al instalar dependencias](troubleshooting.md#proxy-failed-dependencies).

## Paso 5: Ejecutar el código
<a name="sample-docker-code"></a>

En este paso, utilizará el AWS Cloud9 IDE para ejecutar una aplicación de muestra dentro del contenedor Docker en ejecución.

1. Con el AWS Cloud9 IDE mostrado para el contenedor en ejecución, inicie el servidor de chat de muestra. Para ello, en la ventana **Environment (Entorno)**, haga clic con el botón derecho en el archivo `workspace/server.js` de muestra y, a continuación, seleccione **Run (Ejecutar)**.

1. Obtenga una vista previa de la aplicación de muestra. Para ello, en la ventana **Environment (Entorno)**, abra el archivo `workspace/client/index.html`. A continuación, en la barra de menús, seleccione **Tools, Preview, Preview Running Application (Herramientas, Vista previa, Vista previa de la aplicación en ejecución)**.

1. En la pestaña de vista previa de la aplicación, en **Your Name (Su nombre)**, escriba su nombre. En **Message (Mensaje)** escriba un mensaje. A continuación, elija **Send (Enviar)**. El servidor de chat añade su nombre y su mensaje a la lista.

## Paso 6: limpiar
<a name="sample-docker-clean-up"></a>

En este paso, se elimina el entorno y se eliminan AWS Cloud9 los archivos de soporte de Docker de la instancia de Amazon EC2. Además, para evitar que se sigan realizando cargos en su AWS cuenta una vez que haya terminado de usar este ejemplo, debe cerrar la instancia de Amazon EC2 que ejecuta Docker.

### Paso 6.1: Eliminar el entorno
<a name="step-6-1-delete-the-envtitle"></a>

Para eliminar el entorno, consulte [Eliminar un entorno en AWS Cloud9](delete-environment.md).

### Paso 6.2: Eliminar los archivos AWS Cloud9 de soporte del contenedor
<a name="step-6-2-remove-ac9-support-files-from-the-container"></a>

Tras eliminar el entorno, algunos archivos de AWS Cloud9 soporte permanecerán en el contenedor. Si desea seguir utilizando el contenedor pero ya no necesita estos archivos de soporte, elimine la `.c9` carpeta del directorio del contenedor desde el que especificó AWS Cloud9 empezar después de iniciar sesión. Por ejemplo, si el directorio es `~`, ejecute el comando **`rm`** con la opción **`-r`**, tal y como se indica a continuación.

```
sudo rm -r ~/.c9
```

### Paso 6.3: Eliminar los archivos de soporte de Docker de la instancia
<a name="step-6-3-remove-docker-support-files-from-the-instance"></a>

Si ya no desea conservar el contenedor de Docker, la imagen de Docker y Docker en la instancia de Amazon EC2, pero desea conservar la instancia, puede eliminar estos archivos de soporte de Docker de la siguiente manera.

1. Elimine el contenedor Docker de la instancia. Para ello, ejecute el comando **`docker`** en la instancia con las acciones de detención **`stop`** y **`rm`**, y el nombre en lenguaje natural del contenedor.

   ```
   sudo docker stop cloud9
   sudo docker rm cloud9
   ```

1. Elimine la imagen de Docker de la instancia. Para ello, ejecute el comando ** `docker` ** en la instancia con la acción ** `image rm` ** y la etiqueta de la imagen.

   ```
   sudo docker image rm cloud9-image:latest
   ```

1. Elimine los archivos de soporte de Docker adicionales que aún puedan quedar. Para ello, ejecute el comando ** `docker` ** en la instancia con la acción ** `system prune` **.

   ```
   sudo docker system prune -a
   ```

1. Desinstale Docker. Para ello, ejecute el comando **`yum`** en la instancia con la acción **`remove`** y especifique el paquete **`docker`** que se va a desinstalar.

   Para Amazon Linux:

   ```
   sudo yum -y remove docker
   ```

   Para Ubuntu Server:

   ```
   sudo apt -y remove docker
   ```

   También puede eliminar los archivos `Dockerfile` y `authorized_keys` que creó anteriormente. Por ejemplo, ejecute el siguiente comando ** `rm` ** en la instancia.

   ```
   sudo rm /tmp/Dockerfile
   sudo rm /tmp/authorized_keys
   ```

### Paso 6.4: Terminar la instancia
<a name="step-6-4-terminate-the-instance"></a>

Para terminar la instancia de Amazon EC2, consulte [Terminate Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) en la *Guía del usuario de Amazon EC2*.