Aws Cloud9 Ug

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 629

AWS Cloud9

Guía del usuario

AWS Cloud9: Guía del usuario


Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.
AWS Cloud9 Guía del usuario

Las marcas comerciales y la imagen comercial de Amazon no se pueden utilizar en relación con ningún producto o
servicio que no sea de Amazon de ninguna manera que pueda causar confusión entre los clientes y que menosprecie
o desacredite a Amazon. Todas las demás marcas comerciales que no sean propiedad de Amazon son propiedad de
sus respectivos propietarios, que pueden o no estar afiliados, conectados o patrocinados por Amazon.
AWS Cloud9 Guía del usuario

Table of Contents
¿Qué es AWS Cloud9? ....................................................................................................................... 1
¿Cómo funciona AWS Cloud9? .................................................................................................... 1
AWS Cloud9Entornos de ..................................................................................................... 2
Entornos y recursos informáticos .......................................................................................... 2
¿Qué puedo hacer con AWS Cloud9? ........................................................................................... 3
¿Cómo puedo comenzar? ............................................................................................................ 3
Temas adicionales ...................................................................................................................... 3
¿Qué puedo hacer con este servicio? ........................................................................................... 3
Información adicional .................................................................................................................. 5
Videos relacionados ............................................................................................................ 5
Temas relacionados en el sitio de AWS ................................................................................. 5
Precios .............................................................................................................................. 6
Tengo más preguntas o necesito ayuda ................................................................................. 6
Configuración ..................................................................................................................................... 7
Configuración de usuario individual ............................................................................................... 7
Paso 1: crear una cuenta de AWS ........................................................................................ 7
Paso 2: Iniciar sesión en la consola de AWS Cloud9 con el usuario raíz de la cuenta de AWS ......... 8
Pasos siguientes ................................................................................................................ 8
Configuración de equipos ............................................................................................................ 9
Paso 1: crear una cuenta de AWS ...................................................................................... 10
Paso 2: Crear un grupo y un usuario de IAM y agregar el usuario al grupo ................................. 10
Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo ............................................. 14
Paso 4: Iniciar sesión en la consola de AWS Cloud9 .............................................................. 17
Pasos siguientes ............................................................................................................... 17
Configuración de empresa ......................................................................................................... 17
Paso 1: Crear una cuenta de administración para la organización ............................................. 19
Paso 2: Crear una organización para la cuenta de administración ............................................. 20
Paso 3: Agregar cuentas de miembros a la organización ........................................................ 20
Paso 4: Habilitar AWS SSO en la organización ..................................................................... 21
Paso 5. Configurar usuarios y grupos dentro de la organización ............................................... 21
Paso 6. Habilitar usuarios y grupos dentro de la organización para utilizar AWS Cloud9 ................ 22
Paso 7: Comenzar a usar AWS Cloud9 ............................................................................... 23
Pasos siguientes ............................................................................................................... 24
Opciones de configuración adicionales (Team y Enterprise) ............................................................. 24
Paso 1: Crear una política administrada por el cliente ............................................................ 25
Paso 2: Agregar políticas administradas por el cliente a un grupo ............................................. 26
Ejemplos de políticas administradas por el cliente para equipos que utilizan AWS Cloud9 ............. 27
Pasos siguientes ............................................................................................................... 31
Introducción: tutoriales básicos ........................................................................................................... 32
Primer vistazo a AWS Cloud9 (consola) ....................................................................................... 32
Requisitos previos ............................................................................................................. 32
Pasos .............................................................................................................................. 32
Paso 1: Crear un entorno .................................................................................................. 33
Paso 2: Recorrido básico ................................................................................................... 36
Paso 3: Limpieza .............................................................................................................. 40
Información relacionada ..................................................................................................... 42
Primer vistazo a AWS Cloud9 (CLI) ............................................................................................. 43
Requisitos previos ............................................................................................................. 43
Pasos .............................................................................................................................. 43
Paso 1: Crear un entorno .................................................................................................. 44
Paso 2: Recorrido básico ................................................................................................... 45
Paso 3: Limpieza .............................................................................................................. 50
Información relacionada ..................................................................................................... 51
Trabajo con entornos ........................................................................................................................ 53

iii
AWS Cloud9 Guía del usuario

Creación de un entorno ............................................................................................................. 53


Creación de un entorno de EC2 .......................................................................................... 54
Creación de un entorno de SSH ......................................................................................... 65
Acceder a instancias EC2 sin entrada con Systems Manager .......................................................... 68
Beneficios de utilizar Systems Manager para entornos de EC2 ................................................ 69
Administración de permisos de Systems Manager .................................................................. 71
Proporcionar a los usuarios acceso a las instancias administradas por el Administrador de
sesiones .......................................................................................................................... 72
Uso de AWS CloudFormation para crear entornos de EC2 sin entrada ...................................... 73
Configuración de puntos de enlace de la VPC para Amazon S3 para descargar dependencias ....... 75
Configuración de puntos de enlace de la VPC para conectividad privada ................................... 77
Apertura de un entorno ............................................................................................................ 78
Llamar a los servicios de AWS desde un entorno ......................................................................... 81
Creación y uso de un perfil de instancias para administrar credenciales temporales ..................... 83
Crear y almacenar las credenciales de acceso permanente en un entorno ................................. 86
Modificación de la configuración del entorno ................................................................................ 89
Cambiar las preferencias del entorno ................................................................................... 89
Cambiar la configuración del entorno con la consola .............................................................. 89
Cambiar la configuración del entorno mediante código ............................................................ 92
Trabajo con entornos compartidos ............................................................................................... 92
Contenido ........................................................................................................................ 93
Casos de uso de entornos compartidos ............................................................................... 93
Acerca de los roles de acceso de los miembros del entorno .................................................... 94
Invitar a un usuario en la misma cuenta que el entorno .......................................................... 96
Hacer que un administrador de AWS Cloud9 en la misma cuenta que la del entorno se invite a sí
mismo o a otros usuarios ................................................................................................... 97
Abrir un entorno compartido ............................................................................................... 98
Ver una lista de miembros del entorno ................................................................................. 99
Abrir el archivo activo de un miembro del entorno ................................................................ 100
Abrir el archivo de un miembro del entorno ......................................................................... 100
Ir al cursor activo de un miembro del entorno ...................................................................... 100
Conversar con otros miembros del entorno ......................................................................... 100
Ver mensajes de conversación en un entorno compartido ..................................................... 101
Eliminar mensajes de conversación de un entorno compartido ............................................... 101
Eliminar todos los mensajes de conversación de un entorno compartido .................................. 101
Cambiar el rol de acceso de un miembro del entorno ........................................................... 101
Quitar un usuario de un entorno compartido ........................................................................ 102
Quitar otro miembro del entorno ........................................................................................ 103
Prácticas recomendadas para compartir entornos ................................................................ 104
Mover un entorno y cambiar el tamaño de volúmenes de Amazon EBS o cifrarlos ............................. 104
Movimiento de un entorno ................................................................................................ 105
Cambio de tamaño de un volumen de Amazon EBS utilizado en un entorno ............................. 107
Cifrado de los volúmenes de Amazon EBS que utiliza AWS Cloud9 ........................................ 108
Eliminación de entornos ........................................................................................................... 111
Eliminación de un entorno con la consola ........................................................................... 111
Eliminación de un entorno con código ................................................................................ 113
Uso de la IDE ................................................................................................................................ 115
Recorrido del IDE ................................................................................................................... 116
Requisitos previos ........................................................................................................... 116
Paso 1: Barra de menús .................................................................................................. 116
Paso 2: Panel ................................................................................................................. 118
Paso 3: Ventana Environment (Entorno) ............................................................................. 118
Paso 4: Editor, pestañas y paneles .................................................................................... 119
Paso 5: Consola ............................................................................................................. 121
Paso 6: Sección Open files (Abrir archivos) ......................................................................... 121
Paso 7: Margen interior .................................................................................................... 122
Paso 8: Barra de estado .................................................................................................. 122

iv
AWS Cloud9 Guía del usuario

Paso 9: Ventana Outline (Esquema) .................................................................................. 124


Paso 10: Ventana Go (Ir) ................................................................................................. 125
Paso 11: Pestaña Immediate (Inmediato) ............................................................................ 127
Paso 12: Lista de procesos .............................................................................................. 128
Paso 13: Preferencias ...................................................................................................... 129
Paso 14: Terminal ........................................................................................................... 130
Paso 15: Ventana Debugger (Depurador) ........................................................................... 131
Conclusiones .................................................................................................................. 136
Lenguajes compatibles ............................................................................................................. 136
Compatibilidad con lenguajes mejorada ...................................................................................... 138
Compatibilidad con Java mejorada ..................................................................................... 138
Compatibilidad con TypeScript mejorada ............................................................................ 147
Referencia de los comandos de menú ....................................................................................... 151
AWS Cloud9Menú de ...................................................................................................... 151
Menú File ....................................................................................................................... 152
Menú Edit (Editar) ........................................................................................................... 153
Menú Find (Buscar) ......................................................................................................... 155
Menú View (Ver) ............................................................................................................. 156
Menú Go (Ir) .................................................................................................................. 157
Menú Run (Ejecutar) ....................................................................................................... 158
Menú de herramientas ..................................................................................................... 158
Menú Window (Ventana) .................................................................................................. 159
Menú Support (Soporte) ................................................................................................... 161
Menú Preview (Vista previa) ............................................................................................. 161
Otros comandos de la barra de menús ............................................................................... 162
Búsqueda y reemplazo de texto ................................................................................................ 162
Búsqueda de texto en un único archivo .............................................................................. 162
Reemplazo de texto en un único archivo ............................................................................ 162
Búsqueda de texto en varios archivos ................................................................................ 163
Reemplazo de texto en varios archivos .............................................................................. 164
Opciones de búsqueda y reemplazo .................................................................................. 165
Vista previa de archivos ........................................................................................................... 165
Abrir un archivo para vista previa ...................................................................................... 166
Volver a cargar la vista previa de un archivo ....................................................................... 167
Cambiar el tipo de vista previa del archivo .......................................................................... 167
Abrir una vista previa de un archivo en una pestaña independiente del navegador web ............... 167
Cambiar a una vista previa de archivo distinta ..................................................................... 167
Vista previa de aplicaciones en ejecución ................................................................................... 167
Ejecutar una aplicación .................................................................................................... 168
Vista previa de una aplicación en ejecución ........................................................................ 169
Volver a cargar la vista previa de una aplicación .................................................................. 170
Cambiar el tipo de vista previa de la aplicación ................................................................... 170
Abrir la vista previa de una aplicación en una pestaña independiente del navegador web ............ 170
Cambiar a una URL de vista previa distinta ........................................................................ 170
Compartir una aplicación en ejecución a través de internet .................................................... 170
Trabajo con revisiones de archivo ............................................................................................. 175
Trabajo con archivos de imagen ................................................................................................ 176
Ver o editar una imagen .................................................................................................. 176
Cambiar de tamaño una imagen ....................................................................................... 176
Recortar una imagen ....................................................................................................... 177
Rotar una imagen ........................................................................................................... 177
Invertir una imagen ......................................................................................................... 177
Acercar o alejar una imagen ............................................................................................. 178
Suavizar una imagen ....................................................................................................... 178
Trabajo con compiladores, ejecutores y depuradores .................................................................... 178
Soporte integrado de compilación, ejecución y depuración ..................................................... 178
Compilar los archivos del proyecto .................................................................................... 179

v
AWS Cloud9 Guía del usuario

Ejecutar el código ........................................................................................................... 179


Depurar el código ........................................................................................................... 179
Cambiar un ejecutor integrado .......................................................................................... 182
Crear una configuración de ejecución ................................................................................. 182
Crear un compilador o ejecutor ......................................................................................... 183
Definir un compilador o ejecutor ........................................................................................ 184
Trabajo con variables de entorno personalizadas ......................................................................... 186
Establecer variables de entorno personalizadas en el nivel de comando .................................. 187
Establecer variables de entorno de usuario personalizadas en ~/.bash_profile ........................... 187
Establecer variables de entorno personalizadas locales ......................................................... 187
Establecer variables de entorno de usuario personalizadas en ~/.bashrc .................................. 188
Establecer variables de entorno personalizadas en la lista ENV .............................................. 188
Trabajar con la configuración de los proyectos ............................................................................ 188
Ver o cambiar la configuración de proyectos ....................................................................... 189
Aplicar la configuración del proyecto actual de un entorno a otro ............................................ 189
Valor de configuración del proyecto que puede cambiar ........................................................ 189
Detener manualmente la instancia EC2 del entorno .............................................................. 195
Trabajo con la configuración de usuario ..................................................................................... 196
Visualización o cambio de la configuración de usuario .......................................................... 196
Cómo compartir la configuración de usuario con otro usuario ................................................. 196
Cambios de la configuración de usuario que puede realizar ................................................... 197
Trabajar con la configuración de usuarios y de proyectos de AWS .................................................. 204
Configuración de nivel de proyecto .................................................................................... 204
Configuración de nivel de usuario ...................................................................................... 204
Trabajo con enlaces de teclado ................................................................................................. 205
Visualización o cambio de los enlaces de teclado ................................................................ 205
Uso compartido de sus enlaces de teclado con otro usuario .................................................. 205
Cambio del modo de teclado ............................................................................................ 206
Cambio de los enlaces de teclado de su sistema operativo .................................................... 206
Cambio de enlaces de teclado específicos .......................................................................... 206
Eliminación de todos los enlaces de teclado personalizados .................................................. 207
Trabajar con temas ................................................................................................................. 208
Ver o cambiar el tema ..................................................................................................... 208
Valores generales de configuración de temas que puede cambiar ........................................... 208
Anulaciones de tema ....................................................................................................... 208
Administración de scripts de inicialización ................................................................................... 209
Abrir el script de inicialización ........................................................................................... 209
Referencia de enlaces de teclado predeterminados para MacOS .................................................... 209
Generales ...................................................................................................................... 210
Pestañas ........................................................................................................................ 212
Paneles ......................................................................................................................... 214
Editor de código .............................................................................................................. 214
emmet ........................................................................................................................... 219
Terminal ........................................................................................................................ 220
Ejecución y depuración .................................................................................................... 220
Referencia de enlaces de teclado Vim para MacOS ..................................................................... 221
Generales ...................................................................................................................... 221
Pestañas ........................................................................................................................ 224
Paneles ......................................................................................................................... 225
Editor de código .............................................................................................................. 226
emmet ........................................................................................................................... 231
Terminal ........................................................................................................................ 231
Ejecución y depuración .................................................................................................... 231
Referencia de enlaces de teclado Emacs para MacOS ................................................................. 232
Generales ...................................................................................................................... 233
Pestañas ........................................................................................................................ 235
Paneles ......................................................................................................................... 236

vi
AWS Cloud9 Guía del usuario

Editor de código .............................................................................................................. 237


emmet ........................................................................................................................... 242
Terminal ........................................................................................................................ 243
Ejecución y depuración .................................................................................................... 243
Referencia de enlaces de teclado Sublime para MacOS ................................................................ 243
Generales ...................................................................................................................... 244
Pestañas ........................................................................................................................ 247
Paneles ......................................................................................................................... 248
Editor de código .............................................................................................................. 249
emmet ........................................................................................................................... 254
Terminal ........................................................................................................................ 255
Ejecución y depuración .................................................................................................... 255
Referencia de enlaces de teclado predeterminados para Windows/Linux .......................................... 256
Generales ...................................................................................................................... 256
Pestañas ........................................................................................................................ 259
Paneles ......................................................................................................................... 260
Editor de código .............................................................................................................. 261
emmet ........................................................................................................................... 266
Terminal ........................................................................................................................ 266
Ejecución y depuración .................................................................................................... 267
Referencia de enlaces de teclado Vim para Windows/Linux ........................................................... 267
Generales ...................................................................................................................... 268
Pestañas ........................................................................................................................ 270
Paneles ......................................................................................................................... 271
Editor de código .............................................................................................................. 272
emmet ........................................................................................................................... 277
Terminal ........................................................................................................................ 278
Ejecución y depuración .................................................................................................... 278
Referencia de enlaces de teclado Emacs para Windows/Linux ....................................................... 278
Generales ...................................................................................................................... 279
Pestañas ........................................................................................................................ 281
Paneles ......................................................................................................................... 283
Editor de código .............................................................................................................. 283
emmet ........................................................................................................................... 288
Terminal ........................................................................................................................ 289
Ejecución y depuración .................................................................................................... 289
Referencia de enlaces de teclado Sublime para Windows/Linux ..................................................... 290
Generales ...................................................................................................................... 290
Pestañas ........................................................................................................................ 293
Paneles ......................................................................................................................... 295
Editor de código .............................................................................................................. 295
emmet ........................................................................................................................... 300
Terminal ........................................................................................................................ 301
Ejecución y depuración .................................................................................................... 301
Referencia de comandos .......................................................................................................... 302
Trabajar con otros servicios de AWS ................................................................................................. 303
Trabajo con instancias de Amazon Lightsail ................................................................................ 303
Paso 1: Crear una instancia de Lightsail basada en Linux ..................................................... 304
Paso 2: Configurar la instancia para utilizarla con AWS Cloud9 .............................................. 305
Paso 3: Crear un entorno de desarrollo SSH de AWS Cloud9 y conectarse a este ..................... 307
Paso 4: Utilizar el IDE de AWS Cloud9 para cambiar el código en la instancia .......................... 310
Trabajo con proyectos de AWS CodeStar ................................................................................... 310
Paso 1: Prepararse para trabajar con proyectos de AWS CodeStar ......................................... 311
Paso 2: Crear un proyecto en AWS CodeStar ..................................................................... 311
Paso 3: Crear un entorno de desarrollo de AWS Cloud9 y conectarlo con el proyecto ................. 311
Trabajo con AWS CodePipeline ................................................................................................ 312
Paso 1: Crear o identificar el repositorio del código fuente ..................................................... 312

vii
AWS Cloud9 Guía del usuario

Paso 2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y


cargar el código .............................................................................................................. 313
Paso 3: Prepararse para trabajar con AWS CodePipeline ...................................................... 314
Paso 4: Crear una canalización en AWS CodePipeline ......................................................... 314
Control de código fuente visual con el panel de Git .............................................................................. 315
Administración del control de código fuente con el panel de Git ...................................................... 317
Inicialización o clonación de un repositorio de Git ................................................................ 319
Almacenamiento provisional y confirmación de archivos ........................................................ 322
Visualización de diferentes versiones de archivo .................................................................. 324
Uso de las ramificaciones ................................................................................................. 324
Trabajo con repositorios remotos ....................................................................................... 329
Almacenamiento y recuperación de archivos ....................................................................... 332
Referencia: Comandos de Git disponibles en el panel de Git ........................................................ 333
Referencia para los comandos de Git disponibles en el menú del panel de Git .......................... 334
Comandos de Git disponibles en el campo de búsqueda del panel de Git ................................. 336
AWS Toolkit ................................................................................................................................... 338
¿Por qué usar AWS Toolkit? .................................................................................................... 338
Habilitación de AWS Toolkit ...................................................................................................... 338
Administración de credenciales de acceso para AWS Toolkit ......................................................... 339
Uso de roles de IAM para conceder permisos a aplicaciones en instancias de EC2 .................... 340
Identificación de AWS Toolkit .................................................................................................... 340
Desactivación de AWS Toolkit .................................................................................................. 342
Temas de AWS Toolkit ............................................................................................................ 342
Navegación y configuración ...................................................................................................... 342
Uso de AWS Explorer para trabajar con servicios y recursos en varias regiones de AWS ............ 343
Acceso y uso del menú de AWS Toolkit ............................................................................. 343
Modificación de la configuración de AWS Toolkit mediante el panel AWS Configuration
(Configuración de AWS) ................................................................................................... 347
API Gateway .......................................................................................................................... 350
Invocación de API REST .................................................................................................. 350
AWS App Runner ................................................................................................................... 351
Requisitos previos ........................................................................................................... 351
Precios .......................................................................................................................... 353
Creación de servicios de App Runner ................................................................................ 354
Administración de los servicios de App Runner .................................................................... 356
Pilas de AWS CloudFormation .................................................................................................. 358
Eliminación de pilas de AWS CloudFormation ..................................................................... 358
Amazon CloudWatch Logs ....................................................................................................... 358
Visualización de grupos de registros y flujos de registro de CloudWatch ................................... 358
Uso de eventos de CloudWatch Logs ................................................................................ 359
Funciones de AWS Lambda ..................................................................................................... 360
Invocación de funciones de Lambda remotas ...................................................................... 361
Descarga, carga y eliminación de funciones de Lambda ........................................................ 362
Recursos ............................................................................................................................... 365
Permisos de IAM para acceder a los recursos ..................................................................... 365
Interacción con los recursos existentes ............................................................................... 365
Amazon S3 ............................................................................................................................ 366
Trabajo con buckets de Amazon S3 .................................................................................. 366
Trabajo con objetos de Amazon S3 ................................................................................... 368
Aplicaciones de AWS SAM ....................................................................................................... 370
Creación de una aplicación sin servidor .............................................................................. 370
Ejecución y depuración de aplicaciones sin servidor ............................................................. 373
Implementación de una aplicación sin servidor .................................................................... 378
Eliminación de una aplicación sin servidor .......................................................................... 379
Opciones de configuración para depurar aplicaciones sin servidor .......................................... 379
AWS Step Functions ............................................................................................................... 382
Requisitos previos ........................................................................................................... 382

viii
AWS Cloud9 Guía del usuario

Creación y publicación de una máquina de estado ............................................................... 382


Ejecución de una máquina de estado en AWS Toolkit .......................................................... 383
Descargue un archivo de definición de máquina de estado y visualice su flujo de trabajo ............. 384
AWS Systems Manager ........................................................................................................... 384
Hipótesis y requisitos previos ............................................................................................ 385
Permisos de IAM para documentos de Systems Manager Automation ..................................... 385
Creación de un nuevo documento de automatización de Systems Manager .............................. 386
Publicación de un documento de automatización de Systems Manager .................................... 386
Edición de un documento de automatización de Systems Manager existente ............................ 387
Uso de versiones ............................................................................................................ 387
Eliminación de un documento de automatización de Systems Manager .................................... 388
Ejecución de un documento de automatización de Systems Manager ...................................... 388
Solución de problemas ..................................................................................................... 388
Tutoriales y ejemplos ....................................................................................................................... 390
Muestra de AWS CLI y aws-shell .............................................................................................. 390
Requisitos previos ........................................................................................................... 391
Paso 1: Instalar AWS CLI, aws-shell o ambos en el entorno .................................................. 391
Paso 2: Configurar la administración de credenciales en su entorno ........................................ 392
Paso 3: Ejecutar comandos básicos con AWS CLI o aws-shell en su entorno ............................ 393
Paso 4: limpieza ............................................................................................................. 393
AWS CodeCommitEjemplo de ................................................................................................... 394
Requisitos previos ........................................................................................................... 394
Paso 1: Configurar el grupo de IAM con los permisos de acceso necesarios ............................. 394
Paso 2: Crear un repositorio en CodeCommit ...................................................................... 396
Paso 3: Conectar el entorno con el repositorio remoto .......................................................... 396
Paso 4: Clonar el repositorio remoto en su entorno .............................................................. 398
Paso 5: Agregar archivos al repositorio .............................................................................. 398
Paso 6: Limpieza ............................................................................................................ 400
Ejemplo de Amazon DynamoDB ................................................................................................ 400
Requisitos previos ........................................................................................................... 400
Paso 1: Instalar y configurar AWS CLI, aws-shell o ambos en el entorno .................................. 401
Paso 2: Crear una tabla ................................................................................................... 401
Paso 3: Agregar un elemento a la tabla ............................................................................. 402
Paso 4: Agregar varios elementos a la tabla ....................................................................... 403
Paso 5: Crear un índice secundario global .......................................................................... 406
Paso 6: Obtener elementos de la tabla ............................................................................... 408
Paso 7: limpieza ............................................................................................................. 411
AWS CDKEjemplo de .............................................................................................................. 411
Requisitos previos ........................................................................................................... 412
Paso 1: Instalar las herramientas necesarias ....................................................................... 412
Paso 2: Agregar el código ................................................................................................ 415
Paso 3: Ejecutar el código ................................................................................................ 416
Paso 4: limpieza ............................................................................................................. 418
Muestra de LAMP ................................................................................................................... 418
Requisitos previos ........................................................................................................... 419
Paso 1: Instalar las herramientas ...................................................................................... 419
Paso 2: Configurar MySQL ............................................................................................... 421
Paso 3: Configurar un sitio web ........................................................................................ 422
Paso 4: limpieza ............................................................................................................. 425
Muestra de WordPress ............................................................................................................ 426
Requisitos previos ........................................................................................................... 426
Información general de la instalación ................................................................................. 426
Paso 1: Instalación y configuración del servidor MariaDB ...................................................... 427
Paso 2: Instalación y configuración de WordPress ................................................................ 427
Paso 3: Configurar el servidor HTTP Apache ...................................................................... 428
Paso 4: Vista previa del contenido web de WordPress .......................................................... 429
Administración de errores de contenido mixto ...................................................................... 429

ix
AWS Cloud9 Guía del usuario

Muestra de Java ..................................................................................................................... 429


Requisitos previos ........................................................................................................... 430
Paso 1: Instalar las herramientas necesarias ....................................................................... 430
Paso 2: Agregar el código ................................................................................................ 432
Paso 3: Compilar y ejecutar el código ................................................................................ 432
Paso 4: Configurar el uso del AWS SDK for Java ................................................................ 432
Paso 5: Configurar la administración de credenciales de AWS en su entorno ............................ 437
Paso 6: Agregar el código de AWS SDK ............................................................................ 437
Paso 7: Compilar y ejecutar el código de AWS SDK ............................................................. 439
Paso 8: eliminar .............................................................................................................. 439
Muestra de C++ ...................................................................................................................... 439
Requisitos previos ........................................................................................................... 440
Paso 1: Instalar g++ y los paquetes de desarrollo necesarios ................................................. 440
Paso 2: Instalar CMake .................................................................................................... 441
Paso 3: Obtener y compilar el SDK para C++ ..................................................................... 441
Paso 4: Crear archivos de C++ y CMakeLists ..................................................................... 442
Paso 5: Compilar y ejecutar el código de C++ ..................................................................... 445
Paso 6: Limpieza ............................................................................................................ 446
Tutorial de Python ................................................................................................................... 446
Requisitos previos ........................................................................................................... 446
Paso 1: Instalar Python .................................................................................................... 446
Paso 2: Agregar el código ................................................................................................ 447
Paso 3: Ejecutar el código ................................................................................................ 447
Paso 4: Instalar y configurar el AWS SDK for Python (Boto3) ................................................. 448
Paso 5: Agregar el código de AWS SDK ............................................................................ 449
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 450
Paso 7: limpieza ............................................................................................................. 450
Muestra de .NET Core ............................................................................................................. 450
Requisitos previos ........................................................................................................... 451
Paso 1: Instalar las herramientas necesarias ....................................................................... 451
Paso 2 (opcional): Instalar la extensión de la CLI de .NET para las funciones de Lambda ............ 453
Paso 3: Crear un proyecto de aplicación de consola de .NET Core ......................................... 453
Paso 4: Agregar el código ................................................................................................ 454
Paso 5: Compilar y ejecutar el código ................................................................................ 454
Paso 6: Crear y configurar un proyecto de aplicación de consola de .NET Core que use AWS
SDK for .NET ................................................................................................................. 456
Paso 7: Agregar el código de AWS SDK ............................................................................ 457
Paso 8: Compilar y ejecutar el código de AWS SDK ............................................................. 458
Paso 9: limpieza ............................................................................................................. 459
Muestra de Node.js ................................................................................................................. 459
Requisitos previos ........................................................................................................... 459
Paso 1: Instalar las herramientas necesarias ....................................................................... 459
Paso 2: Agregar el código ................................................................................................ 460
Paso 3: Ejecutar el código ................................................................................................ 460
Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js ............................................ 461
Paso 5: Agregar el código de AWS SDK ............................................................................ 462
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 465
Paso 7: limpieza ............................................................................................................. 466
Muestra de PHP ..................................................................................................................... 466
Requisitos previos ........................................................................................................... 466
Paso 1: Instalar las herramientas necesarias ....................................................................... 466
Paso 2: Agregar el código ................................................................................................ 467
Paso 3: Ejecutar el código ................................................................................................ 468
Paso 4: Instalar y configurar el AWS SDK for PHP ............................................................... 468
Paso 5: Agregar el código de AWS SDK ............................................................................ 469
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 471
Paso 7: limpieza ............................................................................................................. 471

x
AWS Cloud9 Guía del usuario

Tutorial: Ruby ......................................................................................................................... 471


Requisitos previos ........................................................................................................... 472
Pasos ............................................................................................................................ 472
Paso 1: Instalar las herramientas necesarias ....................................................................... 472
Paso 2: Agregar el código ................................................................................................ 473
Paso 3: Ejecutar el código ................................................................................................ 473
Paso 4: Instalar y configurar el AWS SDK for Ruby .............................................................. 474
Paso 5: Agregar el código de AWS SDK ............................................................................ 476
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 477
Paso 7: limpieza ............................................................................................................. 477
Ejemplo de Go ....................................................................................................................... 478
Requisitos previos ........................................................................................................... 478
Paso 1: Instalar las herramientas necesarias ....................................................................... 478
Paso 2: Agregar el código ................................................................................................ 479
Paso 3: Ejecutar el código ................................................................................................ 480
Paso 4: Instalar y configurar el AWS SDK for Go ................................................................. 481
Paso 5: Agregar el código de AWS SDK ............................................................................ 482
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 483
Paso 7: limpieza ............................................................................................................. 484
Muestra de TypeScript ............................................................................................................. 484
Requisitos previos ........................................................................................................... 484
Paso 1: Instalar las herramientas necesarias ....................................................................... 485
Paso 2: Agregar el código ................................................................................................ 486
Paso 3: Ejecutar el código ................................................................................................ 486
Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js ............................................ 487
Paso 5: Agregar el código de AWS SDK ............................................................................ 488
Paso 6: Ejecutar el código de AWS SDK ............................................................................ 489
Paso 7: limpieza ............................................................................................................. 490
Ejemplo de Docker .................................................................................................................. 490
Requisitos previos ........................................................................................................... 491
Paso 1: instalar y ejecutar Docker ..................................................................................... 491
Paso 2: Crear la imagen .................................................................................................. 492
Paso 3: Ejecutar el contenedor ......................................................................................... 494
Paso 4: Crear el entorno .................................................................................................. 495
Paso 5: Ejecutar el código ................................................................................................ 496
Paso 6: Limpieza ............................................................................................................ 497
Ejemplos relacionados ............................................................................................................. 498
Temas avanzados ........................................................................................................................... 499
Entornos de EC2 comparados con entornos de SSH .................................................................... 499
Configuración de Amazon VPC ................................................................................................. 500
Requisitos de Amazon VPC para AWS Cloud9 .................................................................... 500
Cree una instancia de Amazon VPC para AWS Cloud9 ........................................................ 511
Crear una subred para AWS Cloud9 .................................................................................. 513
Configuración de una subred como pública o privada ........................................................... 514
Requisitos de anfitrión del entorno SSH ..................................................................................... 515
Cuándo y cómo crear un entorno de SSH .......................................................................... 516
Requisitos del host SSH .................................................................................................. 517
AWS Cloud9Instalador de ........................................................................................................ 518
Descargue y ejecute el instalador de AWS Cloud9 ............................................................... 518
Solución de problemas del instalador de AWS Cloud9 .......................................................... 519
Intervalos de direcciones IP de entrada con SSH ......................................................................... 520
Direcciones IP no incluidas en ip-ranges.json ................................................................ 521
Contenido de AMI ................................................................................................................... 522
Amazon Linux 2 o Amazon Linux ...................................................................................... 522
Servidor Ubuntu .............................................................................................................. 523
Roles vinculados a servicios ..................................................................................................... 524
Permisos de roles vinculados a servicios de AWS Cloud9 ..................................................... 524

xi
AWS Cloud9 Guía del usuario

Creación de un rol vinculado a un servicio de AWS Cloud9 ................................................... 527


Modificación de un rol vinculado a un servicio de AWS Cloud9 ............................................... 527
Eliminación de un rol vinculado a un servicio de AWS Cloud9 ................................................ 527
Regiones admitidas para los roles vinculados a un servicio de AWS Cloud9 ............................. 528
Registro de llamadas a la API con CloudTrail .............................................................................. 528
AWS Cloud9Información de en CloudTrail ........................................................................... 528
Descripción de las entradas de los archivos de registro de AWS Cloud9 .................................. 529
Etiquetas ................................................................................................................................ 540
Propagación de actualizaciones de etiquetas a los recursos subyacentes ................................. 541
Seguridad ...................................................................................................................................... 543
Protección de los datos ............................................................................................................ 543
Cifrado de datos ............................................................................................................. 544
Identity and Access Management .............................................................................................. 546
Público .......................................................................................................................... 546
Autenticación con identidades ........................................................................................... 546
Administración de acceso mediante políticas ....................................................................... 548
Cómo AWS Cloud9 funciona con IAM ................................................................................ 548
Políticas administradas por AWS ....................................................................................... 550
Creación de políticas administradas por el cliente para AWS Cloud9 ....................................... 557
Referencia de permisos de AWS Cloud9 ............................................................................ 565
Credenciales temporales administradas por AWS ................................................................. 569
Registro y monitoreo ............................................................................................................... 573
Monitoreo de la actividad con CloudTrail ............................................................................ 573
Supervisión del rendimiento del entorno EC2 ...................................................................... 573
Validación de conformidad ........................................................................................................ 573
Resiliencia .............................................................................................................................. 577
Seguridad de infraestructuras .................................................................................................... 577
Configuración y análisis de vulnerabilidades ................................................................................ 577
Prácticas recomendadas de seguridad ....................................................................................... 578
Solución de problemas ..................................................................................................................... 579
Error de creación del entorno: “No hemos podido crear las instancias de EC2...” ............................... 580
Error al crear el entorno: “no dispone de autorización para sts:AssumeRole”. .................................... 580
Error de consola: “el usuario no está autorizado para realizar la acción en el recurso” ........................ 581
Las identidades federadas no pueden crear entornos ................................................................... 581
No se puede abrir un entorno ................................................................................................... 582
El instalador de AWS Cloud9 se bloquea o falla .......................................................................... 583
Error del entorno de SSH: “se precisa la versión 2.7 de Python para instalar pty.js” ............................ 583
Aviso de vista previa de aplicaciones o vista previa de archivo: “Cookies de terceros desactivadas” ...... 584
La pestaña de vista previa de la aplicación muestra un mensaje de error o está en blanco .................. 586
No se puede mostrar la aplicación en ejecución fuera del IDE ........................................................ 587
Después de volver a cargar un entorno, es necesario actualizar la vista previa de la aplicación ............ 589
No se pueden ejecutar algunos comandos o scripts en un entorno de EC2 ...................................... 589
Error de AWS CLI/aws-shell: “el token de seguridad incluido en la solicitud no es válido” en un entorno
de EC2 .................................................................................................................................. 589
Las instancias de Amazon EC2 no se actualizan automáticamente ................................................. 590
Error de ejecución de la función local Lambda: no se puede instalar SAM Local ................................ 590
Advertencia del IDE: “Este entorno se está quedando sin memoria” o “Este entorno tiene una elevada
carga de CPU” ....................................................................................................................... 591
La vista previa de un archivo devuelve un error 499 ..................................................................... 592
Error de eliminación del entorno: “No se pudieron eliminar uno o más entornos” ................................ 592
Advertencia de la consola: “Cambio al motor de finalización de código mínimo...” .............................. 593
El instalador de AWS Cloud9 no finaliza después de mostrar: “Package Cloud9 IDE 1” ....................... 593
Error de VPC para cuentas de EC2-Classic: “No se puede acceder a su entorno” .............................. 594
No se puede abrir el entorno de AWS Cloud9: “Los colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación de las credenciales temporales administradas o contacte
con el propietario de este entorno”. ........................................................................................... 595

xii
AWS Cloud9 Guía del usuario

Mensaje de error que notifica que el perfil de instancias AWSCloud9SSminStanceProfile no existe en


la cuenta al crear un entorno de EC2 mediante AWS CloudFormation ............................................. 595
Mensaje de error que indica que no tiene autorización para ejecutar: ssm:StartSession en el recurso al
crear un entorno de EC2 mediante AWS CloudFormation .............................................................. 596
Mensaje de error que indica que no tiene autorización “para ejecutar: iam:GetInstanceProfile
en el recurso: perfil de instancias AWSCloud9SSMInstanceProfile” al crear un entorno de EC2
mediante AWS CLI .................................................................................................................. 596
No se puede conectar al entorno de EC2 porque Docker utiliza las direcciones IP de VPC .................. 597
Error al ejecutar AWS Toolkit, que indica que el entorno se está quedando sin inodes y que se debe
aumentar el límite de “fs.inotify.max_user_watches”. ..................................................................... 597
Aviso: error al instalar dependencias para el soporte de colaboración .............................................. 598
Error con gdb al depurar proyectos de C++ ................................................................................ 598
Error al ejecutar aplicaciones SAM localmente en AWS Toolkit porque el entorno de AWS Cloud9 no
tiene suficiente espacio en disco ............................................................................................... 599
No se puede cargar el IDE con versiones anteriores del navegador Microsoft Edge ........................... 600
Error al crear un entorno cuando se aplica el cifrado predeterminado a volúmenes de Amazon EBS ...... 600
No se puede obtener una vista previa del contenido web en el IDE porque la conexión al sitio no es
segura ................................................................................................................................... 601
No se puede lanzar AWS Cloud9 desde la consola cuando la configuración de licencias AWS License
Manager está asociada a instancias de Amazon EC2 ................................................................... 601
No se puede interactuar con la ventana de terminal en AWS Cloud9 debido a errores de sesión de
tmux ...................................................................................................................................... 602
Navegadores compatibles ................................................................................................................. 604
Límites ........................................................................................................................................... 605
Límites de AWS Cloud9 ........................................................................................................... 605
AWS Service Limits relacionados .............................................................................................. 606
Historial de documentos ................................................................................................................... 607

xiii
AWS Cloud9 Guía del usuario
¿Cómo funciona AWS Cloud9?

¿Qué es AWS Cloud9?


AWS Cloud9 es un entorno de desarrollo integrado, o IDE.

El IDE de AWS Cloud9 ofrece una completa experiencia de edición de código, con soporte para varios
lenguajes de programación y depuradores de tiempo de ejecución, además de un terminal integrado.
Contiene una colección de herramientas que se utilizan para codificar, compilar, ejecutar, probar y depurar
software, y le ayuda a lanzar software en la nube.

Es posible acceder al IDE de AWS Cloud9 a través de un navegador web. Puede configurar el IDE según
sus preferencias. Puede cambiar temas de color, enlazar claves de acceso directo, habilitar la sintaxis de
color para lenguajes de programación y el formato del código, y mucho más.

(Entendido. Estoy listo para probar AWS Cloud9.¿Cómo puedo comenzar? (p. 3))

¿Cómo funciona AWS Cloud9?


En el siguiente diagrama se muestra información general sobre el funcionamiento de AWS Cloud9:

En el diagrama (comenzando por la parte inferior), utilice el IDE de AWS Cloud9 ejecutado en un
navegador web en su computadora local, para interactuar con su Entorno de AWS Cloud9. Un recurso
informático (por ejemplo, una instancia de Amazon EC2 o su propio servidor) se conecta a ese entorno.
Por último, el trabajo se almacena en un repositorio de AWS CodeCommit u otro tipo de repositorio remoto.

1
AWS Cloud9 Guía del usuario
AWS Cloud9Entornos de

AWS Cloud9Entornos de
Un entorno de AWS Cloud9 es un lugar en el que se almacenan los archivos del proyecto y donde se
ejecutan las herramientas para desarrollar aplicaciones.

El IDE de AWS Cloud9 le permite realizar las acciones siguientes:

• Almacenar los archivos del proyecto localmente en la instancia o el servidor.


• Clonar un repositorio de código remoto, como un repositorio de AWS CodeCommit, en el entorno.
• Trabaje con una combinación de archivos locales y clonados en el entorno.

Puede crear y cambiar entre varios entornos, con cada entorno configurado para un proyecto de desarrollo
específico. Al almacenar el entorno en la nube, los proyectos ya no tienen por qué estar asociados a una
sola configuración del servidor o computadora. Esto permite hacer cosas como cambiar fácilmente entre
equipos e incluir con mayor rapidez a los desarrolladores en el equipo.

Entornos y recursos informáticos


En segundo plano, existen varias formas en las que puede conectar los entornos a los recursos
informáticos.

2
AWS Cloud9 Guía del usuario
¿Qué puedo hacer con AWS Cloud9?

• Puede indicar a AWS Cloud9 que cree una instancia de Amazon EC2 y, a continuación, conectar el
entorno a esa instancia EC2 recién creada. Este tipo de configuración se denomina entorno de EC2.
• También puede indicar a AWS Cloud9 que conecte un entorno a una instancia de informática en la nube
existente o a su propio servidor. Este tipo de configuración se denomina entorno de SSH.

Los entornos de EC2 y SSH tienen algunas similitudes y algunas diferencias. Si es nuevo en AWS Cloud9,
le recomendamos que utilice un entorno de EC2, ya que AWS Cloud9 se encargará de gran parte de la
configuración de forma automática. A medida que aprenda más sobre AWS Cloud9 y desee entender
mejor estas similitudes y diferencias, consulte Entornos de EC2 comparados con entornos de SSH en
AWS Cloud9 (p. 499).

Para obtener más información sobre cómo funciona AWS Cloud9, consulte estos vídeos (p. 5) y
páginas web (p. 5)relacionados.

¿Qué puedo hacer con AWS Cloud9?


Con AWS Cloud9, puede codificar, compilar, ejecutar, probar, depurar y publicar software en muchas
situaciones y variaciones interesantes. Incluyen (entre otros):

• Trabajar con código en varios lenguajes de programación y el AWS Cloud Development Kit (CDK).
• Trabajar con código en un contenedor Docker en ejecución.
• Utilizar repositorios de código online.
• Colaborar con otros usuarios en tiempo real.
• Interactuar con varias tecnologías de bases de datos y sitios web.
• Indicar como destino AWS Lambda, Amazon API Gateway y Aplicaciones sin servidor de AWS.
• Aprovechar otros productos de AWS, como Amazon Lightsail, AWS CodeStar y AWS CodePipeline.

Para obtener una lista más detallada, consulte ¿Qué puedo hacer con AWS Cloud9? (p. 3)

¿Cómo puedo comenzar?


Para comenzar a utilizar AWS Cloud9, siga los pasos que se indican en Configuración de AWS
Cloud9 (p. 7) y, a continuación, siga el tutorial básico (p. 32).

Temas adicionales
• ¿Qué puedo hacer con AWS Cloud9? (p. 3)
• Información adicional sobre AWS Cloud9 (p. 5)

¿Qué puedo hacer con AWS Cloud9?


Explore los siguientes recursos para obtener información acerca de cómo utilizar AWS Cloud9 en algunos
escenarios comunes.

3
AWS Cloud9 Guía del usuario
¿Qué puedo hacer con este servicio?

Escenarios clave

Escenario Recursos

Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.

Trabajo con instancias de Amazon Lightsail Trabajo con instancias de Amazon Lightsail en
preconfiguradas con aplicaciones y marcos el entorno de desarrollo integrado (IDE) de AWS
conocidos, como WordPress, LAMP (Linux, Cloud9 (p. 303)
Apache, MySQL y PHP), Node.js, Nginx, Drupal
y Joomla, así como con distribuciones de Linux,
como Amazon Linux, Ubuntu, Debian, FreeBSD y
openSUSE.

Trabajo con código en proyectos de desarrollo de Trabajo con proyectos de AWS CodeStar en el
software de AWS y cadenas de herramientas de entorno de Desarrollo Integrado (IDE) de AWS
AWS CodeStar. Cloud9 (p. 310)

Trabajo con código en soluciones de entrega Trabajo con AWS CodePipeline en el entorno
continua de AWS CodePipeline. de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)

Automatizar los servicios de AWS mediante la Muestra de AWS Command Line Interface y aws-
AWS CLI y el aws-shell. shell para AWS Cloud9 (p. 390)

Trabajo con repositorios de código fuente en AWS AWS CodeCommit Ejemplo de para AWS
CodeCommit. Cloud9 (p. 394)

Trabajo con repositorios de código fuente en Control de código fuente visual con el panel de
GitHub usando la interfaz del panel de Git. Git (p. 315)

Trabajo con bases de datos NoSQL en Amazon Ejemplo de Amazon DynamoDB para AWS
DynamoDB. Cloud9 (p. 400)

Trabajo con las pilas de LAMP (Linux, Apache Muestra de LAMP para AWS Cloud9 (p. 418)
HTTP Server, MySQL y PHP).

Trabaje con sitios web de WordPress. Instalación de WordPress para AWS


Cloud9 (p. 426)

Trabajo con código para Java y AWS SDK for Muestra de Java para AWS Cloud9 (p. 429)
Java.

Trabajo con código para C++ y AWS SDK for C++. Muestra de C++ para AWS Cloud9 (p. 439)

Trabajo con código para Python y AWS SDK for Tutorial de Python para AWS Cloud9 (p. 446)
Python (Boto).

Trabajo con código para .NET Core y AWS SDK Muestra de .NET Core para AWS Cloud9 (p. 450)
for .NET.

Trabajo con código para Node.js y AWS SDK for Muestra de Node.js para AWS Cloud9 (p. 459)
JavaScript.

Trabajo con código para PHP y AWS SDK for PHP. Muestra de PHP para AWS Cloud9 (p. 466)

Trabajo con código para Ruby y AWS SDK for Tutorial: Ruby en AWS Cloud9 (p. 471)
Ruby.

4
AWS Cloud9 Guía del usuario
Información adicional

Escenario Recursos

Trabajo con código para Go y AWS SDK for Go. Ejemplo de Go para AWS Cloud9 (p. 478)

Trabajo con código para TypeScript y AWS SDK Muestra de TypeScript para AWS Cloud9 (p. 484)
for JavaScript.

Trabaje con código para el AWS Cloud Ejemplo de AWS CDK para AWS Cloud9 (p. 411)
Development Kit (CDK).

Trabajo con el código en un contenedor Docker en Ejemplo de Docker para AWS Cloud9 (p. 490)
ejecución.

Invitación para que otras personas usen un Trabajo con entornos compartidos en AWS
entorno con usted, en tiempo real y con soporte de Cloud9 (p. 92)
conversación de texto.

Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker

Información adicional sobre AWS Cloud9


En este tema se proporciona más información para ayudarle a conocer mejor AWS Cloud9.

Temas
• Videos relacionados (p. 5)
• Temas relacionados en el sitio de AWS (p. 5)
• Precios (p. 6)
• Tengo más preguntas o necesito ayuda (p. 6)

Videos relacionados
• AWS re:Invent 2017 - Introducing AWS Cloud9: Werner Vogels Keynote (9 minutos, sitio web de
YouTube)
• AWS re:Invent Launchpad 2017 - AWS Cloud9, (15 minutos, sitio web de YouTube)
• Introducing AWS Cloud9 - AWS Online Tech Talks (33 minutos, sitio web de YouTube)
• AWS Sydney Summit 2018: AWS Cloud9 and AWS CodeStar (25 minutos, sitio web de YouTube)

Temas relacionados en el sitio de AWS


• Presentación de AWS Cloud9
• AWS Cloud9 – Entornos de desarrolladores en la nube
• AWS Cloud9 Información general de
• AWS Cloud9 Características de
• AWS Cloud9 Preguntas frecuentes sobre

5
AWS Cloud9 Guía del usuario
Precios

Precios
No hay cargo adicional para AWS Cloud9. Si utiliza una instancia de Amazon EC2 para su entorno de
desarrollo de AWS Cloud9, solo pagará por los recursos informáticos y de almacenamiento (por ejemplo,
una instancia de Amazon EC2 y un volumen de Amazon EBS) que se utilicen para ejecutar y almacenar el
código. También puede conectar su entorno a un servidor Linux existente (por ejemplo, un servidor local)
mediante SSH sin cargos adicionales.

Solo pagará por lo que consuma y a medida que lo haga: no se requieren pagos mínimos ni compromisos
iniciales. Se le aplicarán las tarifas de AWS normales de cualquier recurso de AWS (por ejemplo, funciones
de AWS Lambda) que cree o utilice en el entorno.

Los clientes nuevos de AWS que reúnan los requisitos para la capa gratuita de AWS pueden usar AWS
Cloud9 gratis. Si el entorno utiliza otros recursos que no están en el nivel gratuito de AWS, se le cobrarán
las tarifas de AWS normales por estos recursos.

Para obtener más información, consulte los siguientes temas.

• Precios de AWS Cloud9: consulte Precios de AWS Cloud9.


• Precios de servicio de AWS: consulte Precios de Amazon EC2, Precios de Amazon EBS, Precios de
AWS Lambda y Precios de AWS.
• La capa gratuita de AWS: consulte Uso de la capa gratuita de AWS y Seguimiento de su uso de la capa
gratuita en la Guía del usuario de AWS Billing and Cost Management.
• Precios de formación académica: consulte el programa AWS Educate.

Tengo más preguntas o necesito ayuda


Para formular preguntas o buscar ayuda de la comunidad de AWS Cloud9, consulte el foro de debate de
AWS Cloud9. (Cuando entre en este foro, es posible que AWS requiera que inicie sesión).

Consulte también nuestras preguntas frecuentes o contacte con nosotros directamente.

6
AWS Cloud9 Guía del usuario
Configuración de usuario individual

Configuración de AWS Cloud9


Para comenzar a utilizar AWS Cloud9, siga uno de estos conjuntos de procedimientos, en función de cómo
tenga previsto utilizar AWS Cloud9.

Patrón de uso Siga estos procedimientos

Soy la única persona que utiliza la cuenta de AWS Configuración de usuario individual (p. 7)
y no soy estudiante.

Pertenezco a un equipo que tiene varios usuarios Configuración de equipo (p. 9)


en una sola cuenta de AWS.

Pertenezco a una empresa que tiene una o varias Configuración de empresa (p. 17)
cuentas de AWS en una única organización.

Para obtener información general sobre AWS Cloud9, consulte ¿Qué es AWS Cloud9? (p. 1)

Temas
• Configuración de usuario individual para AWS Cloud9 (p. 7)
• Configuración de equipos para AWS Cloud9 (p. 9)
• Configuración de empresa para AWS Cloud9 (p. 17)
• Opciones de configuración adicionales para AWS Cloud9 (Team y Enterprise) (p. 24)

Configuración de usuario individual para AWS


Cloud9
En este tema se explica cómo realizar la configuración para utilizar AWS Cloud9 como un único individuo
(no estudiante) en la cuenta de AWS. Si va a configurar AWS Cloud9 para seguir cualquier otro patrón
de uso, consulte Configuración de AWS Cloud9 (p. 7) para obtener las instrucciones correctas. Para
obtener más información sobre a quiénes se considera estudiantes, consulte ¿Quién puede unirse a AWS
Educate? en el sitio web de Preguntas frecuentes de AWS Educate.

Para utilizar AWS Cloud9 como el único individuo en la cuenta de AWS, cree una cuenta de AWS, si
todavía no tiene una y, a continuación, inicie sesión en la consola de AWS Cloud9.

Paso 1: crear una cuenta de AWS


Si ya tiene una cuenta de AWS, vaya al Paso 2: Iniciar sesión en la consola de AWS Cloud9 con el usuario
raíz de la cuenta de AWS (p. 8).

Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.

Para crear una cuenta de AWS

1. Vaya a https://aws.amazon.com/.

7
AWS Cloud9 Guía del usuario
Paso 2: Iniciar sesión en la consola de AWS
Cloud9 con el usuario raíz de la cuenta de AWS

2. Elija Sign In to the Console (Iniciar sesión en la consola).


3. Elija Create a new AWS account (Crear una nueva cuenta de AWS).
4. Complete el proceso siguiendo las instrucciones que aparecen en pantalla. Esto incluye dar a AWS
su dirección de correo electrónico y los datos de la tarjeta de crédito. También debe utilizar el teléfono
para ingresar un código que AWS le ofrece.

Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.

Paso 2: Iniciar sesión en la consola de AWS Cloud9


con el usuario raíz de la cuenta de AWS
Una vez completado el paso anterior, estará listo para iniciar sesión en la consola de AWS Cloud9 con un
usuario raíz de la cuenta de AWS y comenzar a utilizar AWS Cloud9.

1. Abra la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.


2. Ingrese la dirección de correo electrónico de su cuenta de AWS y, a continuación, elija Next (Siguiente).
Note

Si ya se muestra una dirección de correo electrónico y no es la correcta, elija Sign in to a


different account (Iniciar sesión con una cuenta diferente). Escriba la dirección de correo
electrónico correcta y, a continuación, elija Next (Siguiente).
3. Ingrese la contraseña de la cuenta de AWS y elija Sign In (Iniciar sesión).

Se abre la consola de AWS Cloud9. Ahora puede comenzar a utilizar AWS Cloud9.
Important

Aunque puede iniciar sesión en la consola de AWS Cloud9 con la dirección de correo electrónico
y la contraseña que utilizó al crear su cuenta de AWS (lo denominamos usuario raíz de la
cuenta de AWS), no se trata de una práctica recomendada de seguridad de AWS. En el futuro,
le recomendamos que inicie sesión como usuario administrador de AWS Identity and Access
Management (IAM) en su cuenta de AWS en su lugar. Para obtener más información, consulte
Creación del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM y Tareas
de AWS que exigen credenciales de usuario raíz de la cuenta de AWS en la Referencia general
de Amazon Web Services.

Pasos siguientes

Tarea de aprendizaje Consulte este tema

Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)

Tarea más avanzada Consulte este tema

Cree un entorno de desarrollo de AWS Cloud9 y, Creación de un entorno (p. 53)


a continuación, utilice el IDE de AWS Cloud9 para
trabajar con el código en su nuevo entorno.

8
AWS Cloud9 Guía del usuario
Configuración de equipos

Tarea más avanzada Consulte este tema

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.

Configuración de equipos para AWS Cloud9


En este tema se explica cómo utilizar AWS Identity and Access Management (IAM) para permitir que
varios usuarios en una única cuenta de AWS utilicen AWS Cloud9. Si va a configurar AWS Cloud9 para
seguir cualquier otro patrón de uso, consulte Configuración de AWS Cloud9 (p. 7) para obtener las
instrucciones correctas.

Estas instrucciones suponen que ya tiene (o tendrá) acceso administrativo a una única cuenta de AWS.
Para obtener más información, consulte El usuario raíz de la cuenta de AWS y Creación del primer grupo y
usuario administrador de IAM en la Guía del usuario de IAM. Si ya tiene una cuenta de AWS pero no tiene
acceso administrativo a ella, consulte al administrador de su cuenta de AWS.
Note

Puede utilizar AWS Single Sign-On (SSO) en lugar de IAM para permitir que varios usuarios
en una única cuenta de AWS utilicen AWS Cloud9. En este patrón de uso, la cuenta única de
AWS sirve como la cuenta de administración de una organización en AWS Organizations; dicha
organización no tiene cuentas de miembros. Para utilizar AWS SSO, omita este tema y siga
en cambio las instrucciones de Configuración de empresa (p. 17). Para obtener información
relacionada, consulte los recursos siguientes:

• ¿Qué es AWS Organizations en la Guía del usuario de AWS Organizations (AWS SSO requiere
el uso de AWS Organizations)
• ¿Qué es AWS Single Sign-On? en la Guía del usuario de AWS Single Sign-On
• El video de 4 minutos AWS Knowledge Center Videos: How do I get started with AWS
Organizations en el sitio web de YouTube
• El video de 7 minutos Manage user access to multiple AWS accounts using AWS Single Sign-
on en el sitio web de YouTube
• El video de 9 minutos How to set up AWS Single Sign On for your on-premise Active Directory
users en el sitio web de YouTube

Para permitir que varios usuarios de una única cuenta de AWS comiencen a utilizar AWS Cloud9,
comience con uno de los siguientes pasos, en función de los recursos de AWS de los que ya disponga.

¿Tiene una cuenta de AWS? Tiene al menos un grupo y un Comience por este paso
usuario de IAM en esa cuenta?

No — Paso 1: crear una cuenta de


AWS (p. 10)

Sí No Paso 2: Crear un grupo y un


usuario de IAM y agregar el
usuario al grupo (p. 10)

Sí Sí Paso 3: Agregar permisos de


acceso para AWS Cloud9 al
grupo (p. 14)

9
AWS Cloud9 Guía del usuario
Paso 1: crear una cuenta de AWS

Paso 1: crear una cuenta de AWS


Note
Es posible que su organización ya tenga una cuenta de AWS configurada. Si su organización
tiene un administrador de cuenta de AWS, consulte a esa persona antes de comenzar el
procedimiento siguiente. Si ya tiene una cuenta de AWS, vaya al Paso 2: Crear un grupo y un
usuario de IAM y agregar el usuario al grupo (p. 10).

Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.

Para crear una cuenta de AWS

1. Vaya a https://aws.amazon.com/.
2. Elija Sign In to the Console (Iniciar sesión en la consola).
3. Elija Create a new AWS account (Crear una nueva cuenta de AWS).
4. Complete el proceso siguiendo las instrucciones que aparecen en pantalla. Esto incluye dar a AWS
su dirección de correo electrónico y los datos de la tarjeta de crédito. También debe utilizar el teléfono
para ingresar un código que AWS le ofrece.

Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.

Paso 2: Crear un grupo y un usuario de IAM y agregar


el usuario al grupo
En este paso, creará un grupo y un usuario de AWS Identity and Access Management (IAM), agregará
el usuario al grupo y, a continuación, empleará el usuario para obtener acceso a AWS Cloud9. Esta es
una práctica recomendada de seguridad de AWS. Para obtener más información, consulte Prácticas
recomendadas de IAM en la Guía del usuario de IAM.

Si ya tiene todos los grupos y usuarios de IAM que necesita, vaya al Paso 3: Agregar permisos de acceso
para AWS Cloud9 al grupo (p. 14).
Note
Es posible que su organización ya tenga un grupo y un usuario de IAM configurados. Si su
organización tiene un administrador de cuenta de AWS, consulte a esa persona antes de
comenzar los procedimientos siguientes.

Puede completar estas tareas con la AWS Management Console (p. 10) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 11).

Para ver un video de 9 minutos relacionado con los siguientes procedimientos de la consola, consulte How
do I set up an IAM user and sign in to the AWS Management Console using IAM credentials en el sitio web
de YouTube.

Paso 2.1: Crear un grupo de IAM con la consola


1. Inicie sesión en la AWS Management Console, si todavía no lo ha hecho, en https://
console.aws.amazon.com/codecommit.
Note
Aunque puede iniciar sesión en la AWS Management Console con la dirección de correo
electrónico y la contraseña que utilizó al crear su cuenta de AWS (lo denominamos usuario raíz

10
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo

de la cuenta de AWS), no se trata de una práctica recomendada de seguridad de AWS. En el


futuro, le recomendamos que inicie sesión con las credenciales de un usuario administrador
de IAM en la cuenta de AWS. Un usuario administrador de IAM tiene permisos de acceso a
AWS similares a un usuario raíz de cuenta de AWS y evita algunos de los riesgos de seguridad
asociados. Si no puede iniciar sesión como usuario administrador de IAM, consulte con el
administrador de su cuenta de AWS. Para obtener más información, consulte Creación del
primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.
2. Abra la consola de IAM. Para ello, en la barra de navegación de AWS, elija Services (Servicios). A
continuación, elija IAM.
3. En el panel de navegación de la consola de IAM, elija Groups (Grupos).
4. Elija Create New Group (Crear nuevo grupo).
5. En la página Set Group Name (Establecer nombre de grupo), en Group Name (Nombre de grupo),
escriba un nombre para el nuevo grupo.
6. Elija Next Step (Paso siguiente).
7. En la página Attach Policy (Adjuntar política), seleccione Next Step (Paso siguiente) sin adjuntar
ninguna política. (Es preciso adjuntar una política en el Paso 3: Agregar permisos de acceso para AWS
Cloud9 al grupo (p. 14)).
8. Elija Create Group.
Note

Le recomendamos que repita este procedimiento para crear al menos dos grupos: uno
para usuarios de AWS Cloud9 y otro para administradores de AWS Cloud9. Esta práctica
recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento y
solucionar mejor los problemas de acceso a los recursos de AWS.

Avance hasta llegar al Paso 2.2: Crear un usuario de IAM y agregar el usuario el grupo con la
consola (p. 12).

Paso 2.1: Crear un grupo de IAM con AWS CLI


Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

1. Si todavía no lo ha hecho, instale y configure la AWS CLI en su equipo. Para ello, consulte lo siguiente
en la Guía del usuario de AWS Command Line Interface:
• Instalación de la interfaz de línea de comandos de AWS
• Configuración rápida
Note

Aunque puede configurar AWS CLI mediante las credenciales asociadas con la dirección de
correo electrónico y la contraseña que se proporcionó cuando se creó la cuenta de AWS (lo
denominamos usuario raíz de una cuenta de AWS), esta no es una práctica recomendada de
seguridad de AWS. En cambio, le recomendamos que configure AWS CLI con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Un usuario administrador de
IAM tiene permisos de acceso a AWS similares a un usuario raíz de cuenta de AWS y evita
algunos de los riesgos de seguridad asociados. Si no puede configurar AWS CLI como usuario
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más

11
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo

información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
2. Ejecute el comando create-group de IAM, especificando el nombre del nuevo grupo (por ejemplo,
MyCloud9Group).

aws iam create-group --group-name MyCloud9Group

Note

Le recomendamos que repita este procedimiento para crear al menos dos grupos: uno
para usuarios de AWS Cloud9 y otro para administradores de AWS Cloud9. Esta práctica
recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento y
solucionar mejor los problemas de acceso a los recursos de AWS.

Avance hasta llegar al Paso 2.2: Crear un usuario de IAM y agregar el usuario el grupo con la CLI de
AWS (p. 13).

Paso 2.2: Crear un usuario de IAM y agregarlo al grupo con la


consola
1. Con la consola de IAM abierta del procedimiento anterior, en el panel de navegación, elija Users
(Usuarios).
2. Elija Add user.
3. En User name (Nombre de usuario), escriba un nombre para el usuario nuevo.
Note

Puede crear varios usuarios al mismo tiempo. Para ello, elija Add another user (Agregar otro
usuario). El resto de la configuración de este procedimiento se aplican a cada uno de estos
nuevos usuarios.
4. Marque las casillas Programmatic access (Acceso mediante programa) y AWS Management Console
access (Acceso a la consola). Esto permite al nuevo usuario utilizar varias herramientas para
desarrolladores y consolas de servicio de AWS.
5. Deje la opción predeterminada de Autogenerated password (Contraseña autogenerada). Esto crea una
contraseña aleatoria para que el nuevo usuario inicie sesión en la consola. O elija Custom password
(Contraseña personalizada) y escriba una contraseña específica para el nuevo usuario.
6. Deje la opción predeterminada de Require password reset (Pedir restablecimiento de contraseña). De
este modo, se solicitará al usuario nuevo que cambie la contraseña después de iniciar sesión en la
consola por primera vez.
7. Elija Next: Permissions (Siguiente: permisos).
8. Deje la opción predeterminada Add user to group (Añadir usuario al grupo) (o Add users to group
(Añadir usuarios al grupo) para varios usuarios).
9. En la lista de grupos, marque la casilla (no el nombre) situada junto al grupo al que desea añadir el
usuario.
10.Elija Next: Review (Siguiente: revisar).
11.Elija Create user (Crear usuario) (o Create users (Crear usuarios) para varios usuarios).
12.En la última página del asistente, realice una de las siguientes acciones:
• Junto a cada usuario nuevo, elija Send email (Enviar un correo electrónico) y siga las instrucciones
en pantalla para enviar un correo electrónico al usuario nuevo con el nombre de usuario y la URL de
inicio de sesión en la consola. A continuación, comunique a cada usuario nuevo la contraseña de
inicio sesión en la consola, el ID de clave de acceso de AWS y la clave de acceso secreta de AWS
por separado.

12
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo

• Seleccione Download.csv. A continuación, comunique a cada usuario nuevo la URL de inicio sesión
en la consola, la contraseña de inicio de sesión en la consola, el ID de clave de acceso de AWS y la
clave de acceso secreta de AWS que se encuentra en el archivo descargado.
• Junto a cada usuario nuevo, elija Show (Mostrar) para Secret access key (Clave de acceso secreta)
y Password (Contraseña). A continuación, comunique a cada usuario nuevo la URL de inicio sesión
en la consola, la contraseña de inicio de sesión en la consola, el ID de clave de acceso de AWS y la
clave de acceso secreta de AWS.
Note

Si no elige Download .csv (Descargar .csv), esta es la única vez que puede ver la nueva clave
de acceso secreta de AWS y la contraseña de inicio sesión en la consola del usuario. Para
generar una nueva clave de acceso secreta de AWS o una contraseña de inicio de sesión en la
consola para el nuevo usuario, consulte lo siguiente en la Guía del usuario de IAM.
• Creación, modificación y visualización de claves de acceso (consola)
• Creación, cambio o eliminación de la contraseña de un usuario de IAM (consola)
13.Repita este procedimiento para cada usuario de IAM adicional que desee crear y, a continuación, vaya
al Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14).

Paso 2.2: Crear un usuario de IAM y agregarlo al grupo con AWS


CLI
Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

1. Ejecute el comando create-user de IAM para crear el usuario, especificando su nombre (por ejemplo,
MyCloud9User).

aws iam create-user --user-name MyCloud9User

2. Ejecute el comando create-login-profile de IAM para crear una nueva contraseña de inicio
de sesión en la consola para el usuario, y especifique el nombre y la contraseña de inicio de sesión
inicial del usuario (por ejemplo, MyC10ud9Us3r!). Una vez que el usuario inicia sesión, AWS solicita al
usuario que cambie la contraseña de inicio de sesión.

aws iam create-login-profile --user-name MyCloud9User --password MyC10ud9Us3r! --


password-reset-required

Si más adelante tiene la necesidad de generar una contraseña de sustitución de inicio de sesión en la
consola para el usuario, consulte Creación, cambio o eliminación de la contraseña de un usuario de IAM
(API, CLI, PowerShell) en la Guía del usuario de IAM.
3. Ejecute el comando create-access-key de IAM para crear una clave de acceso de AWS nueva y la
correspondiente clave de acceso secreta de AWS para el usuario.

aws iam create-access-key --user-name MyCloud9User

Apunte los valores AccessKeyId y SecretAccessKey que se muestran. Después de ejecutar el


comando create-access-key de IAM, esta es la única vez puede ver la clave de acceso secreta

13
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo

de AWS del usuario. Para generar una nueva clave de acceso secreta de AWS para que el usuario
la use más adelante, consulte Creación, modificación y visualización de claves de acceso (API, CLI,
PowerShell) en la Guía del usuario de IAM.
4. Ejecute el comando add-user-to-group de IAM para añadir el usuario al grupo, especificando los
nombres del usuario y del grupo.

aws iam add-user-to-group --group-name MyCloud9Group --user-name MyCloud9User

5. Comunique al usuario la URL de inicio sesión en la consola, la contraseña de inicio de sesión inicial en
la consola, el ID de clave de acceso de AWS y la clave de acceso secreta de AWS.
6. Repita este procedimiento para cada usuario de IAM adicional que desea crear.

Paso 3: Agregar permisos de acceso para AWS


Cloud9 al grupo
De forma predeterminada, la mayoría de los grupos y usuarios de IAM no tienen acceso a los servicios
de AWS, entre los que se incluye AWS Cloud9. (Una excepción son los grupos de administrador de IAM y
usuarios administradores de IAM, que tienen acceso a todos los servicios de AWS en su cuenta de AWS
de forma predeterminada). En este paso, utilizará IAM para agregar permisos de acceso de AWS Cloud9
directamente a un grupo de IAM al que pertenecen uno o varios usuarios, de modo que se asegure de que
dichos usuarios tienen acceso a AWS Cloud9.
Note

Es posible que su organización ya disponga de un grupo creado con los permisos de acceso
adecuados. Si su organización tiene un administrador de cuenta de AWS, consulte a esa persona
antes de comenzar el procedimiento siguiente.

Puede completar esta tarea utilizando la AWS Management Console (p. 14) o AWS CLI (p. 15).

Agregar permisos de acceso para AWS Cloud9 al grupo con la


consola
1. Inicie sesión en la AWS Management Console, si todavía no lo ha hecho, en https://
console.aws.amazon.com/codecommit.
Note

Aunque puede iniciar sesión en la AWS Management Console con la dirección de correo
electrónico y la contraseña que utilizó al crear su cuenta de AWS (lo denominamos usuario raíz
de la cuenta de AWS), no se trata de una práctica recomendada de seguridad de AWS. En el
futuro, le recomendamos que inicie sesión con las credenciales de un usuario administrador
de IAM en la cuenta de AWS. Un usuario administrador de IAM tiene permisos de acceso a
AWS similares a un usuario raíz de cuenta de AWS y evita algunos de los riesgos de seguridad
asociados. Si no puede iniciar sesión como usuario administrador de IAM, consulte con el
administrador de su cuenta de AWS. Para obtener más información, consulte Creación del
primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.
2. Abra la consola de IAM. Para ello, en la barra de navegación de AWS, elija Services (Servicios). A
continuación, elija IAM.
3. Elija Groups (Grupos).
4. Elija el nombre del grupo.
5. Decida si desea añadir permisos de acceso de usuario de AWS Cloud9 o de administrador de AWS
Cloud9 al grupo. Estos permisos se aplicarán a cada usuario del grupo.

14
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo

Los permisos de acceso de los usuarios de AWS Cloud9 permiten que cada usuario del grupo haga las
siguientes cosas en la cuenta de AWS:
• Crear sus propios entornos de desarrollo de AWS Cloud9.
• Obtener información acerca de sus entornos.
• Cambiar la configuración de sus entornos.

Los permisos de acceso de administrador de AWS Cloud9 permiten que cada usuario del grupo haga
cosas adicionales en la cuenta de AWS, tales como:
• Crear entornos para sí mismos o para otros.
• Obtener información acerca de los entornos para sí mismos o para otros.
• Eliminar entornos propios o de otros.
• Cambiar la configuración de los entornos propios o de otros.
Note
Le recomendamos que agregue un número limitado de usuarios al grupo de administradores
de AWS Cloud9. Esta práctica recomendada de seguridad de AWS puede ayudarle a controlar,
realizar un seguimiento y solucionar mejor los problemas de acceso a los recursos de AWS.
6. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
7. En la lista con los nombres de las políticas, active la casilla situada junto a AWSCloud9User para los
permisos de acceso de los usuarios de AWS Cloud9 o AWSCloud9Administrator para los permisos
de acceso de administrador de AWS Cloud9. (Si no ve ninguno de los nombres de política en la lista,
escriba el nombre de la política en el cuadro Filter [Filtrar] para mostrarlo).
8. Elija Attach Policy (Adjuntar política).
Note
Si tiene más de un grupo al que desea añadir permisos de acceso de AWS Cloud9, repita este
procedimiento para cada uno de esos grupos.

Para ver la lista de los permisos de acceso que estas políticas administradas de AWS dan a un grupo,
consulte Políticas administradas (predefinidas) de AWS (p. 550).

Para obtener más información acerca de los permisos de acceso de AWS que puede agregar a un grupo
además de los permisos de acceso que exige AWS Cloud9, consulte Políticas administradas y políticas
insertadas y Permisos concedidos por una política en la Guía del usuario de IAM.

Vaya al Paso 4: Iniciar sesión en la consola de AWS Cloud9 (p. 17).

Agregar permisos de acceso para AWS Cloud9 al grupo con


AWS CLI
Note
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

1. Si todavía no lo ha hecho, instale y configure la AWS CLI en su equipo. Para ello, consulte lo siguiente
en la Guía del usuario de AWS Command Line Interface:
• Instalación de la interfaz de línea de comandos de AWS

15
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo

• Configuración rápida
Note

Aunque puede configurar AWS CLI mediante las credenciales asociadas con la dirección de
correo electrónico y la contraseña que se proporcionó cuando se creó la cuenta de AWS (lo
denominamos usuario raíz de una cuenta de AWS), esta no es una práctica recomendada de
seguridad de AWS. En cambio, le recomendamos que configure AWS CLI con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Un usuario administrador de
IAM tiene permisos de acceso a AWS similares a un usuario raíz de cuenta de AWS y evita
algunos de los riesgos de seguridad asociados. Si no puede configurar AWS CLI como usuario
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más
información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
2. Decida si desea añadir permisos de acceso de usuario de AWS Cloud9 o de administrador de AWS
Cloud9 al grupo. Estos permisos se aplicarán a cada usuario del grupo.

Los permisos de acceso de los usuarios de AWS Cloud9 permiten que cada usuario del grupo haga las
siguientes cosas en la cuenta de AWS:
• Crear sus propios entornos de desarrollo de AWS Cloud9.
• Obtener información acerca de sus entornos.
• Cambiar la configuración de sus entornos.

Los permisos de acceso de administrador de AWS Cloud9 permiten que cada usuario del grupo haga
cosas adicionales en la cuenta de AWS, como las siguientes:
• Crear entornos para sí mismos o para otros.
• Obtener información acerca de los entornos para sí mismos o para otros.
• Eliminar entornos propios o de otros.
• Cambiar la configuración de los entornos propios o de otros.
Note

Le recomendamos que agregue un número limitado de usuarios al grupo de administradores


de AWS Cloud9. Esta práctica recomendada de seguridad de AWS puede ayudarle a controlar,
realizar un seguimiento y solucionar mejor los problemas de acceso a los recursos de AWS.
3. Ejecute el comando attach-group-policy de IAM especificando el nombre del grupo y el nombre de
recurso de Amazon (ARN) de la política de permisos de acceso de AWS Cloud9 que se agregarán.

Para los permisos de acceso de usuario de AWS Cloud9, especifique el siguiente ARN.

aws iam attach-group-policy --group-name MyCloud9Group --policy-arn


arn:aws:iam::aws:policy/AWSCloud9User

Para los permisos de acceso de administrador de AWS Cloud9, especifique el siguiente ARN.

aws iam attach-group-policy --group-name MyCloud9Group --policy-arn


arn:aws:iam::aws:policy/AWSCloud9Administrator

Note

Si tiene más de un grupo al que desea añadir permisos de acceso de AWS Cloud9, repita este
procedimiento para cada uno de esos grupos.

Para ver la lista de los permisos de acceso que estas políticas administradas de AWS dan a un grupo,
consulte Políticas administradas (predefinidas) de AWS (p. 550).

16
AWS Cloud9 Guía del usuario
Paso 4: Iniciar sesión en la consola de AWS Cloud9

Para obtener más información acerca de los permisos de acceso de AWS que puede agregar a un grupo
además de los permisos de acceso que exige AWS Cloud9, consulte Políticas administradas y políticas
insertadas y Permisos concedidos por una política en la Guía del usuario de IAM.

Paso 4: Iniciar sesión en la consola de AWS Cloud9


Una vez completados los pasos anteriores de este tema, usted y sus usuarios pueden iniciar sesión en la
consola de AWS Cloud9 y comenzar a utilizarla.

1. Si ya ha iniciado sesión en la AWS Management Console como usuario raíz de una cuenta de AWS,
cierre la sesión de la consola.
2. Abra la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.
3. Ingrese el número de cuenta de AWS para el usuario de IAM que ha creado o identificado anteriormente
y, a continuación, elija Next (Siguiente).
Note

Si no ve una opción para ingresar el número de cuenta de AWS, elija Sign in to a different
account (Iniciar sesión con una cuenta diferente). Ingrese el número de cuenta de AWS en la
página siguiente y, a continuación, seleccione Next (Siguiente).
4. Ingrese el nombre y la contraseña del usuario de IAM que ha creado o identificado anteriormente y, a
continuación, elija Sign In (Iniciar sesión).
5. Si se le solicita, siga las instrucciones que aparecen en pantalla para cambiar su contraseña de inicio de
sesión inicial de usuario. Guarde la nueva contraseña de inicio de sesión en un lugar seguro.

Se muestra la consola de AWS Cloud9 y puede empezar a usar AWS Cloud9.

Pasos siguientes

Tarea Consulte este tema

Restrinja el uso de AWS Cloud9 para otros Opciones de configuración adicionales (p. 24)
usuarios en su cuenta de AWS, para controlar los
costos.

Cree un entorno de desarrollo de AWS Cloud9 y, Creación de un entorno (p. 53)


a continuación, utilice el IDE de AWS Cloud9 para
trabajar con el código en su nuevo entorno.

Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.

Configuración de empresa para AWS Cloud9


En este tema se explica cómo utilizar AWS Single Sign-On (SSO) para permitir que una o varias cuentas
de AWS utilicen AWS Cloud9 en una empresa. Si va a configurar AWS Cloud9 para seguir cualquier otro
patrón de uso, consulte Configuración de AWS Cloud9 (p. 7) para obtener las instrucciones correctas.

17
AWS Cloud9 Guía del usuario
Configuración de empresa

Estas instrucciones suponen que tiene (o tendrá) acceso administrativo a la organización en AWS
Organizations. Si aún no tiene acceso administrativo a la organización en AWS Organizations, consulte al
administrador de su cuenta de AWS. Para obtener más información, consulte los recursos siguientes:

• Administración de permisos en su organización de AWS en la Guía del usuario de AWS Organizations


(AWS SSO requiere el uso de AWS Organizations)
• Introducción a la administración de permisos de acceso para los recursos de AWS SSO en la Guía del
usuario de AWS Single Sign-On

Para obtener información básica relacionada con este tema, consulte los siguientes recursos:

• ¿Qué es AWS Organizations? en la Guía del usuario de AWS Organization (AWS SSO requiere el uso
de AWS Organizations)
• ¿Qué es AWS Single Sign-On? en la Guía del usuario de AWS Single Sign-On
• El video de 4 minutos AWS Knowledge Center Videos: How do I get started with AWS Organizations en
el sitio web de YouTube
• El video de 7 minutos Manage user access to multiple AWS accounts using AWS Single Sign-on en el
sitio web de YouTube
• El video de 9 minutos How to set up AWS Single Sign On for your on-premise Active Directory users en
el sitio web de YouTube

El siguiente diagrama conceptual muestra lo que obtendrá.

Para permitir que una o más cuentas de AWS comiencen a utilizar AWS Cloud9 en una empresa,
comience con uno de los siguientes pasos, en función de los recursos de AWS que ya tenga.

Tiene una Tiene una Son todas las Está la Está la Comience por
cuenta de AWS organización cuentas de organización organización este paso
que sirve o en AWS AWS deseadas configurada configurada
puede servir Organizations miembros para utilizar con todos
como la cuenta para esa de esa AWS SSO? los usuarios
maestra para cuenta de organización? o grupos
la organización administración? deseados que
en AWS quieren usar
Organizations? AWS Cloud9?

No — — — — Paso 1: Crear
una cuenta de
administración
para la
organización (p. 19)

Sí No — — — Paso 2:
Crear una
organización

18
AWS Cloud9 Guía del usuario
Paso 1: Crear una cuenta de
administración para la organización

Tiene una Tiene una Son todas las Está la Está la Comience por
cuenta de AWS organización cuentas de organización organización este paso
que sirve o en AWS AWS deseadas configurada configurada
puede servir Organizations miembros para utilizar con todos
como la cuenta para esa de esa AWS SSO? los usuarios
maestra para cuenta de organización? o grupos
la organización administración? deseados que
en AWS quieren usar
Organizations? AWS Cloud9?
para la
cuenta de
administración (p. 20)

Sí Sí No — — Paso 3:
Agregar
cuentas de
miembros a la
organización (p. 20)

Sí Sí Sí No — Paso 4:
Habilitar AWS
SSO en la
organización (p. 21)

Sí Sí Sí Sí No Paso 5.
Configurar
usuarios
y grupos
dentro de la
organización (p. 21)

Sí Sí Sí Sí Sí Paso 6.
Habilitar
usuarios
y grupos
dentro de la
organización
para utilizar
AWS
Cloud9 (p. 22)

Paso 1: Crear una cuenta de administración para la


organización
Note

Es posible que su empresa ya tenga una cuenta de administración configurada. Si su empresa


tiene un administrador de cuentas de AWS, consulte a esa persona antes de comenzar el
procedimiento siguiente. Si ya tiene una cuenta de administración, vaya al Paso 2: Crear una
organización para la cuenta de administración (p. 20).

Para usar AWS Single Sign-On (AWS SSO), debe tener una cuenta de AWS que servirá como cuenta de
administración para la organización en AWS Organizations. Para obtener más información, consulte el
debate sobre las cuentas de administración en Conceptos y terminología de AWS Organizations en la Guía
del usuario de AWS Organizations.

19
AWS Cloud9 Guía del usuario
Paso 2: Crear una organización
para la cuenta de administración

Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.

Para crear una cuenta de administración:

1. Vaya a https://aws.amazon.com/.
2. Elija Sign In to the Console (Iniciar sesión en la consola).
3. Elija Create a new AWS account (Crear una nueva cuenta de AWS).
4. Complete el proceso siguiendo las instrucciones que aparecen en pantalla. Esto incluye dar a AWS
su dirección de correo electrónico y los datos de la tarjeta de crédito. También debe utilizar el teléfono
para ingresar un código que AWS le ofrece.

Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.

Paso 2: Crear una organización para la cuenta de


administración
Note

Es posible que su empresa ya tenga AWS Organizations configurado para usar la cuenta de
administración. Si su empresa tiene un administrador de cuentas de AWS, consulte a esa persona
antes de comenzar el procedimiento siguiente. Si ya tiene AWS Organizations configurado
para utilizar la cuenta de administración, vaya al Paso 3: Agregar cuentas de miembros a la
organización (p. 20).

Para utilizar AWS SSO, debe disponer de una organización en AWS Organizations que utilice la cuenta de
administración. Para obtener más información, consulte el debate sobre organizaciones en Conceptos y
terminología de AWS Organizations en la Guía del usuario de AWS Organizations.

Para crear una organización en AWS Organizations para la cuenta de administración de AWS, siga estas
instrucciones en la Guía del usuario de AWS Organizations:

1. Creación de una organización


2. Habilitar todas las características en la organización

Para ver el video de 4 minutos relacionado con estos procedimientos, consulte AWS Knowledge Center
Videos: How do I get started with AWS Organizations en el sitio web de YouTube.

Paso 3: Agregar cuentas de miembros a la


organización
Note

Es posible que su empresa ya tenga AWS Organizations configurado para usar las cuentas de
los miembros deseados. Si su empresa tiene un administrador de cuentas de AWS, consulte
a esa persona antes de comenzar el procedimiento siguiente. Si ya tiene AWS Organizations
configurado con las cuentas de los miembros deseados, vaya al Paso 4: Habilitar AWS SSO en la
organización (p. 21).

En este paso, va a agregar las cuentas de AWS que servirán de cuentas de miembros para la organización
en AWS Organizations. Para obtener más información, consulte el debate sobre las cuentas de miembros
en Conceptos y terminología de AWS Organizations en la Guía del usuario de AWS Organizations.

20
AWS Cloud9 Guía del usuario
Paso 4: Habilitar AWS SSO en la organización

Note

No es necesario añadir cuentas de miembros a la organización. Puede utilizar AWS SSO


simplemente con la única cuenta de administración de la organización. Posteriormente, puede
agregar cuentas de miembros a la organización, si lo desea. Si no desea agregar cuentas de
miembros ahora, vaya al Paso 4: Habilitar AWS SSO en la organización (p. 21).

Para agregar cuentas de miembros a la organización en AWS Organizations, siga uno o ambos de
los siguientes conjuntos de instrucciones de la Guía del usuario de AWS Organizations. Repita estas
instrucciones tantas veces como sea necesario hasta que tenga todas las cuentas de AWS que desee
como miembros de la organización:

• Creación de una cuenta de AWS en su organización


• Invitación a una cuenta de AWS para que se una a su organización

Paso 4: Habilitar AWS SSO en la organización


Note

Es posible que su empresa ya tenga AWS Organizations configurado para usar AWS SSO. Si su
empresa tiene un administrador de cuentas de AWS, consulte a esa persona antes de comenzar
el procedimiento siguiente. Si ya tiene AWS Organizations configurado para utilizar AWS SSO,
vaya al Paso 5. Configurar usuarios y grupos dentro de la organización (p. 21).

En este paso, habilitará la organización en AWS Organizations para utilizar AWS SSO. Para ello, siga
estos conjuntos de instrucciones de la Guía del usuario de AWS Single Sign-On:

1. AWS SSO Requisitos previos de


2. Habilitar AWS SSO

Paso 5. Configurar usuarios y grupos dentro de la


organización
Note

Es posible que su empresa ya tenga AWS Organizations configurado con grupos y usuarios de
un directorio de AWS SSO o de un directorio de AWS Managed Microsoft AD o AD Connector
que se administra en AWS Directory Service. Si su empresa tiene un administrador de cuentas
de AWS, consulte a esa persona antes de comenzar el procedimiento siguiente. Si ya tiene AWS
Organizations configurado con grupos y usuarios de un directorio de AWS SSO o AWS Directory
Service, vaya al Paso 6 (p. 22). Habilitar usuarios y grupos dentro de la organización para
utilizar AWS Cloud9 (p. 22).

En este paso, creará grupos y usuarios en un directorio de AWS SSO para la organización o se conectará
a un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS Directory
Service para la organización. En un paso posterior, dará a los grupos los permisos de acceso necesarios
para utilizar AWS Cloud9.

• Si ya utiliza un directorio de AWS SSO para la organización, siga estos conjuntos de instrucciones en la
Guía del usuario de AWS Single Sign-On. Repita estos pasos tantas veces como sea necesario hasta
que tenga todos los grupos y usuarios que desea:
1. Agregar grupos. Le recomendamos que cree al menos un grupo para los administradores de AWS
Cloud9 en toda la organización y, a continuación, repita este paso para crear otro grupo para todos
los usuarios de AWS Cloud9 en toda la organización. Si lo prefiere, también puede repetir este paso

21
AWS Cloud9 Guía del usuario
Paso 6. Habilitar usuarios y grupos dentro
de la organización para utilizar AWS Cloud9

para crear un tercer grupo para todos los usuarios en la organización con quienes desee compartir los
entornos de desarrollo de AWS Cloud9 existentes, pero sin permitirles crear entornos por sí mismos.
Para facilitar el uso, le recomendamos que llame a estos grupos AWSCloud9Administrators,
AWSCloud9Users y AWSCloud9EnvironmentMembers, respectivamente. Para obtener más
información, consulte Políticas administradas (predefinidas) de AWS para AWS Cloud9 (p. 550).
2. Agregue usuarios.
3. Agregar usuarios a grupos. Agregue administradores de AWS Cloud9 al grupo
AWSCloud9Administrators, repita este paso para añadir usuarios de AWS Cloud9 al grupo
AWSCloud9Users y, opcionalmente, repita este paso para añadir los usuarios restantes al grupo
AWSCloud9EnvironmentMembers. Agregar usuarios a grupos es una práctica recomendada de
seguridad de AWS que puede ayudarle a controlar, realizar un seguimiento y solucionar mejor los
problemas de acceso a los recursos de AWS.
• Si utiliza un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS
Directory Service para la organización, siga las instrucciones de Conectarse a un directorio de Microsoft
AD de la Guía del usuario de AWS Single Sign-On.

Paso 6. Habilitar usuarios y grupos dentro de la


organización para utilizar AWS Cloud9
De forma predeterminada, la mayoría de los usuarios y grupos en una organización de AWS Organizations
no tiene acceso a los servicios de AWS, entre los que se incluye AWS Cloud9. En este paso, utilizará
AWS SSO para permitir a grupos y usuarios en una organización en AWS Organizations que utilicen AWS
Cloud9 en cualquier combinación de cuentas de participantes.

1. En la consola de AWS SSO, elija AWS accounts (Cuentas de AWS) en el panel de navegación del
servicio.
2. Elija la pestaña Permission sets (Conjuntos de permisos).
3. Elija Create permission set (Crear conjunto de permisos).
4. Seleccione Create a custom permission set (Crear un conjunto de permisos personalizado).
5. Escriba un Name (Nombre) para este conjunto de permisos. Le recomendamos que cree al menos
un permiso para los administradores de AWS Cloud9 en toda la organización y, a continuación,
repita los pasos 3 a 10 de este procedimiento para crear otro conjunto de permisos para todos los
usuarios de AWS Cloud9 en toda la organización. Si lo prefiere, también puede repetir los pasos 3
a 10 de este procedimiento para crear un tercer conjunto de permisos para todos los usuarios en la
organización con quienes desee compartir los entornos de desarrollo de AWS Cloud9 existentes,
sin permitirles crear entornos por sí mismos. Para facilitar el uso, le recomendamos que llame a
estos conjuntos de permisos AWSCloud9AdministratorsPerms, AWSCloud9UsersPerms y
AWSCloud9EnvironmentMembersPerms, respectivamente. Para obtener más información, consulte
Políticas administradas (predefinidas) de AWS para AWS Cloud9 (p. 550).
6. Introduzca una Description (Descripción) opcional para el conjunto de permisos.
7. Elija la Session duration (Duración de la sesión) para el conjunto de permisos o deje la duración de la
sesión predeterminada de 1 hour (1 hora).
8. Seleccione Attach AWS managed policies (Adjuntar políticas administradas de AWS).
9. En la lista de políticas, seleccione una de las siguientes casillas al lado del Policy name (Nombre
de política) correcto. (No elija el nombre de la política propiamente. Si no ve un nombre de política
específico en la lista, ingrese el nombre en el cuadro Search [Buscar] para que se muestre).
• Para el conjunto de permisos AWSCloud9AdministratorsPerms, seleccione
AWSCloud9Administrator.
• Para el conjunto de permisos AWSCloud9UsersPerms, seleccione AWSCloud9User.
• Opcionalmente, para el conjunto de permisos AWSCloud9EnvironmentMembersPerms, seleccione
AWSCloud9EnvironmentMember.

22
AWS Cloud9 Guía del usuario
Paso 7: Comenzar a usar AWS Cloud9

Note

Para obtener más información sobre las políticas que puede agregar además de las políticas
exigidas por AWS Cloud9, consulte Políticas administradas y políticas insertadas y Permisos
concedidos por una política en la Guía del usuario de IAM.
10.Seleccione Create (Crear).
11.Una vez que haya terminado de crear todos los conjuntos de permisos que desee, en la pestaña AWS
organization (Organización de AWS), elija la cuenta de AWS a la que quiere asignar permisos de
acceso a AWS Cloud9. (Si la pestaña AWS organization [Organización de AWS] no se muestra, en el
panel de navegación del servicio, elija AWS accounts [Cuentas de AWS]. Se mostrará la pestaña AWS
organization [Organización de AWS]).
12.Elija Assign users (Asignar usuarios).
13.En la pestaña Groups (Grupos), seleccione la casilla al lado del nombre del grupo al que desea asignar
permisos de acceso de AWS Cloud9, como sigue. (No elija el nombre del grupo).
• Si utiliza un directorio de AWS SSO para la organización, es posible que haya creado un grupo
denominado AWSCloud9Administrators para los administradores de AWS Cloud9.
• Si utiliza un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS
Directory Service para la organización, elija el ID del directorio, ingrese parte o la totalidad del
nombre del grupo y, a continuación, elija Search connected directory (Buscar directorio conectado).
A continuación, seleccione la casilla al lado del nombre del grupo al que desea asignar permisos de
acceso a AWS Cloud9.
Note

Le recomendamos que asigne permisos de acceso a AWS Cloud9 a grupos, en lugar de a


usuarios individuales. Esta práctica recomendada de seguridad de AWS puede ayudarle a
controlar, realizar un seguimiento y solucionar mejor los problemas de acceso a los recursos de
AWS.
14.Elija Next: Permissions sets (Siguiente: conjuntos de permisos).
15.Seleccione la casilla junto al nombre del conjunto de permisos que desea asignar a este grupo, por
ejemplo, AWSCloud9AdministratorsPerms para un grupo de administradores de AWS Cloud9. (No elija
el nombre del conjunto de permisos).
16.Elija Finalizar.
17.Elija Proceed to AWS accounts (Continuar a las cuentas de AWS).
18.Repita los pasos 11 a 17 de este procedimiento para todos los permisos de acceso a AWS Cloud9
adicionales que desea asignar a cuentas de AWS en toda la organización.

Paso 7: Comenzar a usar AWS Cloud9


Una vez completados los pasos anteriores de este tema, usted y sus usuarios pueden iniciar sesión en
AWS SSO y comenzar a utilizar AWS Cloud9.

1. Si ya ha iniciado sesión en una cuenta de AWS o en AWS SSO, cierre la sesión. Para ello, consulte
Cómo cerrar sesión en mi cuenta de AWS en el sitio web de AWS Support o Cómo cerrar sesión del
portal de usuario en la Guía del usuario de AWS Single Sign-On.
2. Para iniciar sesión en AWS SSO, siga las instrucciones que se describen en Cómo aceptar la invitación
para unirse a AWS SSO en la Guía del usuario de AWS Single Sign-On. Esto incluye ir a una URL de
inicio de sesión única e iniciar sesión con un nombre de usuario y contraseña únicos. Su administrador
de cuenta de AWS le enviará un correo electrónico con esta información o se la proporcionará de otra
manera.

23
AWS Cloud9 Guía del usuario
Pasos siguientes

Note

Asegúrese de marcar la URL de inicio de sesión única que se le proporcionó, para que pueda
volver a ella más tarde fácilmente. También asegúrese de guardar el nombre de usuario y la
contraseña únicos para esta URL en un lugar seguro.
Esta combinación de URL, nombre de usuario y contraseña podría cambiar en función de los
diferentes niveles de permisos de acceso a AWS Cloud9 que le ofrece el administrador de su
cuenta de AWS. Por ejemplo, puede utilizar una URL, nombre de usuario y contraseña para
obtener acceso de administrador a AWS Cloud9 para una cuenta y puede utilizar una URL,
nombre de usuario y contraseña diferentes que únicamente permiten acceso de usuario a AWS
Cloud9 para una cuenta diferente.
3. Después de iniciar sesión en AWS SSO, elija el icono AWS Account (Cuenta de AWS).
4. Elija el nombre para mostrar del usuario en la lista desplegable que se abre. Si se muestra más de un
nombre, seleccione el nombre que desea comenzar a utilizar en AWS Cloud9. Si no está seguro de qué
nombre elegir, consulte al administrador de su cuenta de AWS.
5. Elija el enlace Management console (Consola de administración) al lado del nombre para mostrar
del usuario. Si se ve más de un enlace Management console (Consola de administración), elija el
enlace junto al conjunto de permisos correctos. Si no está seguro de qué enlace elegir, consulte al
administrador de su cuenta de AWS.
6. Desde la AWS Management Console, realice una de las siguientes operaciones:
• Elija Cloud9, si ya aparece.
• Amplíe All services (Todos los servicios) y, a continuación, elija Cloud9.
• En el cuadro Find services (Buscar servicios), escriba Cloud9 y pulse Enter.
• En la barra de navegación de AWS, elija Services (Servicios) y, a continuación, elija Cloud9.

Se muestra la consola de AWS Cloud9 y puede empezar a usar AWS Cloud9.

Pasos siguientes
Tarea Consulte este tema

Cree un entorno de desarrollo de AWS Cloud9 y, Creación de un entorno (p. 53)


a continuación, utilice el IDE de AWS Cloud9 para
trabajar con el código en su nuevo entorno.

Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.

Opciones de configuración adicionales para AWS


Cloud9 (Team y Enterprise)
En este tema, se parte de la base de que ya han completado los pasos de configuración de Configuración
de equipo (p. 9) o Configuración de empresa (p. 17).

En Configuración de equipo (p. 9) o Configuración de empresa (p. 17), ha creado grupos y añadido
permisos de acceso de AWS Cloud9 directamente a dichos grupos, para garantizar que los usuarios

24
AWS Cloud9 Guía del usuario
Paso 1: Crear una política administrada por el cliente

de esos grupos puedan acceder a AWS Cloud9. En este tema, agregará más permisos de acceso para
restringir los tipos de entornos que los usuarios de dichos grupos pueden crear. Esto puede ayudar a
controlar los costos relacionados con AWS Cloud9 en las organizaciones y cuentas de AWS.

Para agregar estos permisos de acceso, debe crear su propio conjunto de políticas que definan los
permisos de acceso de AWS que desea aplicar. (Se denominan políticas administradas por el cliente).
Luego, debe adjuntar esas políticas administradas por el cliente a los grupos a los que pertenecen los
usuarios. (En algunos casos, también debe desconectar las políticas administradas de AWS existentes
que ya están adjuntas a dichos grupos). Para realizar esta configuración, siga los procedimientos que se
indican en este tema.
Note

Los siguientes procedimientos cubren las políticas de asociación y desasociación solo para
usuarios de AWS Cloud9. En estos procedimientos, se presupone que ya tiene un grupo de
usuarios de AWS Cloud9 y un grupo de administradores de AWS Cloud9 independientes y que
solo tiene un número limitado de usuarios en el grupo de administradores de AWS Cloud9. Esta
práctica recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento
y solucionar mejor los problemas de acceso a los recursos de AWS.

• Paso 1: Crear una política administrada por el cliente (p. 25)


• Paso 2: Agregar políticas administradas por el cliente a un grupo (p. 26)
• Ejemplos de políticas administradas por el cliente para equipos que utilizan AWS Cloud9 (p. 27)

Paso 1: Crear una política administrada por el cliente


Puede crear una política administrada por el cliente con la AWS Management Console (p. 25) o la
interfaz de línea de comandos de AWS (AWS CLI) (p. 26).
Note

Este paso cubre la creación de una política administrada por el cliente solo para grupos de
IAM. Para crear un conjunto de permisos personalizados para grupos de AWS Single Sign-On
(SSO), omita este paso y siga las instrucciones de Crear un conjunto de permisos de la Guía
del usuario de AWS Single Sign-On en su lugar. En este tema, siga las instrucciones para crear
un conjunto de permisos personalizados. Para ver las políticas de permisos personalizadas
relacionadas, consulte Ejemplos de políticas administradas por el cliente para equipos que usan
AWS Cloud9 (p. 27) más adelante en este tema.

Crear una política administrada por el cliente con la consola


1. Si todavía no ha iniciado sesión en la AWS Management Console, hágalo ahora.

Se recomienda iniciar sesión con las credenciales de un usuario administrador de IAM en su cuenta de
AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. En el panel de navegación del servicio, elija Policies (Políticas).
4. Elija Create Policy (Crear política).
5. En la pestaña JSON, pegue uno de nuestros ejemplos de políticas administradas por el
cliente (p. 27) sugeridos.
Note

También puede crear sus propias políticas administradas por el cliente. Para obtener más
información, consulte Referencia de la política de JSON de IAM en la Guía del usuario de IAM y
la documentación de los servicios de AWS.

25
AWS Cloud9 Guía del usuario
Paso 2: Agregar políticas
administradas por el cliente a un grupo

6. Elija Review policy (Revisar política).


7. En la página Review policy (Revisar política), escriba un nombre y una descripción opcional de la
política y, a continuación, elija Create policy (Crear política).

Repita este paso para cada política administrada por el cliente adicional que desee crear y, a continuación,
vaya a la sección Agregar políticas administradas por el cliente a un grupo con la consola (p. 26).

Crear una política administrada por el cliente con AWS CLI


1. En el equipo donde ejecuta la AWS CLI, cree un archivo para describir la política (por ejemplo,
policy.json).

Si crea el archivo con otro nombre de archivo, sustitúyalo en todo este procedimiento.
2. Pegue uno de nuestros ejemplos de políticas administradas por el cliente (p. 27) sugeridos en el
archivo policy.json.
Note

También puede crear sus propias políticas administradas por el cliente. Para obtener más
información, consulte Referencia de la política de JSON de IAM en la Guía del usuario de IAM y
la documentación de los servicios de AWS.
3. Desde el terminal o el símbolo del sistema, cambie al directorio que contiene el archivo policy.json.
4. Ejecute el comando create-policy de IAM, especificando un nombre de la política y el archivo
policy.json.

aws iam create-policy --policy-document file://policy.json --policy-name MyPolicy

En el comando anterior, reemplace MyPolicy por el nombre de la política.

Vaya directamente a Agregar políticas administradas por el cliente a un grupo con AWS CLI (p. 27).

Paso 2: Agregar políticas administradas por el cliente


a un grupo
Puede agregar políticas administradas por el cliente a un grupo con la AWS Management
Console (p. 26) o la interfaz de línea de comandos de AWS (AWS CLI) (p. 27).
Note

Este paso cubre la adición de políticas administradas por el cliente solo para grupos de IAM. Para
agregar conjuntos de permisos personalizados a grupos en AWS Single Sign-On (SSO), omita
este paso y siga las instrucciones de Asignar acceso a usuarios en la Guía del usuario de AWS
Single Sign-On en su lugar.

Agregar políticas administradas por el cliente a un grupo con la


consola
1. Con la consola de IAM abierta del procedimiento anterior, en el panel de navegación del servicio, elija
Groups (Grupos).
2. Elija el nombre del grupo.
3. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).

26
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9

4. En la lista de nombres de las políticas, active la casilla junto a cada política administrada por el cliente
que desea adjuntar al grupo. (Si no ve un nombre de política específico en la lista, escríbalo en el
cuadro Filter (Filtrar) para mostrarlo).
5. Elija Attach Policy (Adjuntar política).

Agregar políticas administradas por el cliente a un grupo


mediante AWS CLI
Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

Ejecute el comando attach-group-policy de IAM, especificando el nombre del grupo y, a


continuación, el nombre de recurso de Amazon (ARN) de la política.

aws iam attach-group-policy --group-name MyGroup --policy-arn


arn:aws:iam::123456789012:policy/MyPolicy

En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace 123456789012 por el
ID de cuenta de AWS y reemplace MyPolicy por el nombre de la política administrada por el cliente.

Ejemplos de políticas administradas por el cliente para


equipos que utilizan AWS Cloud9
A continuación, se muestran algunos ejemplos de políticas que puede utilizar para restringir los tipos de
entornos que los usuarios de un grupo pueden crear en una cuenta de AWS.

• Impedir que los usuarios de un grupo creen entornos (p. 27)


• Impedir que los usuarios de un grupo creen entornos de EC2 (p. 28)
• Permitir que los usuarios de un grupo creen entornos de EC2 solo con tipos de instancias de Amazon
EC2 específicas (p. 28)
• Permitir que los usuarios de un grupo creen un único entorno de EC2 por región de AWS (p. 29)

Impedir que los usuarios de un grupo creen entornos


Cuando la siguiente política administrada por el cliente se adjunta a un grupo de usuarios de AWS Cloud9,
se impide que esos usuarios creen entornos en una cuenta de AWS. Esto resulta útil si desea que un
usuario administrador de IAM de su cuenta de AWS administre la creación de entornos en lugar de los
usuarios de un grupo de usuarios de AWS Cloud9.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"cloud9:CreateEnvironmentEC2",

27
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9

"cloud9:CreateEnvironmentSSH"
],
"Resource": "*"
}
]
}

Tenga en cuenta que la política administrada por el cliente anterior anula "Effect":
"Allow" explícitamente para "Action": "cloud9:CreateEnvironmentEC2" y
"cloud9:CreateEnvironmentSSH" en "Resource": "*" en la política administrada
AWSCloud9User que ya está adjunta al grupo de usuarios de AWS Cloud9.

Impedir que los usuarios de un grupo creen entornos de EC2


Cuando la siguiente política administrada por el cliente se adjunta a un grupo de usuarios de AWS Cloud9,
se impide que esos usuarios creen entornos de EC2 en una cuenta de AWS. Esto resulta útil si desea
que un usuario administrador de IAM de su cuenta de AWS administre la creación de entornos de EC2 en
lugar de los usuarios de un grupo de usuarios de AWS Cloud9. Aquí se da también por hecho que no ha
adjuntado una política que impida que los usuarios de ese grupo creen entornos de SSH. De lo contrario,
los usuarios no podrán crear entornos.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}

Tenga en cuenta que la política administrada por el cliente anterior anula "Effect": "Allow" para
"Action": "cloud9:CreateEnvironmentEC2" en "Resource": "*" en la política administrada
AWSCloud9User que ya está adjunta al grupo de usuarios de AWS Cloud9.

Permitir que los usuarios de un grupo creen entornos de EC2


solo con tipos de instancias de Amazon EC2 específicas
Cuando la siguiente política administrada por el cliente se adjunta a un grupo de usuarios de AWS Cloud9,
permite a esos usuarios crear entornos de EC2 que solo utilizan tipos de instancias que comienzan por
t2 en una cuenta de AWS. En esta política, se da por hecho que tampoco ha adjuntado una política que
impida que los usuarios de ese grupo creen entornos de EC2. De lo contrario, esos usuarios no podrán
crear entornos de EC2.

Puede sustituir "t2.*" en la siguiente política por una clase de instancia distinta (por ejemplo, "m4.*").
También puede restringirla a varias clases o tipos de instancias (por ejemplo, [ "t2.*", "m4.*" ] o
[ "t2.micro", "m4.large" ]).

Para un grupo de usuarios de AWS Cloud9, desconecte la política administrada AWSCloud9User del
grupo y luego agregue en su lugar la siguiente política administrada por el cliente. (Si no desconecta la
política administrada AWSCloud9User, la siguiente política administrada por el cliente no se aplicará).

{
"Version": "2012-10-17",
"Statement": [
{

28
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9

"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentSSH",
"cloud9:ValidateEnvironmentName",
"cloud9:GetUserPublicKey",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:InstanceType": "t2.*"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}
]
}

Tenga en cuenta que la anterior política administrada por el cliente también permite a esos
usuarios crear entornos de SSH. Para evitar que esos usuarios creen entornos de SSH, elimine
"cloud9:CreateEnvironmentSSH", de la política administrada por el cliente anterior.

Permitir que los usuarios de un grupo creen un único entorno de


EC2 por región de AWS
Cuando la siguiente política administrada por el cliente se adjunta a un grupo de usuarios de AWS Cloud9,
permite que cada uno de esos usuarios cree un máximo de un entorno de EC2 por región de AWS en la

29
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9

que AWS Cloud9 está disponible. Para ello, se restringe el nombre del entorno a un nombre específico de
esa región de AWS (en este ejemplo, my-demo-environment).
Note

AWS Cloud9 no permite restringir la creación de entornos a determinadas regiones de AWS.


Tampoco permite restringir el número total de entornos que se pueden crear (distinto de los
Service Limits (p. 605) publicados).

Para un grupo de usuarios de AWS Cloud9, desconecte la política administrada AWSCloud9User del
grupo y luego agregue en su lugar la siguiente política administrada por el cliente. (Si no desconecta la
política administrada AWSCloud9User, la siguiente política administrada por el cliente no se aplicará).

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentSSH",
"cloud9:ValidateEnvironmentName",
"cloud9:GetUserPublicKey",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentEC2"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:EnvironmentName": "my-demo-environment"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",

30
AWS Cloud9 Guía del usuario
Pasos siguientes

"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}
]
}

Tenga en cuenta que la anterior política administrada por el cliente permite a esos usuarios
crear entornos de SSH. Para evitar que esos usuarios creen entornos de SSH, elimine
"cloud9:CreateEnvironmentSSH", de la política administrada por el cliente anterior.

Para ver otros ejemplos, consulte Ejemplos de políticas administradas por el cliente (p. 558).

Pasos siguientes
Tarea Consulte este tema

Cree un entorno de desarrollo de AWS Cloud9 y, Creación de un entorno (p. 53)


a continuación, utilice el IDE de AWS Cloud9 para
trabajar con el código en su nuevo entorno.

Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.

31
AWS Cloud9 Guía del usuario
Primer vistazo a AWS Cloud9 (consola)

Introducción: tutoriales básicos para


AWS Cloud9
¿Es la primera vez que utiliza AWS Cloud9? Si aún no lo ha hecho, eche un vistazo a la información
general sobre AWS Cloud9 en ¿Qué es AWS Cloud9? (p. 1)

En los siguientes tutoriales, creará un entorno en AWS Cloud9 y, a continuación, utilizará dicho entorno
para crear una aplicación sencilla. Ambos tutoriales tienen la misma entrada y resultados, pero uno usa la
consola de AWS Cloud9 y el otro usa la AWS Command Line Interface (AWS CLI). Puede optar por hacer
uno de ellos o ambos.

Cuando haya terminado con estos tutoriales, puede obtener más información sobre el IDE de AWS Cloud9
en Recorrido del IDE de AWS Cloud9 (p. 116).

Temas
• Tutorial: Primer vistazo a AWS Cloud9 (consola) (p. 32)
• Tutorial: Primer vistazo a AWS Cloud9 (CLI) (p. 43)

Tutorial: Primer vistazo a AWS Cloud9 (consola)


En este tutorial se proporciona un primer vistazo a AWS Cloud9. Utiliza la consola de AWS Cloud9, que le
permite realizar los pasos del tutorial en una interfaz gráfica de usuario en lugar de en una herramienta de
línea de comandos (p. 43).

En este tutorial, configurará un entorno de desarrollo de AWS Cloud9 y, a continuación, utilizará el IDE de
AWS Cloud9 para codificar, ejecutar y depurar su primera aplicación.

Para este tutorial se necesita aproximadamente 1 hora.


Warning

El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre ellos, se incluyen
posibles cargos por Amazon EC2. Para obtener más información, consulte Precios de Amazon
EC2.

Requisitos previos
Para completar este tutorial correctamente, primero debe completar los pasos de Configuración de AWS
Cloud9 (p. 7).

Pasos
• Paso 1: Crear un entorno (p. 33)
• Paso 2: Recorrido básico del IDE (p. 36)

32
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno

• Paso 3: Limpieza (p. 40)


• Información relacionada (p. 42)

Paso 1: Crear un entorno


(Primer paso del Tutorial: Primer vistazo a AWS Cloud9 (consola) (p. 32))

En este paso va a utilizar la consola de AWS Cloud9 para crear un entorno de desarrollo de AWS Cloud9 y
después abrirlo.
Note

Si ya ha creado el entorno que desea utilizar en este tutorial, abra el entorno y vaya a Paso 2:
Recorrido básico del IDE (p. 36).

En AWS Cloud9, un entorno de desarrollo (o simplemente un entorno) es el lugar en el que se almacenan


los archivos del proyecto de desarrollo y donde se ejecutan las herramientas para desarrollar aplicaciones.
En este tutorial, creará un tipo especial de entorno denominado entorno de EC2 y, a continuación,
trabajará con los archivos y las herramientas que contiene.

Crear un entorno de EC2 con la consola


1. Inicie sesión en la consola de AWS Cloud9:

• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya
a https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (AWS SSO), solicite instrucciones de inicio de sesión
al administrador de la cuenta de AWS.
• Si es un estudiante en un aula, pida las instrucciones de inicio de sesión al instructor.
2. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.

3. Elija el botón Create environment (Crear entorno) grande en una de las ubicaciones mostradas.

Si aún no tiene ningún entorno de AWS Cloud9, el botón se muestra en una página de bienvenida.

33
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno

Si ya tiene entornos de AWS Cloud9, el botón se muestra como se indica a continuación.

4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), ingrese un nombre
para su entorno. Para este tutorial, escriba my-demo-environment.
5. En Description (Descripción), ingrese una nota acerca de su entorno. Para este tutorial, utilice This
environment is for the AWS Cloud9 tutorial.
6. Elija Next Step (Paso siguiente).
7. En la página Configure settings (Configurar ajustes), para Environment type (Tipo de entorno), elija
una de las siguientes opciones para crear un entorno respaldado por EC2:

• Create a new EC2 instance for environment (direct access) (Crear una nueva instancia de EC2 para
el entorno [acceso directo]): lanza una instancia de Amazon EC2 a la que AWS Cloud9 se puede
conectar directamente a través de SSH.

• Create a new no-ingress EC2 instance for environment (access via Systems Manager) (Crear una
nueva instancia de EC2 sin entrada para el entorno [acceso a través de Systems Manager]): lanza
una instancia de Amazon EC2 que no requiere ningún puerto entrante abierto. AWS Cloud9 se
conecta a la instancia a través de AWS Systems Manager.
• Si selecciona la opción de acceso mediante Systems Manager, se crean automáticamente una
función de servicio y un perfil de instancias 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 Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68) .

Warning

La creación de una instancia de EC2 para su entorno podría incurrir en cargos en su cuenta
de AWS para Amazon EC2. El uso de Systems Manager no supone ningún costo adicional
para administrar las conexiones a la instancia de EC2.
8. En Instance type (Tipo de instancia), deje la opción predeterminada. Esta opción tiene RAM y vCPU
relativamente bajos, lo que es suficiente para este tutorial.

34
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno

Warning

Si elige tipos de instancias con más RAM y vCPUs, podría incurrir en cargos adicionales en
su cuenta de AWS para Amazon EC2.
9. En Platform (Plataforma), elija el tipo de instancia de Amazon EC2 que quiera: Amazon Linux 2,
Amazon Linux o Ubuntu. AWS Cloud9 crea la instancia y, a continuación, conecta a esta el entorno.
Important

Le recomendamos que elija la opción Amazon Linux 2 para su entorno de EC2. Además de
proporcionar un entorno en tiempo de ejecución seguro, estable y de alto rendimiento, la AMI
de Amazon Linux 2 incluye asistencia a largo plazo hasta 2023.
La asistencia estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31
de diciembre de 2020. Ahora esta versión solo recibe asistencia de mantenimiento.
A partir del 1 de julio de 2022, la opción Amazon Linux dejará de estar disponible para su
selección en Platform (Plataforma).
Para obtener más información, consulte la página de Amazon Linux 2.
10. Elija un valor para Cost-saving setting (Configuración de ahorro). Una vez que todas las instancias del
navegador web conectadas al IDE del entorno estén cerradas, AWS Cloud9 espera el tiempo indicado
y, a continuación, cierra la instancia de Amazon EC2 del entorno.
Warning

Si elige un periodo de tiempo mayor, podría generar cargos adicionales en su cuenta de


AWS.
11. Expanda Network settings (advanced) (Ajustes de red (Avanzado)).

AWS Cloud9 utiliza Amazon Virtual Private Cloud (Amazon VPC) para comunicarse con la instancia
de Amazon EC2 recién creada. En este tutorial, le recomendamos que no cambie la configuración
predeterminada preseleccionada. Con la configuración predeterminada, AWS Cloud9 intenta utilizar
automáticamente la VPC predeterminada con su única subred en la misma cuenta de AWS y región
de AWS que el nuevo entorno.

Puede encontrar más información sobre las opciones de Amazon VPC en Crear un entorno de
EC2 con la consola (p. 57) y en Configuración de VPC para entornos de desarrollo de AWS
Cloud9 (p. 500).
12. Añada hasta 50 etiquetas suministrando los valores de Key (Clave) y Value (Valor) para cada etiqueta.
Las etiquetas se adjuntarán al entorno de AWS Cloud9 como etiquetas de recursos y se propagarán
a los siguientes recursos subyacentes: la pila de AWS CloudFormation, la instancia de Amazon
EC2 y los grupos de seguridad de Amazon EC2. Puede encontrar información sobre las etiquetas
en Controlar el acceso con etiquetas de recursos de AWS en la Guía del usuario de IAM. Consulte
también la información avanzada (p. 540) sobre las etiquetas.
Warning

Si actualiza estas etiquetas después de crearlas, los cambios no se propagan


automáticamente a los recursos subyacentes. Para obtener más información, consulte
Propagación de actualizaciones de etiquetas a los recursos subyacentes (p. 541) en la
información avanzada acerca de las etiquetas (p. 540).
13. Elija Next Step (Paso siguiente).
14. En la página Review (Revisión), elija Create environment (Crear entorno). Espere mientras AWS
Cloud9 crea el entorno. Esto puede tardar varios minutos.
Note

Si se produce un error en la creación de la cuenta, se muestra un banner en la parte superior


de la página de la consola. Además, la tarjeta del entorno, si existe, indica que se ha
producido un error en la creación del entorno.

35
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.

Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para obtener información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en
Solución de problemas.

Paso siguiente
Paso 2: Recorrido básico del IDE (p. 36)

Paso 2: Recorrido básico del IDE


(Paso anterior: Paso 1: Crear un entorno (p. 33))

En esta parte del tutorial se presentan algunas de las formas en las que puede utilizar el IDE de AWS
Cloud9 para crear y probar aplicaciones.

• Puede utilizar una ventana del editor para crear y editar código.
• Puede utilizar una ventana de terminal o una ventana Run Configuration (Configuración de ejecución)
para ejecutar el código sin depurarlo.
• Puede utilizar la ventana Debugger (Depurador) para depurar el código.

Realice estas tres tareas con el motor de Node.js y JavaScript. Consulte Tutoriales y ejemplos (p. 390)
para ver otros lenguajes de programación.

Temas
• Preparar el entorno (p. 36)
• Escribir código (p. 37)
• Ejecutar el código (p. 37)
• Depurar el código (p. 38)
• Paso siguiente (p. 40)

Preparar el entorno
La mayoría de las herramientas que necesita para ejecutar y depurar código JavaScript ya están
instaladas. Sin embargo, necesita un paquete adicional de Node.js para este tutorial. Instálelo como se
indica a continuación.

1. En la barra de menús (en la parte superior del IDE de AWS Cloud9), elija Window (Ventana), New
Terminal (Nuevo terminal), o bien utilice una ventana de terminal existente.
2. En la ventana de terminal (una de las pestañas de la parte inferior del IDE), ingrese lo siguiente.

npm install readline-sync

Verifique que el resultado sea similar al siguiente (si también se muestran mensajes npm WARN,
puede ignorarlos).

+ [email protected]
added 1 package from 1 contributor and audited 5 packages in 0.565s
found 0 vulnerabilities

36
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

Escribir código
Comience por escribir código.

1. En la barra de menús, elija File (Archivo), New File (Archivo nuevo).


2. Añada el siguiente código JavaScript al nuevo archivo.

var readline = require('readline-sync');


var i = 10;
var input;

console.log("Hello Cloud9!");
console.log("i is " + i);

do {
input = readline.question("Enter a number (or 'q' to quit): ");
if (input === 'q') {
console.log('OK, exiting.')
}
else{
i += Number(input);
console.log("i is now " + i);
}
} while (input != 'q');

console.log("Goodbye!");

3. Elija File (Archivo), Save (Guardar) y, a continuación, guarde el archivo como hello-cloud9.js.

Ejecutar el código
A continuación, puede ejecutar su código.

En función del lenguaje de programación que utilice, puede haber varias formas de ejecutar el código. En
este tutorial se utiliza JavaScript, que se puede ejecutar mediante una ventana de terminal o una ventana
Run Configuration (Configuración de ejecución).

Para ejecutar el código utilizando una ventana de configuración de ejecución

1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la nueva ventana Run Configuration (Configuración de ejecución), una de las pestañas de la parte
inferior del IDE, ingrese hello-cloud9.js en el campo Command (Comando) y, a continuación,
elija Run (Ejecutar).
3. Asegúrese de que se haya activado Run Configuration (Configuración de ejecución) y, a continuación,
ingrese un número en el símbolo del sistema para interactuar con la aplicación.
4. Vea la salida del código en la ventana Run Configuration (Configuración de ejecución). Debería ser
similar a lo siguiente.

37
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

Para ejecutar el código utilizando una ventana de terminal

1. Vaya a la ventana de terminal que ha utilizado anteriormente (o abra una nueva).


2. En la ventana de terminal, ingrese ls en el símbolo del terminal y compruebe que el archivo de código
está en la lista de archivos.
3. Ingrese node hello-cloud9.js en el símbolo del sistema para iniciar la aplicación.
4. Ingrese un número en el símbolo del sistema para interactuar con la aplicación.
5. Vea la salida del código en la ventana de terminal. Debería ser similar a lo siguiente.

Depurar el código
Por último, puede depurar el código utilizando la ventana Debugger (Depurador).

38
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

1. Elija el margen junto a la línea 10 para añadir un punto de interrupción al código en dicha línea (if
(input === 'q')). Aparece un círculo rojo junto a ese número de línea, tal y como se indica a
continuación.

2. Abra la ventana Debugger (Depurador) mediante el botón Debugger (Depurador) de la parte derecha
del IDE. También puede elegir Window (Ventana), Debugger (Depurador) en la barra de menús.

A continuación, ponga una inspección en la variable input eligiendo Type an expression here
(Escriba una expresión aquí) en la sección Watch Expressions (Expresiones de inspección) de la
ventana Debugger (Depurador).

39
AWS Cloud9 Guía del usuario
Paso 3: Limpieza

3. Vaya a la ventana Run Configuration (Configuración de ejecución) que ha utilizado anteriormente para
ejecutar el código. Elija Run (Ejecutar).

También puede abrir una nueva ventana de Run Configuration ( Configuración de Ejecución) y
comenzar a ejecutar el código eligiendo Run (Ejecutar), Run With (Ejecutar con), Node.js (Nodo.js), en
la barra de menú.
4. Ingrese un número en el símbolo del sistema de Run Configuration (Configuración de ejecución) y
compruebe que el código se detiene en la línea 10. La ventana Debugger (Depurador) muestra el
valor que ha especificado en Watch Expressions (Expresiones de inspección).

5. En la ventana Debugger (Depurador), elija Resume (Reanudar), que es el icono de flecha azul
resaltado en la captura de pantalla anterior.
6. Seleccione Stop (Detener) en la ventana Run Configuration (Configuración de ejecución) para detener
el depurador.

Paso siguiente
Paso 3: Limpieza (p. 40)

Paso 3: Limpieza
(Paso anterior: Paso 2: Recorrido básico del IDE (p. 36))

40
AWS Cloud9 Guía del usuario
Paso 3: Limpieza

Para evitar que se apliquen cargos continuos en su cuenta de AWS en relación con este tutorial, debería
eliminar el entorno.
Warning

La eliminación de un entorno no se puede deshacer.

Elimine el entorno mediante la consola de AWS Cloud9


1. Para abrir el panel, en la barra de menús del IDE, elija AWS Cloud9, Go To Your Dashboard (Ir al
panel).
2. Realice alguna de las siguientes acciones:

• Elija el título que contiene la tarjeta my-demo-environment y, a continuación, seleccione Delete


(Eliminar).

• Elija la tarjeta my-demo-environment y, a continuación, seleccione Delete (Eliminar).

3. En el cuadro de diálogo Delete (Eliminar), escriba Delete y, a continuación, elija Delete (Eliminar). La
operación de eliminación tarda unos minutos.

Note

Si ha seguido este tutorial exactamente, el entorno era un entorno de EC2 yAWS Cloud9 también
termina la instancia de Amazon EC2 conectada a ese entorno.

41
AWS Cloud9 Guía del usuario
Información relacionada

Sin embargo, si utilizó un entorno de SSH en lugar de seguir el tutorial y ese entorno estaba
conectado a una instancia de Amazon EC2, AWS Cloud9 no termina dicha instancia. Si no
termina dicha instancia más tarde, en su cuenta de AWS le pueden seguir cobrando cargos
continuos por Amazon EC2 en relación con esa instancia.

Paso siguiente
Información relacionada (p. 42)

Información relacionada
A continuación se ofrece información adicional sobre Tutorial: Primer vistazo a AWS Cloud9
(consola) (p. 32).

• En el momento de crear un entorno de EC2, el entorno no contiene ningún código de muestra de forma
predeterminada. Para crear un entorno con código de muestra, consulte uno de los siguientes temas:
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Durante la creación del entorno de desarrollo de AWS Cloud9, dirigió AWS Cloud9 para crear una
instancia de Amazon EC2. AWS Cloud9 creó la instancia y, a continuación, conectó a esta el entorno.
Como alternativa, puede utilizar una instancia de informática en la nube existente o su propio servidor
(que denominamos entorno de SSH). Para obtener más información, consulte Creación de un entorno en
AWS Cloud9 (p. 53) .

Siguientes pasos opcionales

Examine todos o alguno de los siguientes temas para continuar familiarizándose con AWS Cloud9.

Tarea Consulte este tema

Obtenga más información acerca de lo que puede Trabajo con entornos en AWS Cloud9 (p. 53)
hacer con un entorno.

Pruebe otros lenguajes informáticos. Tutoriales y ejemplos para AWS Cloud9 (p. 390)

Más información sobre el IDE de AWS Cloud9. Recorrido del IDE de AWS Cloud9 (p. 116) en
Uso de la IDE (p. 115)

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos en AWS
con usted, en tiempo real y con asistencia de Cloud9 (p. 92)
conversación de texto.

Cree entornos de SSH (entornos que usan Creación de un entorno en AWS Cloud9 (p. 53)
instancias o servidores de informática en la y Requisitos de anfitrión del entorno SSH (p. 515)
nube que ha creado, en lugar de una instancia
de Amazon EC2 que AWS Cloud9 ha creado
automáticamente).

Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.

42
AWS Cloud9 Guía del usuario
Primer vistazo a AWS Cloud9 (CLI)

Tarea Consulte este tema

Use AWS Cloud9 con Amazon Lightsail. Trabajo con instancias de Amazon Lightsail en
el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)

Use AWS Cloud9 con AWS CodeStar. Trabajo con proyectos de AWS CodeStar en el
entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)

Use AWS Cloud9 con AWS CodePipeline. Trabajo con AWS CodePipeline en el entorno
de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)

Use AWS Cloud9 con AWS CLI, aws-shell, AWS Tutoriales y ejemplos (p. 390)
CodeCommit, el kit de desarrollo en la nube de
AWS (AWS CDK), GitHub o Amazon DynamoDB,
así como Node.js, Python u otros lenguajes de
programación.

Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker

Para obtener ayuda de la comunidad sobre AWS Cloud9, consulte el foro de debate de AWS Cloud9.
(Cuando entre en este foro, es posible que AWS requiera que inicie sesión).

Para obtener ayuda sobre AWS Cloud9 directamente de AWS, consulte las distintas opciones de soporte
que se ofrecen en la página de AWS Support.

Tutorial: Primer vistazo a AWS Cloud9 (CLI)


En este tutorial se proporciona un primer vistazo a AWS Cloud9. Utiliza AWS Command Line Interface
(AWS CLI), que le permite configurar y eliminar los recursos necesarios utilizando una línea de comandos
en lugar de una interfaz gráfica de usuario (p. 32).

En este tutorial, configurará un entorno de desarrollo de AWS Cloud9 y, a continuación, utilizará el IDE de
AWS Cloud9 para codificar, ejecutar y depurar su primera aplicación.

Para este tutorial se necesita aproximadamente 1 hora.


Warning
El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre ellos, se incluyen
posibles cargos por Amazon EC2. Para obtener más información, consulte Precios de Amazon
EC2.

Requisitos previos
Para completar este tutorial correctamente, primero debe completar los pasos de Configuración de AWS
Cloud9 (p. 7).

Pasos
• Paso 1: Crear un entorno (p. 44)
• Paso 2: Recorrido básico del IDE (p. 45)
• Paso 3: Limpieza (p. 50)

43
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno

• Información relacionada (p. 51)

Paso 1: Crear un entorno


(Primer paso del Tutorial: Primer vistazo a AWS Cloud9 (CLI) (p. 43))

En este paso, utilizará AWS CLI para crear un entorno de desarrollo de AWS Cloud9.

En AWS Cloud9, un entorno de desarrollo (o simplemente un entorno) es el lugar en el que se almacenan


los archivos del proyecto de desarrollo y donde se ejecutan las herramientas para desarrollar aplicaciones.
En este tutorial, creará un tipo especial de entorno denominado entorno de EC2 y, a continuación,
trabajará con los archivos y las herramientas que contiene.

Crear un entorno de EC2 con AWS CLI


1. Si aún no lo ha hecho, instale y configure la AWS CLI. Para ello, consulte lo siguiente en la Guía del
usuario de AWS Command Line Interface:

• Instalación de la interfaz de línea de comandos de AWS


• Configuración rápida

Puede configurar AWS CLI utilizando las credenciales deseadas siguientes:

• El usuario de IAM que creó en Configuración de equipos para AWS Cloud9 (p. 9).
• Un administrador de IAM de su cuenta de AWS, si va a trabajar periódicamente con recursos
de AWS Cloud9 para varios usuarios en la cuenta. Si no puede configurar AWS CLI como
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más
información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
• Un usuario raíz de la cuenta de AWS, pero solo si siempre será el único usuario que utilice su
propia cuenta de AWS y si no necesita compartir sus entornos con nadie más. No recomendamos
esta opción, ya que no es una práctica recomendada de seguridad de AWS. Para obtener más
información, consulte Creación, desactivación y eliminación de claves de acceso para su cuenta de
AWS en la Referencia general de Amazon Web Services.
• Para otras opciones, consulte al administrador de la cuenta de AWS o al instructor del aula.
2. En el siguiente comando de AWS Cloud9, proporcione un valor para --region y --subnet-id. A
continuación, ejecute el comando y anote el valor de "environmentId" para la limpieza posterior.

aws cloud9 create-environment-ec2 --name my-demo-environment --description "This


environment is for the AWS Cloud9 tutorial." --instance-type t2.micro --image-id
resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64 --region MY-REGION --
connection-type CONNECT_SSM --subnet-id subnet-12a3456b

En el comando anterior:

• --name representa el nombre del entorno. En este tutorial, usamos el nombre my-demo-
environment.
• --description representa una descripción opcional del entorno.
• --instance-type representa el tipo de instancias de Amazon EC2 que AWS Cloud9 lanzará
y conectará al nuevo entorno. Este ejemplo especifica t2.micro, que tiene RAM y vCPUs
relativamente bajos, pero que son suficientes para este tutorial. Si especifica tipos de instancias
con más RAM y vCPUs, podría incurrir en cargos adicionales en su cuenta de AWS para Amazon
EC2. Para obtener una lista de tipos de instancias disponibles, consulte el asistente de creación de
entornos en la consola de AWS Cloud9.

44
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

• --image-id especifica el identificador de Amazon Machine Image (AMI) que se utiliza para crear
la instancia EC2. A fin de elegir una AMI para la instancia, debe especificar un alias de AMI válido
o una ruta de AWS Systems Manager (SSM) válida. En el ejemplo anterior, se especifica una ruta
SSM para una AMI de Amazon Linux 2.

Para obtener más información, consulte create-environment-ec2 en la Referencia de comandos de


AWS CLI.
• --region representa el ID de la región de AWS en la que AWS Cloud9 creará el entorno. Para
obtener una lista de las regiones de AWS disponibles, consulte AWS Cloud9 en la Referencia
general de Amazon Web Services.
• --connection-type CONNECT_SSM especifica que AWS Cloud9 se conecta a su instancia de
Amazon EC2 a través de Systems Manager. Esta opción garantiza que no se permita el tráfico
entrante a la instancia. Para obtener más información, consulte Acceder a instancias EC2 sin
entrada con AWS Systems Manager (p. 68).
Note

Al utilizar esta opción, debe crear el rol de servicio de AWSCloud9SSMAccessRole


y AWSCloud9SSMInstanceProfile si aún no se han creado. Para obtener más
información, consulte Administrar perfiles de instancias para Systems Manager con AWS
CLI (p. 71).
• --subnet-id representa la subred que desea que utilice AWS Cloud9. Reemplace
subnet-12a3456b por el ID de la subred de una instancia de Amazon Virtual Private Cloud (VPC),
que debe ser compatible con AWS Cloud9. Para obtener más información, consulte Cree una
instancia de Amazon VPC para AWS Cloud9 (p. 511) en Configuración de VPC para entornos de
desarrollo de AWS Cloud9 (p. 500).
• De forma predeterminada, AWS Cloud9 cierra la instancia de Amazon EC2 para el entorno 30
minutos después de cerrarse todas las instancias del navegador web que están conectadas al IDE
para el entorno. Para cambiarlo, añada --automatic-stop-time-minutes y el número de
minutos. Si elige un periodo de tiempo más corto, podría generar menos cargos en su cuenta de
AWS. Del mismo modo, un tiempo superior podría dar lugar a cargos adicionales.
• De forma predeterminada, la entidad que llama a este comando es la propietaria del entorno. Para
cambiarlo, añada --owner-id y el nombre de recurso de Amazon (ARN) de la entidad propietaria.
3. Después de ejecutar correctamente este comando, abra el IDE de AWS Cloud9 del entorno recién
creado. Para hacer esto, consulte Apertura de un entorno en AWS Cloud9 (p. 78). A continuación,
vuelva a este tema y continúe en Paso 2: Recorrido básico del IDE (p. 36) para aprender a utilizar
el IDE de AWS Cloud9 para trabajar con su nuevo entorno.

Si intenta abrir el entorno, pero AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos,
puede que haya un problema con su navegador web, los permisos de acceso de AWS, la instancia o
la VPC asociada. Para obtener información sobre posibles soluciones, consulte No se puede abrir un
entorno (p. 582).

Paso siguiente
Paso 2: Recorrido básico del IDE (p. 45)

Paso 2: Recorrido básico del IDE


(Paso anterior: Paso 1: Crear un entorno (p. 44))

En esta parte del tutorial se presentan algunas de las formas en las que puede utilizar el IDE de AWS
Cloud9 para crear y probar aplicaciones.

• Puede utilizar una ventana del editor para crear y editar código.

45
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

• Puede utilizar una ventana de terminal o una ventana Run Configuration (Configuración de ejecución)
para ejecutar el código sin depurarlo.
• Puede utilizar la ventana Debugger (Depurador) para depurar el código.

Realice estas tres tareas con el motor de Node.js y JavaScript. Consulte Tutoriales y ejemplos (p. 390)
para ver otros lenguajes de programación.

Temas
• Preparar el entorno (p. 46)
• Escribir código (p. 46)
• Ejecutar el código (p. 47)
• Depurar el código (p. 48)
• Paso siguiente (p. 50)

Preparar el entorno
La mayoría de las herramientas que necesita para ejecutar y depurar código JavaScript ya están
instaladas. Sin embargo, necesita un paquete adicional de Node.js para este tutorial. Instálelo como se
indica a continuación.

1. En la barra de menús (en la parte superior del IDE de AWS Cloud9), elija Window (Ventana), New
Terminal (Nuevo terminal), o bien utilice una ventana de terminal existente.
2. En la ventana de terminal (una de las pestañas de la parte inferior del IDE), ingrese lo siguiente.

npm install readline-sync

Verifique que el resultado sea similar al siguiente (si también se muestran mensajes npm WARN,
puede ignorarlos).

+ [email protected]
added 1 package from 1 contributor and audited 5 packages in 0.565s
found 0 vulnerabilities

Escribir código
Comience por escribir código.

1. En la barra de menús, elija File (Archivo), New File (Archivo nuevo).


2. Añada el siguiente código JavaScript al nuevo archivo.

var readline = require('readline-sync');


var i = 10;
var input;

console.log("Hello Cloud9!");
console.log("i is " + i);

do {
input = readline.question("Enter a number (or 'q' to quit): ");
if (input === 'q') {
console.log('OK, exiting.')
}
else{

46
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

i += Number(input);
console.log("i is now " + i);
}
} while (input != 'q');

console.log("Goodbye!");

3. Elija File (Archivo), Save (Guardar) y, a continuación, guarde el archivo como hello-cloud9.js.

Ejecutar el código
A continuación, puede ejecutar su código.

En función del lenguaje de programación que utilice, puede haber varias formas de ejecutar el código. En
este tutorial se utiliza JavaScript, que se puede ejecutar mediante una ventana de terminal o una ventana
Run Configuration (Configuración de ejecución).

Para ejecutar el código utilizando una ventana de configuración de ejecución

1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la nueva ventana Run Configuration (Configuración de ejecución), una de las pestañas de la parte
inferior del IDE, ingrese hello-cloud9.js en el campo Command (Comando) y, a continuación,
elija Run (Ejecutar).
3. Asegúrese de que se haya activado Run Configuration (Configuración de ejecución) y, a continuación,
ingrese un número en el símbolo del sistema para interactuar con la aplicación.
4. Vea la salida del código en la ventana Run Configuration (Configuración de ejecución). Debería ser
similar a lo siguiente.

Para ejecutar el código utilizando una ventana de terminal

1. Vaya a la ventana de terminal que ha utilizado anteriormente (o abra una nueva).


2. En la ventana de terminal, ingrese ls en el símbolo del terminal y compruebe que el archivo de código
está en la lista de archivos.

47
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

3. Ingrese node hello-cloud9.js en el símbolo del sistema para iniciar la aplicación.


4. Ingrese un número en el símbolo del sistema para interactuar con la aplicación.
5. Vea la salida del código en la ventana de terminal. Debería ser similar a lo siguiente.

Depurar el código
Por último, puede depurar el código utilizando la ventana Debugger (Depurador).

1. Elija el margen junto a la línea 10 para añadir un punto de interrupción al código en dicha línea (if
(input === 'q')). Aparece un círculo rojo junto a ese número de línea, tal y como se indica a
continuación.

2. Abra la ventana Debugger (Depurador) mediante el botón Debugger (Depurador) de la parte derecha
del IDE. También puede elegir Window (Ventana), Debugger (Depurador) en la barra de menús.

48
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico

A continuación, coloque una inspección en la variable input. Para ello, elija Type an expression here
(Escriba una expresión aquí) en la sección Watch Expressions (Expresiones de inspección) de la
ventana Debugger (Depurador).

3. Vaya a la ventana Run Configuration (Configuración de ejecución) que ha utilizado anteriormente para
ejecutar el código. Elija Run (Ejecutar).

También puede abrir una nueva ventana Run Configuration (Ejecutar configuración) y comenzar a
ejecutar el código; para ello, elija Run (Ejecutar), Run With (Ejecutar con), Node.js en la barra del
menú.
4. Ingrese un número en el símbolo del sistema de Run Configuration (Configuración de ejecución) y
compruebe que el código se detiene en la línea 10. La ventana Debugger (Depurador) muestra el
valor que ha especificado en Watch Expressions (Expresiones de inspección).

5. En la ventana Debugger (Depurador), elija Resume (Reanudar), que es el icono de flecha azul
resaltado en la captura de pantalla anterior.

49
AWS Cloud9 Guía del usuario
Paso 3: Limpieza

6. Seleccione Stop (Detener) en la ventana Run Configuration (Configuración de ejecución) para detener
el depurador.

Paso siguiente
Paso 3: Limpieza (p. 50)

Paso 3: Limpieza
(Paso anterior: Paso 2: Recorrido básico del IDE (p. 45))

Para evitar que se apliquen cargos continuos en su cuenta de AWS en relación con este tutorial, debería
eliminar el entorno.
Warning

La eliminación de un entorno no se puede deshacer.

Elimine el entorno con AWS CLI


1. Ejecute el comando delete-environment de AWS Cloud9 y especifique el ID del entorno que
desea eliminar.

aws cloud9 delete-environment --region MY-REGION --environment-id


12a34567b8cd9012345ef67abcd890e1

En el comando anterior, reemplace MY-REGION por la región de AWS en la que se creó el entorno y
12a34567b8cd9012345ef67abcd890e1 por el ID del entorno que se va a eliminar.

Si no guardó el ID al crear el entorno, utilice la consola de AWS Cloud9 para encontrarlo. Seleccione
el nombre del entorno en la consola y, a continuación, busque la última parte de Environment ARN
(ARN del entorno).
2. Si creó una instancia de Amazon VPC para este tutorial y ya no la necesita, elimínela mediante la
consola de Amazon VPC en https://console.aws.amazon.com/vpc.

Paso siguiente
Información relacionada (p. 51)

50
AWS Cloud9 Guía del usuario
Información relacionada

Información relacionada
A continuación se ofrece información adicional sobre Tutorial: Primer vistazo a AWS Cloud9
(CLI) (p. 43).

• En el momento de crear un entorno de EC2, el entorno no contiene ningún código de muestra de forma
predeterminada. Para crear un entorno con código de muestra, consulte uno de los siguientes temas:
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Durante la creación del entorno de desarrollo de AWS Cloud9, dirigió AWS Cloud9 para crear una
instancia de Amazon EC2. AWS Cloud9 creó la instancia y, a continuación, conectó a esta el entorno.
Como alternativa, puede utilizar una instancia de informática en la nube existente o su propio servidor
(que denominamos entorno de SSH). Para obtener más información, consulte Creación de un entorno en
AWS Cloud9 (p. 53).

Siguientes pasos opcionales

Examine todos o alguno de los siguientes temas para continuar familiarizándose con AWS Cloud9.

Tarea Consulte este tema

Obtenga más información acerca de lo que puede Trabajo con entornos en AWS Cloud9 (p. 53)
hacer con un entorno.

Pruebe otros lenguajes informáticos. Tutoriales y ejemplos para AWS Cloud9 (p. 390)

Más información sobre el IDE de AWS Cloud9. Recorrido del IDE de AWS Cloud9 (p. 116) en
Uso de la IDE (p. 115)

Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos en AWS
con usted, en tiempo real y con asistencia de Cloud9 (p. 92)
conversación de texto.

Cree entornos de SSH (entornos que usan Creación de un entorno en AWS Cloud9 (p. 53)
instancias o servidores de informática en la y Requisitos de anfitrión del entorno SSH (p. 515)
nube que ha creado, en lugar de una instancia
de Amazon EC2 que AWS Cloud9 ha creado
automáticamente).

Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.

Use AWS Cloud9 con Amazon Lightsail. Trabajo con instancias de Amazon Lightsail en
el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)

Use AWS Cloud9 con AWS CodeStar. Trabajo con proyectos de AWS CodeStar en el
entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)

Use AWS Cloud9 con AWS CodePipeline. Trabajo con AWS CodePipeline en el entorno
de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)

51
AWS Cloud9 Guía del usuario
Información relacionada

Tarea Consulte este tema

Use AWS Cloud9 con AWS CLI, aws-shell, AWS Tutoriales y ejemplos (p. 390)
CodeCommit, el kit de desarrollo en la nube de
AWS (AWS CDK), GitHub o Amazon DynamoDB,
así como Node.js, Python u otros lenguajes de
programación.

Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker

Para obtener ayuda de la comunidad sobre AWS Cloud9, consulte el foro de debate de AWS Cloud9.
(Cuando entre en este foro, es posible que AWS requiera que inicie sesión).

Para obtener ayuda sobre AWS Cloud9 directamente de AWS, consulte las distintas opciones de soporte
que se ofrecen en la página de AWS Support.

52
AWS Cloud9 Guía del usuario
Creación de un entorno

Trabajo con entornos en AWS


Cloud9
Un entorno de desarrollo es un lugar de AWS Cloud9 en el que almacena los archivos del proyecto y
ejecuta las herramientas para desarrollar aplicaciones.

AWS Cloud9 proporciona dos tipos de entornos de desarrollo: entornos de EC2 y entornos de SSH. Para
comprender las principales similitudes y diferencias entre estos entornos de desarrollo, consulte Entornos
de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499).

Lea uno o varios de los siguientes temas para aprender a trabajar con un entorno en AWS Cloud9.

Temas
• Creación de un entorno en AWS Cloud9 (p. 53)
• Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)
• Apertura de un entorno en AWS Cloud9 (p. 78)
• Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81)
• Modificación de la configuración del entorno en AWS Cloud9 (p. 89)
• Trabajo con entornos compartidos en AWS Cloud9 (p. 92)
• Mover un entorno y cambiar el tamaño de volúmenes de Amazon EBS o cifrarlos (p. 104)
• Eliminación de un entorno en AWS Cloud9 (p. 111)

Creación de un entorno en AWS Cloud9


Para crear un entorno de desarrollo de AWS Cloud9, siga uno de los procedimientos proporcionados en
función de cómo tenga previsto utilizar AWS Cloud9.

Si no está seguro de qué elegir, le recomendamos que utilice Creación de un entorno de EC2 (p. 54).

Crear un entorno de EC2 es la opción más sencilla. AWS Cloud9 crea y configura automáticamente una
nueva instancia de Amazon EC2 en su cuenta de AWS. A continuación, AWS Cloud9 conecta esa nueva
instancia al entorno automáticamente.

Para comprender las principales similitudes y diferencias entre los entornos de desarrollo, consulte
Entornos de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499).

Proveedor de código fuente Proveedor del anfitrión del Procedimiento pertinente


entorno de desarrollo

Usted AWS Cloud9 Crear un entorno de


EC2 (p. 54)

53
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

Proveedor de código fuente Proveedor del anfitrión del Procedimiento pertinente


entorno de desarrollo

Usted Usted Crear un entorno de


SSH (p. 65)

Amazon Lightsail o usted Usted (mediante Lightsail) Trabajo con instancias de


Amazon Lightsail en el entorno
de desarrollo integrado (IDE) de
AWS Cloud9 (p. 303)

AWS CodeStar o usted AWS Cloud9 (mediante AWS Trabajo con proyectos de AWS
CodeStar) CodeStar en el entorno de
Desarrollo Integrado (IDE) de
AWS Cloud9 (p. 310)

Usted (mediante AWS AWS Cloud9 o usted Crear un entorno de


CodePipeline) EC2 (p. 54) o SSH (p. 65)
y Trabajo con AWS CodePipeline
en el entorno de desarrollo
integrado (IDE) de AWS
Cloud9 (p. 312)

Usted (mediante AWS AWS Cloud9 o usted AWS CodeCommit Ejemplo de


CodeCommit) para AWS Cloud9 (p. 394)

Usted (mediante GitHub) AWS Cloud9 o usted Crear un entorno de


EC2 (p. 54) o SSH (p. 65)
y utilizar la interfaz del panel de
Git (p. 315)

Temas
• Creación de un entorno de EC2 (p. 54)
• Creación de un entorno de SSH (p. 65)

Creación de un entorno de EC2


Note

El uso de este procedimiento puede producir cargos en su cuenta de AWS. Entre ellos, se
incluyen posibles cargos por Amazon EC2. Para obtener más información, consulte Precios de
Amazon EC2.

En este procedimiento, AWS Cloud9 crea un entorno de EC2, crea una nueva instancia de Amazon EC2
y, a continuación, conecta el entorno con esta instancia recién creada. AWS Cloud9 administra el ciclo de
vida de esta instancia, incluyendo el inicio, la detención y el reinicio de la instancia según sea necesario. Si
alguna vez elimina este entorno, AWS Cloud9 termina esta instancia automáticamente.

Puede crear un entorno de desarrollo de EC2 de AWS Cloud9 con la consola de AWS Cloud9 (p. 55) o
con código (p. 64).

Requisitos previos
Complete los pasos de Configuración de AWS Cloud9 (p. 7) para poder iniciar sesión en la consola de
AWS Cloud9 y crear entornos.

54
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

Crear un entorno de EC2 con la consola


1. Inicie sesión en la consola de AWS Cloud9:

• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya
a https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (AWS SSO), solicite instrucciones de inicio de sesión
al administrador de la cuenta de AWS.
• Si es un estudiante en un aula, pida las instrucciones de inicio de sesión al instructor.
2. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.

3. Elija el botón Create environment (Crear entorno) grande en una de las ubicaciones mostradas.

Si aún no tiene ningún entorno de AWS Cloud9, el botón se muestra en una página de bienvenida.

Si ya tiene entornos de AWS Cloud9, el botón se muestra como se indica a continuación.

4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), ingrese un nombre
para su entorno.

55
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

5. Para agregar una descripción del entorno, ingrésela en Description (Descripción).


6. Elija Next Step (Paso siguiente).
7. En la página Configure settings (Configurar ajustes), para Environment type (Tipo de entorno), elija
una de las siguientes opciones para crear un entorno respaldado por EC2:

• Create a new EC2 instance for environment (direct access) (Crear una nueva instancia de EC2 para
el entorno [acceso directo]): lanza una instancia de Amazon EC2 a la que AWS Cloud9 se puede
conectar directamente a través de SSH.

• Create a new no-ingress EC2 instance for environment (access via Systems Manager) (Crear una
nueva instancia de EC2 sin entrada para el entorno [acceso a través de Systems Manager]): lanza
una instancia de Amazon EC2 que no requiere ningún puerto entrante abierto. AWS Cloud9 se
conecta a la instancia a través de AWS Systems Manager.
• Si selecciona la opción de acceso mediante Systems Manager, se crean automáticamente una
función de servicio y un perfil de instancias 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 Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68) .

Warning

La creación de una instancia de EC2 para su entorno podría incurrir en cargos en su cuenta
de AWS para Amazon EC2. El uso de Systems Manager no supone ningún costo adicional
para administrar las conexiones a la instancia de EC2.
8. En Instance type (Tipo de instancia), elija un tipo de instancia con la cantidad de RAM y vCPU que
crea que necesita para el tipo de tareas que desea realizar.
Warning

Si elige tipos de instancias con más RAM y vCPUs, podría incurrir en cargos adicionales en
su cuenta de AWS para Amazon EC2.
9. En Platform (Plataforma), elija el tipo de instancia de Amazon EC2 que quiera: Amazon Linux 2,
Amazon Linux o Ubuntu. AWS Cloud9 crea la instancia y, a continuación, conecta a esta el entorno.
Important

Le recomendamos que elija la opción Amazon Linux 2 para su entorno de EC2. Además de
proporcionar un entorno en tiempo de ejecución seguro, estable y de alto rendimiento, la AMI
de Amazon Linux 2 incluye asistencia a largo plazo hasta 2023.
La asistencia estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31
de diciembre de 2020. Ahora esta versión solo recibe asistencia de mantenimiento.
A partir del 1 de julio de 2022, la opción Amazon Linux dejará de estar disponible para su
selección en Platform (Plataforma).
Para obtener más información, consulte la página de Amazon Linux 2.
10. Elija un valor para Cost-saving setting (Configuración de ahorro). Una vez que todas las instancias del
navegador web conectadas al IDE del entorno estén cerradas, AWS Cloud9 espera el tiempo indicado
y, a continuación, cierra la instancia de Amazon EC2 del entorno.
Warning

Si elige un periodo de tiempo mayor, podría generar cargos adicionales en su cuenta de


AWS.
11. Expanda Network settings (advanced) (Ajustes de red (Avanzado)).

56
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

12. AWS Cloud9 utiliza Amazon Virtual Private Cloud (Amazon VPC) para comunicarse con la instancia
de Amazon EC2 recién creada. En función de la configuración de Amazon VPC, siga uno de los
conjuntos de instrucciones siguientes.

Si no está seguro de qué elegir, le recomendamos que vaya al paso siguiente de este
procedimiento.

Cuando pasa Network settings (advanced) (Configuración de red [avanzada]) y deja la configuración
predeterminada preseleccionada, AWS Cloud9 intenta utilizar automáticamente la VPC
predeterminada con una sola subred en la misma cuenta de AWS y región de AWS que el nuevo
entorno.

Important

Si ha seleccionado Create a new no-ingress EC2 instance for environment (access via
Systems Manager) (Crear una nueva instancia de EC2 sin entrada para el entorno [acceso a
través de Systems Manager]), puede lanzar la instancia en una subred pública o privada.

• Public subnet (Subred pública): adjunte un gateway de internet para permitir que el SSM
Agent de la instancia se comunique con Systems Manager.
• Private subnet (Subred privada): cree un gateway NAT para permitir que la instancia se
comunique con internet y otros servicios de AWS.

También debe tener en cuenta que actualmente no puede utilizar las credenciales temporales
administradas de AWS (p. 569) para permitir que el entorno de EC2 acceda a un servicio de
AWS en nombre de una entidad de AWS (un usuario de IAM, por ejemplo).
Para obtener más información sobre cómo configurar subredes, consulte Configuración de
VPC para entornos de desarrollo de AWS Cloud9 (p. 500).

57
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

No — — — Si no existe una
VPC, créela.

Para crear una


VPC en la misma
cuenta de AWS
y región de AWS
que el nuevo
entorno, elija
Create new
VPC (Crear
nueva VPC) y, a
continuación, siga
las instrucciones
que aparecen en
pantalla. Para
obtener más
información,
consulte Cree
una instancia
de Amazon
VPC para AWS
Cloud9 (p. 511)
.

Para crear una


VPC en una
cuenta de AWS
distinta del nuevo
entorno, consulte
Trabajar con VPC
compartidas en la
Guía del usuario
de Amazon VPC.

58
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

Sí Sí Sí Sí Vaya
directamente
al siguiente
paso de este
procedimiento.

Cuando pasa
Network settings
(advanced)
(Configuración de
red [avanzada])
y deja la
configuración
predeterminada
preseleccionada,
AWS Cloud9
intenta utilizar
automáticamente
la VPC
predeterminada
con una sola
subred en la
misma cuenta y la
misma región que
el nuevo entorno.

59
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

Sí Sí Sí No Si la VPC
predeterminada
tiene varias
subredes,
expanda
Network settings
(advanced)
(Ajustes de red
(Avanzado)). En
Subnet (Subred),
elija la subred
que desee que
AWS Cloud9
utilice en la VPC
predeterminada
previamente
seleccionada.

Si la VPC
predeterminada
no tiene
subredes,
deberá crear
una. Para ello,
seleccione Create
new subnet
(Crear nueva
subred) y siga
las instrucciones
en pantalla. Para
obtener más
información,
consulte Crear
una subred
para AWS
Cloud9 (p. 513)
.

Sí Sí No Sí Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.

60
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

Sí Sí No No Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.

Si la VPC
elegida tiene
varias subredes,
expanda
Network settings
(advanced)
(Ajustes de red
(Avanzado)). En
Subnet (Subred),
elija la subred que
desea que AWS
Cloud9 utilice en
la VPC elegida.

Si la VPC
elegida no
tiene subredes,
deberá crear
una. Para ello,
seleccione Create
new subnet
(Crear nueva
subred) y siga
las instrucciones
en pantalla. Para
obtener más
información,
consulte Crear
una subred
para AWS
Cloud9 (p. 513)
.

61
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

Sí No Sí — AWS Cloud9
no puede
usar una VPC
predeterminada
en una cuenta de
AWS diferente de
la cuenta de AWS
para el nuevo
entorno. Elija una
opción diferente
de esta lista.

Sí No No Sí Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.
Note

La VPC
debe
estar en
la misma
región de
AWS que
el nuevo
entorno,
incluso
si la VPC
está
en otra
cuenta
de AWS.

62
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?

Sí No No No Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.

En Subnet
(Subred), elija la
subred que desea
que AWS Cloud9
utilice en la VPC
elegida.

Si la VPC
elegida no tiene
subredes, para
crear una subred
para una VPC en
una cuenta de
AWS diferente
del nuevo
entorno, consulte
Trabajar con VPC
compartidas en la
Guía del usuario
de Amazon VPC.
Note

La VPC y
la subred
deben
estar en
la misma
región de
AWS que
el nuevo
entorno,
incluso si
la VPC y
la subred
se
encuentran
en otra
cuenta
de AWS.

63
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2

Para obtener más información sobre estas opciones, consulte Configuración de VPC para entornos de
desarrollo de AWS Cloud9 (p. 500).
13. Añada hasta 50 etiquetas suministrando los valores de Key (Clave) y Value (Valor) para cada etiqueta.
Las etiquetas se adjuntarán al entorno de AWS Cloud9 como etiquetas de recursos y se propagarán
a los siguientes recursos subyacentes: la pila de AWS CloudFormation, la instancia de Amazon
EC2 y los grupos de seguridad de Amazon EC2. Puede encontrar información sobre las etiquetas
en Controlar el acceso con etiquetas de recursos de AWS en la Guía del usuario de IAM. Consulte
también la información avanzada (p. 540) sobre las etiquetas.
Warning

Si actualiza estas etiquetas después de crearlas, los cambios no se propagan


automáticamente a los recursos subyacentes. Para obtener más información, consulte
Propagación de actualizaciones de etiquetas a los recursos subyacentes (p. 541) en la
información avanzada acerca de las etiquetas (p. 540).
14. Elija Next Step (Paso siguiente).
15. En la página Review (Revisión), elija Create environment (Crear entorno). Espere mientras AWS
Cloud9 crea el entorno. Esto puede tardar varios minutos.
Note

Si se produce un error en la creación de la cuenta, se muestra un banner en la parte superior


de la página de la consola. Además, la tarjeta del entorno, si existe, indica que se ha
producido un error en la creación del entorno.

Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.

Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para obtener información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en
Solución de problemas.
Note

Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .

Creación de un entorno con código


Para usar código para crear un entorno de EC2 en AWS Cloud9, llame a la operación para crear un
entorno de EC2 de AWS Cloud9, tal y como se indica a continuación.

AWS CLI create-environment-ec2

AWS SDK for C++ CreateEnvironmentEC2Request,


CreateEnvironmentEC2Result

AWS SDK for Go CreateEnvironmentEC2,


CreateEnvironmentEC2Request,
CreateEnvironmentEC2WithContext

AWS SDK for Java CreateEnvironmentEC2Request,


CreateEnvironmentEC2Result

AWS SDK for JavaScript createEnvironmentEC2

64
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH

AWS SDK for .NET CreateEnvironmentEC2Request,


CreateEnvironmentEC2Response

AWS SDK for PHP createEnvironmentEC2

AWS SDK for Python (Boto) create_environment_ec2

AWS SDK for Ruby create_environment_ec2

AWS Tools for Windows PowerShell New-C9EnvironmentEC2

API de AWS Cloud9 CreateEnvironmentEC2

Note

Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .

Creación de un entorno de SSH


Un entorno de desarrollo de SSH de AWS Cloud9 se crea con la consola de AWS Cloud9. (No se puede
crear un entorno de SSH con código).

Requisitos previos
• Asegúrese de haber completado los pasos de Configuración de AWS Cloud9 (p. 7) en primer lugar, para
poder iniciar sesión en la consola de AWS Cloud9 y crear entornos.
• Identifique una instancia de informática en la nube existente (por ejemplo, una instancia de Amazon EC2
en su cuenta de AWS), o su propio servidor, que desee que AWS Cloud9 conecte al entorno.
• Asegúrese de que la instancia existente o su propio servidor cumpla todos los Requisitos del host
SSH (p. 517). 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


1. Asegúrese de haber completado los requisitos anteriores.
2. Si todavía no se ha conectado a su instancia existente o a su propio servidor, conéctese con un cliente
SSH. Debe hacerlo para poder añadir el valor de la clave SSH pública necesario para la instancia o
servidor, tal y como se describe más adelante en este procedimiento.
Note

Para conectarse a una instancia de informática en la nube de AWS existente, consulte uno o
más de los siguientes recursos:

• En el caso de Amazon EC2, consulte Conexión con la instancia de Linux en la Guía del
usuario de Amazon EC2 para instancias de Linux.
• Para Amazon Lightsail, consulte Connect to your Linux/Unix-based Lightsail instance en la
documentación de Amazon Lightsail.
• Para AWS Elastic Beanstalk, consulte Listado y conexión a instancias de servidor en la
Guía para desarrolladores de AWS Elastic Beanstalk.

65
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH

• Para AWS OpsWorks, consulte Uso de SSH para iniciar sesión en una instancia de Linux
en la Guía del usuario de AWS OpsWorks.
• Para otros servicios de AWS, consulte la documentación del servicio.

Para conectarse a su propio servidor, puede buscar en internet usando una frase como
"conectarse a un servidor con el comando SSH" (desde macOS o Linux) o "conectarse a un
servidor con PuTTY" (desde Windows).
3. Inicie sesión en la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.
4. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.

5. Si es la primera vez que crea un entorno de desarrollo, se muestra una página de bienvenida. En
el panel New AWS Cloud9 environment (Nuevo entorno de AWS Cloud9), elija Create environment
(Crear entorno).

Si ya ha creado entornos de desarrollo anteriormente, también puede expandir el panel de la izquierda


de la pantalla, elegir Your environments (Sus entornos) y, a continuación, Create environment (Crear
entorno).

En la página de bienvenida:

O bien, en la página Your environments (Sus entornos):

66
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH

6. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
7. Para agregar una descripción del entorno, escríbala en Description (Descripción).
8. Elija Next Step (Paso siguiente).
9. En Environment type (Tipo de entorno), elija Connect and run in remote server (SSH) (Conectar y
ejecutar en un servidor remoto (SSH)).
10. En Usuario, escriba el nombre de inicio de sesión que utilizó para conectarse a la instancia o al
servidor al principio de este procedimiento. Por ejemplo, en el caso de una instancia de informática en
la nube de AWS, podría ser ec2-user, ubuntu o root.
Note

Para obtener resultados óptimos, le 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. En concreto, este nombre de inicio de sesión debe tener la instalación de Node.js
en la instancia o 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, junto con
los permisos de instalación, el nombre del grupo y la ubicación.
11. En Host, escriba la dirección IP pública (preferida) o el nombre de host de la instancia o el servidor.
12. En Port (Puerto), escriba el puerto que desea que AWS Cloud9 utilice para intentar conectarse a la
instancia o servidor o deje el puerto predeterminado.
13. Para especificar la ruta del directorio en la instancia o el servidor donde desea que se inicie AWS
Cloud9 después de iniciar sesión. Lo identificó anteriormente en los requisitos previos de este
procedimiento. Expanda Advanced settings (Configuración avanzada) y, a continuación, escriba la
ruta en Environment path (Ruta del entorno). 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.
14. Para especificar la ruta al archivo binario Node.js en la instancia o el servidor, expanda Advanced
settings (Configuración avanzada) y, a continuación, escriba la ruta en Node.js binary path (Ruta
binaria de Node.js). 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.
15. Para especificar un host de salto que utiliza la instancia o servidor, expanda Advanced settings
(Configuración avanzada) y escriba información sobre el host de salto en SSH jump host (Host
de salto SSH), utilizando 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.
16. 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).) Pegue el valor de la clave SSH pública
que se copió en el archivo ~/.ssh/authorized_keys en la instancia o servidor existente al que se

67
AWS Cloud9 Guía del usuario
Acceder a instancias EC2 sin entrada con Systems Manager

conectó anteriormente en este procedimiento. (~ representa el directorio de inicio del nombre de inicio
de sesión del usuario que ha especificado anteriormente en este procedimiento).
Note
Para ver el valor de la clave SSH pública que se ha copiado, amplíe View public SSH key
(Ver clave pública SSH).
17. Elija Next Step (Paso siguiente).
18. En la página Review (Revisión), elija Create environment (Crear entorno). Espere mientras AWS
Cloud9 crea el entorno. Esto puede tardar varios minutos.

Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema
con su navegador web, los permisos de acceso de AWS, la instancia o la red asociada. Para obtener
información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en Solución de
problemas.
Note
Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .

Acceder a instancias EC2 sin entrada con AWS


Systems Manager
Una “instancia EC2 sin entrada” creada para un entorno EC2 permite que AWS Cloud9 se conecte a
su instancia de Amazon EC2 sin necesidad de abrir ningún puerto entrante en esa instancia. Puede
seleccionar la opción sin entrada al crear un entorno de EC2 mediante la consola (p. 55), la interfaz de
la línea de comandos (p. 44), o una pila de AWS CloudFormation (p. 73).
Important
No hay cargos adicionales por usar el Administrador de sesiones de Systems Manager para
administrar las conexiones a la instancia EC2.

Al seleccionar un tipo de entorno en la sección Environment settings (Configuración del entorno) de la


consola, puede elegir una nueva instancia EC2 que requiera conectividad entrante o una nueva instancia
EC2 sin entrada que no haga lo siguiente:

• Crear una nueva instancia EC2 para el entorno (acceso directo) (p. 55): con esta configuración, el
grupo de seguridad de la instancia tiene una regla para permitir el tráfico de red entrante. Un puerto

68
AWS Cloud9 Guía del usuario
Beneficios de utilizar Systems
Manager para entornos de EC2

entrante abierto permite que AWS Cloud9 se conecte a través de SSH a su instancia. El tráfico de red
entrante está restringido a las direcciones IP aprobadas para las conexiones de AWS Cloud9 (p. 520).

• Crear una nueva instancia EC2 sin entrada para el entorno (acceso a través de Systems
Manager) (p. 55): con esta configuración, el grupo de seguridad de la instancia no tiene regla de
entrada. Esto significa que no se permitirá el tráfico entrante que proceda de otro anfitrión a la instancia.
Por lo tanto, AWS Cloud9 no se conecta directamente a la instancia a través de SSH. En cambio, el
entorno se conecta a través del Administrador de sesiones de AWS Systems Manager. Para obtener
más información, consulte Beneficios de utilizar Systems Manager para entornos de EC2 (p. 69).

Note
También tiene una tercera opción que consiste en seleccionar Create and run in remote server
(SSH connection) (Crear y ejecutar en un servidor remoto [conexión SSH]). Para obtener más
información acerca de permitir que AWS Cloud9 se conecte a una instancia EC2 existente o a su
propio servidor, consulte Creación de un entorno de SSH (p. 65).

Si se crea un entorno mediante AWS CLI (p. 44), puede configurar una instancia EC2 sin entrada
estableciendo la opción --connection-type CONNECT_SSM al llamar al comando create-
environment-ec2. Para obtener más información acerca de la creación de la función de servicio y del
perfil de instancias necesarios, consulte Administrar perfiles de instancias para Systems Manager con
AWS CLI (p. 71).

Después de completar la creación de un entorno que utiliza una instancia EC2 sin entrada, confirme lo
siguiente:

• El Administrador de sesiones de Systems Manager tiene permisos para realizar acciones en la instancia
EC2 en su nombre (consulte Administración de permisos de Systems Manager (p. 71)).
• Los usuarios de AWS Cloud9 pueden acceder a la instancia administrada por el Administrador
de sesiones (consulte Proporcionar a los usuarios acceso a las instancias administradas por el
Administrador de sesiones (p. 72)).

Beneficios de utilizar Systems Manager para entornos


de EC2
Permitir que el Administrador de sesiones controle la conexión segura entre AWS Cloud9 y su instancia
EC2 ofrece dos beneficios clave:

• No es necesario abrir puertos entrantes para la instancia


• Opción para lanzar la instancia en una subred pública o privada

No open inbound ports

Las conexiones seguras entre AWS Cloud9 y su instancia EC2 las gestiona el Administrador de
sesiones. El Administrador de sesiones es una capacidad completamente administrada de Systems
Manager que permite que AWS Cloud9 se conecte a su instancia EC2 sin necesidad de abrir puertos
entrantes.
Important
La opción de utilizar Systems Manager para las conexiones sin entrada solo está disponible
actualmente cuando se crean nuevos entornos de EC2.

Con el inicio de una sesión del Administrador de sesiones, se realiza una conexión con la instancia de
destino. Con la conexión establecida, el entorno ahora puede interactuar con la instancia a través del

69
AWS Cloud9 Guía del usuario
Beneficios de utilizar Systems
Manager para entornos de EC2

servicio de Systems Manager. El servicio de Systems Manager se comunica con la instancia a través
de Systems Manager Agent (SSM Agent).

SSM Agent se instala, de forma predeterminada, en todas las instancias utilizadas por los entornos de
EC2.
Private/public subnets

Al seleccionar una subred para su instancia en la sección Network settings (advanced) Configuración
de red (avanzada), puede seleccionar una subred privada o pública si se accede a la instancia de su
entorno a través de Systems Manager.

Subredes privadas

Para una subred privada, debe asegurarse de que la instancia todavía puede conectarse al servicio
SSM. Para hacerlo, puede configurar una gateway NAT en una subred pública o configurar un punto
de enlace de la VPC para Systems Manager.

La ventaja de utilizar la gateway NAT es que impide que internet inicie una conexión a la instancia en
la subred privada. Dado que a la instancia de su entorno se le asigna una dirección IP privada en lugar
de una pública, la gateway NAT reenvía el tráfico de la instancia a internet u otros servicios de AWS y,
a continuación, devuelve la respuesta a la instancia.

Para la opción de la VPC, debe crear al menos tres puntos de enlace de interfaz necesarios
para Systems Manager: com.amazonaws.region.ssm, com.amazonaws.region.ec2messages y
com.amazonaws.region.ssmmessages. Para obtener más información, consulte Creación de puntos
de enlace de la VPC para Systems Manager en la Guía del usuario de AWS Systems Manager.
Important
Actualmente, si la instancia EC2 de su entorno se lanza en una subred privada, no puede
usar credenciales temporales administradas de AWS (p. 569) para permitir que el entorno
de EC2 acceda a un servicio de AWS en nombre de una entidad de AWS (un usuario de IAM,
por ejemplo).

Subredes públicas

Si el entorno de desarrollo usa SSM para acceder a una instancia EC2, asegúrese de que la subred
pública en la que se lanza la instancia asigna una dirección IP pública a la instancia. Para ello, puede

70
AWS Cloud9 Guía del usuario
Administración de permisos de Systems Manager

especificar su propia dirección IP o habilitar la asignación automática de una dirección IP pública. Para
ver los pasos necesarios para modificar la configuración de asignación automática de IP, consulte
Direcciones IP en su VPC en la Guía del usuario de Amazon VPC.

Para obtener más información sobre la configuración de subredes privadas y públicas para las
instancias de su entorno, consulte Crear una subred para AWS Cloud9 (p. 513).

Administración de permisos de Systems Manager


De forma predeterminada, Systems Manager no tiene permiso para realizar acciones en sus instancias
EC2. El acceso se proporciona a través de un perfil de instancias (IAM) de AWS Identity and Access
Management. (Un perfil de instancias es un contenedor que pasa información del rol de IAM a una
instancia EC2 en el momento del lanzamiento).

Al crear la instancia EC2 sin entrada con la consola de AWS Cloud9, tanto la función de servicio
(AWSCloud9SSMAccessRole) como el perfil de instancias de IAM (AWSCloud9SSMInstanceProfile)
se crean automáticamente. (Puede ver AWSCloud9SSMAccessRole en la consola de administración de
IAM. Los perfiles de instancias no se muestran en la consola de IAM).
Important

Si crea un entorno de EC2 sin entrada por primera vez con AWS CLI, debe definir explícitamente
la función servicio y el perfil de instancias necesarios. Para obtener más información, consulte
Administrar perfiles de instancias para Systems Manager con AWS CLI (p. 71).

Para una protección de seguridad adicional, el rol vinculado al servicio de AWS Cloud9,
AWSServiceRoleforAWSCloud9, presenta una restricción PassRole en su política
AWSCloud9ServiceRolePolicy. Cuando pasa un rol de IAM a un servicio, permite a ese servicio
asumir el rol y ejecutar acciones en su nombre. En este caso, el permiso PassRole garantiza que AWS
Cloud9 pueda pasar solo el rol AWSCloud9SSMAccessRole (y su permiso) a una instancia EC2. Esto
restringe las acciones que se pueden realizar en la instancia EC2 solo a las requeridas por AWS Cloud9.
Note

Si ya no necesita utilizar Systems Manager para acceder a una instancia, puede eliminar la
función de servicio AWSCloud9SSMAccessRole. Para obtener información, consulte Eliminación
de roles o perfiles de instancia en la Guía del usuario de IAM.

Administrar perfiles de instancias para Systems Manager con


AWS CLI
También puede crear un entorno de EC2 sin entrada con AWS CLI. Cuando llame a create-
environment-ec2, establezca la opción --connection-type en CONNECT_SSM.

Si utiliza esta opción, la función de servicio AWSCloud9SSMAccessRole y


AWSCloud9SSMInstanceProfile no se crean automáticamente. Por lo tanto, para crear el perfil de
servicio y el perfil de instancias necesarios, realice una de las siguientes acciones:

• Cree un entorno de EC2 usando la consola una vez que la función de servicio
AWSCloud9SSMAccessRole y AWSCloud9SSMInstanceProfile se hayan creado automáticamente.
Una vez creados, la función de servicio y el perfil de instancias están disponibles para cualquier entorno
de EC2 adicional creado mediante AWS CLI.
• Ejecute los siguientes comandos de AWS CLI para crear la función de servicio y el perfil de instancias.

aws iam create-role --role-name AWSCloud9SSMAccessRole --path /service-role/ --


assume-role-policy-document '{"Version": "2012-10-17","Statement": [{"Effect":
"Allow","Principal": {"Service": ["ec2.amazonaws.com","cloud9.amazonaws.com"]
},"Action": "sts:AssumeRole"}]}'

71
AWS Cloud9 Guía del usuario
Proporcionar a los usuarios acceso a las instancias
administradas por el Administrador de sesiones

aws iam attach-role-policy --role-name AWSCloud9SSMAccessRole --policy-arn


arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile
aws iam create-instance-profile --instance-profile-name AWSCloud9SSMInstanceProfile --
path /cloud9/
aws iam add-role-to-instance-profile --instance-profile-name AWSCloud9SSMInstanceProfile
--role-name AWSCloud9SSMAccessRole

Proporcionar a los usuarios acceso a las instancias


administradas por el Administrador de sesiones
Para abrir un entorno de AWS Cloud9 que está conectado a una instancia EC2 a través de Systems
Manager, un usuario debe tener permiso para la operación de la API, StartSession. Esta operación
inicia una conexión a la instancia EC2 administrada para una sesión del Administrador de sesiones. Puede
dar acceso a los usuarios mediante una política administrada específica de AWS Cloud9 (recomendado) o
bien mediante una política de IAM y la adición de los permisos necesarios.

Método Description (Descripción)

Usar una política administrada específica de AWS Se recomienda utilizar políticas administradas
Cloud9 de AWS para permitir a los usuarios acceder
a instancias EC2 administradas por Systems
Manager. Las directivas administradas
proporcionan un conjunto de permisos para casos
de uso de AWS Cloud9 estándar y se pueden
adjuntar fácilmente a una entidad de IAM.

Todas las políticas administradas también incluyen


los permisos para ejecutar la operación de API
StartSession. Las siguientes son las políticas
administradas específicas de AWS Cloud9:

• AWSCloud9Administrator
(arn:aws:iam::aws:policy/
AWSCloud9Administrator)
• AWSCloud9User
(arn:aws:iam::aws:policy/
AWSCloud9User)
• AWSCloud9EnvironmentMember
(arn:aws:iam::aws:policy/
AWSCloud9EnvironmentMember)

Para obtener más información, consulte


Políticas administradas por AWS para AWS
Cloud9 (p. 550).

Editar una política de IAM y agregar instrucciones Para editar una política existente, puede agregar
de política obligatorias permisos para la API de StartSession. Para
editar una política mediante la AWS Management
Console o AWS CLI, siga las instrucciones que se
proporcionan en Edición de políticas de IAM en la
Guía del usuario de IAM.

Cuando edite la política, agregue la instrucción


policy statement (véase a continuación),

72
AWS Cloud9 Guía del usuario
Uso de AWS CloudFormation para
crear entornos de EC2 sin entrada

Método Description (Descripción)


que permite que la operación de API
ssm:startSession se ejecute.

Los siguientes permisos le permiten ejecutar la operación de API StartSession. La clave de condición
ssm:resourceTag especifica que se puede iniciar una sesión del Administrador de sesiones para
cualquier instancia (Resource: arn:aws:ec2:*:*:instance/*) con la condición de que la instancia
sea un entorno de desarrollo de EC2 de AWS Cloud9 (aws:cloud9:environment).
Note

Las siguientes políticas administradas también incluyen estas instrucciones de política:


AWSCloud9Administrator, AWSCloud9User y AWSCloud9EnvironmentMember.

{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}

Uso de AWS CloudFormation para crear entornos de


EC2 sin entrada
Si utiliza una plantilla de AWS CloudFormation para definir un entorno de desarrollo de Amazon EC2 sin
entrada, haga lo siguiente antes de crear la pila:

1. Cree una función de servicio de AWSCloud9SSMAccessRole y un perfil de instancias de


AWSCloud9SSMInstanceProfile. Para obtener más información, consulte Crear una función de
servicio y un perfil de instancias con una plantilla de AWS CloudFormation (p. 74).
2. Actualice la política para la entidad de IAM que llama a AWS CloudFormation para que pueda iniciar una
sesión del Administrador de sesiones que se conecte a la instancia EC2. Para obtener más información,
consulte Agregar permisos de Systems Manager a una política de IAM (p. 74).

73
AWS Cloud9 Guía del usuario
Uso de AWS CloudFormation para
crear entornos de EC2 sin entrada

Crear una función de servicio y un perfil de instancias con una


plantilla de AWS CloudFormation
Debe crear la función de servicio AWSCloud9SSMAccessRole y el perfil de instancias
AWSCloud9SSMInstanceProfilepara permitir que Systems Manager administre la instancia EC2 que
respalda su entorno de desarrollo.

Si ya ha creado AWSCloud9SSMAccessRole y AWSCloud9SSMInstanceProfile anteriormente


mediante la creación de un entorno de EC2 sin entrada with the console o la ejecución de comandos de
AWS CLI (p. 71), la función de servicio y el perfil de instancias ya están disponibles para su uso.
Note

Si intenta crear una pila de AWS CloudFormation para un entorno de EC2 sin entrada sin crear
primero la función de servicio y el perfil de instancias necesarios, la pila no se crea y se muestra el
siguiente mensaje de error:
El perfil de instancias AWSCloud9SSmInstanceProfile no existe en la cuenta.

Al crear un entorno de EC2 sin entrada por primera vez mediante AWS CloudFormation, puede definir
AWSCloud9SSMAccessRole y AWSCloud9SSMInstanceProfile como recursos de IAM en la plantilla.

Este extracto de una plantilla de ejemplo muestra cómo puede definir estos recursos. (La acción
AssumeRole devuelve credenciales de seguridad que proporcionan acceso tanto al entorno de AWS
Cloud9 como a su instancia EC2).

AWSTemplateFormatVersion: 2010-09-09
Resources:
AWSCloud9SSMAccessRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal:
Service:
- cloud9.amazonaws.com
- ec2.amazonaws.com
Action:
- 'sts:AssumeRole'
Description: 'Service linked role for AWS Cloud9'
Path: '/service-role/'
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile
RoleName: 'AWSCloud9SSMAccessRole'

AWSCloud9SSMInstanceProfile:
Type: "AWS::IAM::InstanceProfile"
Properties:
InstanceProfileName: AWSCloud9SSMInstanceProfile
Path: "/cloud9/"
Roles:
-
Ref: AWSCloud9SSMAccessRole

Agregar permisos de Systems Manager a una política de IAM


Después de definir una función de servicio y un perfil de instancias (p. 74) en la plantilla de AWS
CloudFormation, también debe asegurarse de que la entidad IAM que crea la pila tiene permiso para iniciar

74
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace de la VPC
para Amazon S3 para descargar dependencias

una sesión del Administrador de sesiones. (Una sesión es una conexión realizada a la instancia EC2
mediante el Administrador de sesiones).
Note

Si no agrega permisos para iniciar una sesión del Administrador de sesiones antes de crear una
pila para un entorno de EC2 sin entrada, se devuelve un error AccessDeniedException.

Agregue los siguientes permisos de la política a la entidad de IAM mediante una llamada a AWS
CloudFormation:

{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloudformation.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}

Configuración de puntos de enlace de la VPC para


Amazon S3 para descargar dependencias
Si la instancia EC2 de su entorno de AWS Cloud9 no tiene acceso a internet (no se permite tráfico
saliente), debe crear un punto de enlace de la VPC para un bucket de Amazon S3 especificado. Este
bucket contiene las dependencias necesarias para mantener su IDE actualizado.

La configuración de un punto de enlace de la VPC para Amazon S3 también implica personalizar la política
de acceso para permitir el acceso solo al bucket de confianza que contiene las dependencias que se van a
descargar.
Note

Puede crear y configurar puntos de enlace de la VPC mediante la AWS Management Console,
AWS CLI o la API de Amazon VPC. En el siguiente procedimiento se explica cómo crear un punto
de enlace de la VPC con la interfaz de la consola.

Crear y configurar un punto de enlace de la VPC para Amazon S3

1. En la AWS Management Console, vaya a la página de la consola de Amazon VPC.


2. En la barra de navegación, elija Endpoints (Puntos de enlace).
3. En la página Endpoints (Puntos de enlace), elija Create Endpoint (Crear punto de enlace).
4. En la página Create Endpoint (Crear un punto de enlace), ingrese “s3” en el campo de búsqueda y
pulse Intro para ver una lista de los puntos de enlace disponibles para Amazon S3 en la región de
AWSactual.

75
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace de la VPC
para Amazon S3 para descargar dependencias

5. En la lista de puntos de enlace de Amazon S3 devuelta, seleccione el tipo Gateway.


6. A continuación, elija la VPC que contiene la instancia EC2 de su entorno.
7. Ahora elija la tabla de enrutamiento de la VPC para que las subredes asociadas puedan acceder al
punto de enlace. (La instancia EC2 de su entorno se encuentra en una de estas subredes).
8. En la sección Policy (Política), haga clic en la opción Custom (Personalizada) y reemplace la política
estándar por la siguiente:

{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "Access-to-C9-bucket-only",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::{bucket_name}/content/dependencies/*"
}
]
}

Para el elemento Resource, reemplace {bucket_name} por el nombre real del bucket que está
disponible en su región de AWS. Por ejemplo, si utiliza AWS Cloud9 en la región Europa (Irlanda),
especifique lo siguiente: "Resource": "arn:aws:s3:::static-eu-west-1-prod-static-
hld3vzaf7c4h/content/dependencies/.

En la siguiente tabla se incluyen los nombres de bucket de las regiones de AWS donde AWS Cloud9
está disponible:

Buckets de Amazon S3 en las regiones de AWS Cloud9

AWSRegión de Nombre del bucket

EE. UU. Este (Ohio) static-us-east-2-prod-


static-1c3sfcvf9hy4m

EE. UU. Este (Norte de Virginia) static-us-east-1-prod-static-


mft1klnkc4hl

EE. UU. Oeste (Oregón) static-us-west-2-prod-static-


p21mksqx9zlr

Asia-Pacífico (Hong Kong) static-ap-east-1-prod-


static-171xhpfkrorh6

Asia-Pacífico (Mumbai) static-ap-south-1-prod-static-


ykocre202i9d

Asia-Pacífico (Seúl) static-ap-northeast-2-prod-


static-1wxyctlhwiajm

Asia-Pacífico (Sídney) static-ap-southeast-2-prod-


static-1cjsl8bx27rfu

Asia Pacífico (Tokio) static-ap-northeast-1-prod-


static-4fwvbdisquj8

Canada (Central) static-ca-central-1-prod-static-


g80lpejy486c

76
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace
de la VPC para conectividad privada

AWSRegión de Nombre del bucket

Europe (Frankfurt) static-eu-central-1-prod-


static-14lbgls2vrkh

Europe (Ireland) static-eu-west-1-prod-static-


hld3vzaf7c4h

Europa (Londres) static-eu-west-2-prod-


static-36lbg202837x

Europa (Milán) static-eu-south-1-prod-


static-1379tzkd3ni7d

Europe (Paris) static-eu-west-3-prod-


static-1rwpkf766ke58

Europe (Stockholm) static-eu-north-1-prod-


static-1qzw982y7yu7e

Middle East (Bahrain) static-me-south-1-prod-static-


gmljex38qtqx

América del Sur (São Paulo) static-sa-east-1-prod-


static-1cl8k0y7opidt
9. Elija Create Endpoint.

Si ha proporcionado la información de configuración correcta, un mensaje muestra el ID del punto de


enlace que se ha creado.
10. Para verificar que su IDE puede acceder al bucket de Amazon S3, inicie una sesión del terminal
mediante las opciones Window (Ventana), New Terminal (Nuevo terminal) en la barra de menús. A
continuación, ejecute el siguiente comando y reemplace {bucket_name} por el nombre real del
bucket de su región:

ping {bucket_name}.s3.{region}.amazonaws.com.

Por ejemplo, si creó un punto de enlace para un bucket de Amazon S3 en la región EE. UU. Este
(Norte de Virginia), ejecute el siguiente comando:

ping static-us-east-1-prod-static-mft1klnkc4hl.s3.us-east-1.amazonaws.com

Si el ping obtiene una respuesta, esto confirma que su IDE puede acceder al bucket y a sus
dependencias.

Para obtener más información sobre esta característica, consulte Puntos de enlace para Amazon S3en la
Guía de AWS PrivateLink.

Configuración de puntos de enlace de la VPC para


conectividad privada
Cuando se lanza una instancia en una subred con la opción de acceso a través de Systems Manager,
su grupo de seguridad no tiene una regla de entrada que permita el tráfico de red entrante. Sin embargo,
el grupo de seguridad tiene una regla de salida que permite el tráfico saliente de la instancia. Esto es
necesario para descargar paquetes y bibliotecas necesarios para mantener el IDE de AWS Cloud9
actualizado.

77
AWS Cloud9 Guía del usuario
Apertura de un entorno

Para evitar el tráfico saliente y entrante de la instancia, debe crear y configurar los puntos de enlace de
Amazon VPC para Systems Manager. Un punto de enlace de la VPC de la interfaz (punto de enlace de la
interfaz) le permite conectarse a servicios con tecnología de AWS PrivateLink, una tecnología que permite
obtener acceso de forma privada a las API de Amazon EC2 y Systems Manager mediante direcciones
IP privadas. Para configurar los puntos de enlace de la VPC para que utilicen Systems Manager, siga las
instrucciones proporcionadas en este Recursos del Centro de Conocimientos.
Warning

Si configura un grupo de seguridad que no permite el tráfico de red entrante o saliente,


la instancia EC2 que admite el IDE de AWS Cloud9 no tiene acceso a internet de forma
predeterminada. Por lo tanto, debe crear un punto de enlace de Amazon S3 para su
VPC (p. 75) para permitir el acceso a las dependencias incluidas en un bucket de S3 de
confianza. Además, es posible que algunos servicios de AWS, como AWS Lambda, no funcionen
según lo previsto sin acceso a internet.
Con AWS PrivateLink existen cargos de procesamiento de datos por cada gigabyte procesado a
través del punto de enlace de la VPC, independientemente de la fuente o el destino del tráfico.
Para obtener más información, consulte Precios de AWS PrivateLink.

Apertura de un entorno en AWS Cloud9


Este procedimiento describe cómo abrir un entorno en AWS Cloud9.
Note

En este procedimiento se supone que ya ha creado un entorno de desarrollo de AWS Cloud9.


Para crear un entorno, consulte Creación de un entorno (p. 53).

1. Inicie sesión en la consola de AWS Cloud9 como sigue:


• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya a
https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
Important

Si cierra sesión en su cuenta de AWS, aún se podrá acceder al IDE de AWS Cloud9 hasta
cinco minutos después. Luego se denegará el acceso cuando los permisos necesarios
caduquen.
2. En la barra de navegación superior, elija la región de AWS en la que se encuentra el entorno.

78
AWS Cloud9 Guía del usuario
Apertura de un entorno

3. En la lista de entornos, para el entorno que desea abrir, realice una de las siguientes acciones.
• Dentro de la tarjeta, elija el enlace Open IDE (Abrir IDE).

79
AWS Cloud9 Guía del usuario
Apertura de un entorno

• Seleccione la tarjeta y, a continuación, elija el botón Open IDE (Abrir IDE).

Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.

• En la barra de navegación lateral, elija una o varias de las siguientes acciones.


• Elija Your environments (Sus entornos) para mostrar todos los entornos que son propiedad de su
entidad de AWS en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Shared with you (Compartido con usted) para mostrar todos los entornos a los que su entidad de
AWS se ha invitado en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Account environments (Entornos de cuenta) para mostrar todos los entornos de la región de AWS
y la cuenta de AWS seleccionadas para las que su entidad de AWS tiene permisos de visualización.

• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos en
el ámbito actual.

• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.
• En la barra de navegación superior, elija una región de AWS diferente.

80
AWS Cloud9 Guía del usuario
Llamar a los servicios de AWS desde un entorno

Llamar a los servicios de AWS desde un entorno en


AWS Cloud9
Puede llamar a los servicios de AWS desde un entorno de desarrollo de AWS Cloud9. Por ejemplo, puede
llevar a cabo las acciones siguientes:

• Cargue y descargue datos en buckets de Amazon Simple Storage Service (Amazon S3).
• Envíe notificaciones a través de temas de Amazon Simple Notification Service (Amazon SNS).
• Lea y escriba datos en bases de datos de Amazon DynamoDB (DynamoDB).

Puede llamar a los servicios de AWS desde su entorno de varias maneras. Por ejemplo, puede utilizar la
AWS Command Line Interface (AWS CLI) o el shell de AWS para ejecutar comandos desde una sesión de
terminal. También puede llamar a los servicios de AWS desde código que ejecute en el entorno, mediante
instancias de AWS SDK para lenguajes de programación como JavaScript, Python, Ruby, PHP, Go y C++.
Para obtener más información, consulte la Muestra de AWS CLI y aws-shell (p. 390), la Guía del usuario
de AWS Command Line Interface y las instancias de AWS SDK.

Cada vez que AWS CLI, aws-shell o su código llaman a un servicio de AWS, AWS CLI, aws-shell o el
código deben proporcionar un conjunto de credenciales de acceso a AWS junto con la llamada. Estas
credenciales determinan si la persona que llama tiene los permisos adecuados para realizar la llamada. Si
las credenciales no cubren los permisos adecuados, la llamada no se realiza correctamente.

Existen varias formas de proporcionar credenciales a un entorno. En la tabla siguiente se describen


algunos enfoques.

Tipo de entorno Enfoque

EC2 Use credenciales temporales administradas de


AWS.

Recomendamos este enfoque para un entorno de


EC2. Las credenciales temporales administradas
de AWS administran las credenciales de acceso
de AWS en su entorno de EC2 en su nombre,

81
AWS Cloud9 Guía del usuario
Llamar a los servicios de AWS desde un entorno

Tipo de entorno Enfoque


al mismo tiempo que aplican las prácticas
recomendadas de seguridad de AWS.

Si utiliza un entorno de EC2, puede omitir el resto


de este tema. Esto se debe a que las credenciales
temporales administradas de AWS ya se han
configurado automáticamente en el entorno.

Para obtener más información, consulte


Credenciales temporales administradas de
AWS (p. 569).

EC2 Aadjunte un perfil de instancias de IAM a la


instancia.

Solo debe usar este enfoque si por alguna


razón no puede utilizar las credenciales
temporales administradas de AWS. Al igual
que las credenciales temporales administradas
de AWS, un perfil de instancias administra las
credenciales de acceso de AWS en su nombre.
Sin embargo, debe crear, administrar y adjuntar el
perfil de instancias a la instancia de Amazon EC2
manualmente.

Para ver instrucciones, consulte la sección sobre


la creación y uso de un perfil de instancia para
administrar credenciales temporales (p. 83).

EC2 o SSH Almacene las credenciales de acceso de AWS


permanentes en el entorno.

Este enfoque es menos seguro que el uso de


credenciales de acceso de AWS temporales. Sin
embargo, es el único enfoque admitido para un
entorno de SSH.

Para ver instrucciones, consulte la sección sobre


creación y almacenamiento de credenciales de
acceso permanentes en un entorno (p. 86).

EC2 o SSH Inserte las credenciales de acceso de AWS


permanentes directamente en el código.

No aconsejamos este enfoque, ya que no respeta


las prácticas recomendadas de seguridad de AWS.

Dado que no se aconseja, no se cubre en este


tema.

82
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales

Creación y uso de un perfil de instancias para


administrar credenciales temporales
Note

No puede utilizar este procedimiento para un entorno de desarrollo de SSH de AWS Cloud9. En
su lugar, pase a la sección Crear y almacenar las credenciales de acceso permanentes en un
entorno (p. 86).
Le recomendamos que utilice credenciales temporales administradas de AWS en lugar de
un perfil de instancias. Siga estas instrucciones solo si por alguna razón no puede utilizar
las credenciales temporales administradas de AWS. Para obtener más información, consulte
Credenciales temporales administradas de AWS (p. 569).

En este procedimiento se utilizan IAM y Amazon EC2 para crear y adjuntar un perfil de instancias de
IAM a la instancia de Amazon EC2 que se conecta a su entorno. Este perfil de instancias administra las
credenciales temporales en su nombre. En este procedimiento, se supone que ya ha creado un entorno en
AWS Cloud9. Para crear un entorno, consulte Creación de un entorno (p. 53).

Puede completar estas tareas con las consolas de IAM y de Amazon EC2 (p. 83) o la interfaz de línea
de comandos de AWS (AWS CLI) (p. 84).

Crear un perfil de instancias con la consola de IAM


Note

Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de
instancias a una instancia con la consola de Amazon EC2 (p. 85).

1. Inicie sesión en la consola de IAM en https://console.aws.amazon.com/iam.

Para este paso, se recomienda iniciar sesión con credenciales de nivel de administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, seleccione Roles.
Note

No puede utilizar la consola de IAM para crear un perfil de instancias por sí sola. Debe crear un
rol de IAM que tenga un perfil de instancias.
3. Elija Create role (Crear rol).
4. En la página Select type of trusted entity (Seleccionar tipo de entidad de confianza), con AWS service
(Servicio de AWS) ya elegido, en Choose the service that will use this role (Elegir el servicio que utilizará
este rol), elija EC2.
5. En Select your use case (Seleccionar su caso de uso), elija EC2.
6. Elija Next: Permissions (Siguiente: permisos).
7. En la página Attach permissions policies (Adjuntar políticas de permisos), en la lista de políticas,
seleccione la casilla junto a AdministratorAccess y, a continuación, elija Next: Review (Siguiente:
Revisión).
Note

La política AdministratorAccess permite el acceso sin restricciones a todas las acciones y


recursos de AWS de su cuenta de AWS. Utilícelo solo con fines de experimentación. Para
obtener más información, consulte Políticas de IAM en la Guía del usuario de IAM.
8. En la página Review (Revisar), en Role Name (Nombre de rol), escriba un nombre para el rol (por
ejemplo, my-demo-cloud9-instance-profile).

83
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales

9. Elija Create Role (Crear rol).

Avance hasta llegar a Asociar un perfil de instancia a una instancia con la consola de Amazon
EC2 (p. 85).

Crear un perfil de instancias con AWS CLI


Note

Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de
instancias a una instancia con AWS CLI (p. 86).
Para este tema le recomendamos que configure AWS CLI con las credenciales de nivel de
administrador de IAM de su cuenta de AWS. Si no puede hacerlo, consulte con el administrador
de su cuenta de AWS.
Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

1. Defina una relación de confianza en AWS para el rol de IAM que requiere el perfil de instancias.
Para hacerlo, cree y guarde un archivo con el contenido siguiente (por ejemplo, my-demo-cloud9-
instance-profile-role-trust.json).

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}

2. Usando la línea de comandos o terminal, cambie al directorio en el que acaba de guardar este archivo.
3. Cree un rol de IAM para el perfil de instancias. Para ello, ejecute el comando create-role de IAM,
y especifique un nombre para el nuevo rol de IAM (por ejemplo, my-demo-cloud9-instance-
profile-role) y el nombre del archivo que acaba de guardar.

aws iam create-role --role-name my-demo-cloud9-instance-profile-role --assume-role-


policy-document file://my-demo-cloud9-instance-profile-role-trust.json

4. Adjunte los permisos de acceso de AWS al rol de IAM del perfil de instancias. Para ello, ejecute
el comando attach-role-policy de IAM, y especifique el nombre del rol de IAM existente
y el nombre de recurso de Amazon (ARN) de la política administrada de AWS denominada
AdministratorAccess.

aws iam attach-role-policy --role-name my-demo-cloud9-instance-profile-role --policy-arn


arn:aws:iam::aws:policy/AdministratorAccess

84
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales

Note

La política AdministratorAccess permite el acceso sin restricciones a todas las acciones y


recursos de AWS de su cuenta de AWS. Utilícelo solo con fines de experimentación. Para
obtener más información, consulte Políticas de IAM en la Guía del usuario de IAM.
5. Cree el perfil de instancia. Para ello, ejecute el comando create-instance-profile de IAM,
especificando un nombre para el nuevo perfil de instancia (por ejemplo, my-demo-cloud9-instance-
profile).

aws iam create-instance-profile --instance-profile-name my-demo-cloud9-instance-profile

6. Adjunte el rol de IAM al perfil de instancias. Para ello, ejecute el perfil add-role-to-instance-
profile de IAM, y especifique los nombres del rol de IAM y el perfil de instancias existentes.

aws iam add-role-to-instance-profile --role-name my-demo-cloud9-instance-profile-role --


instance-profile-name my-demo-cloud9-instance-profile

Diríjase a Crear un perfil de instancias con AWS CLI (p. 84).

Adjuntar un perfil de instancias a una instancia con la consola de


Amazon EC2
1. Inicie sesión en la consola de Amazon EC2 en https://console.aws.amazon.com/ec2.

En este paso, le recomendamos que inicie sesión con las credenciales de nivel de administrador de IAM
en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, asegúrese de que el selector de regiones muestra la región de AWS que
coincide con la de su entorno. Por ejemplo, si creó el entorno en la región EE. UU. Este (Ohio), elija EE.
UU. Este (Ohio) en el selector de regiones también.
3. Elija el enlace Running Instances (Ejecutar instancias) o, en el panel de navegación, expanda Instances
(Instancias) y, a continuación, elija Instances (Instancias).
4. En la lista de instancias, elija la instancia con el nombre que incluya el nombre de su entorno. Por
ejemplo, si el nombre del entorno es my-demo-environment, elija la instancia con el nombre que
incluya my-demo-environment.
5. Seleccione Actions (Acciones), Instance Settings (Configuración de instancia), Attach/Replace IAM Role
(Asociar o reemplazar rol de IAM).
Note

Aunque está adjuntando un rol a la instancia, el rol contiene un perfil de instancia.


6. En la página Attach/Replace IAM Role (Asociar o reemplazar rol de IAM), en IAM role (Rol de IAM),
seleccione el nombre del rol que identifica o que creó en el procedimiento anterior y haga clic en Apply
(Aplicar).
7. De vuelta al entorno, use AWS CLI para ejecutar el comando aws configure o aws-shell para
ejecutar el comando configure. No especifique ningún valor para AWS Access Key ID (ID de clave
de acceso de AWS) o AWS Secret Access Key (Clave de acceso secreta de AWS). Presione Enter
después de cada indicación. En Default region name (Nombre de región predeterminado), especifique
la región de AWS más cercana a usted o a la región en la que se encuentran sus recursos de AWS.
Por ejemplo, us-east-2 para la región EE. UU. Este (Ohio). Para ver una lista de las regiones,
consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.
Opcionalmente, especifique un valor para Default output format (Formato de salida predeterminado) (por
ejemplo, json).

85
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno

Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI, aws-shell o
ambos para llamar a los servicios de AWS, consulte la muestra de AWS CLI y aws-shell (p. 390). Para
llamar a los servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).

Adjuntar un perfil de instancias a una instancia con AWS CLI


Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

1. Ejecute el comando associate-iam-instance-profile de Amazon EC2, y especifique el nombre


del perfil de instancias, el ID y el ID de región de AWS de la instancia de Amazon EC2 para el entorno.

aws ec2 associate-iam-instance-profile --iam-instance-profile Name=my-demo-cloud9-


instance-profile --region us-east-2 --instance-id i-12a3b45678cdef9a0

En el comando anterior, reemplace us-east-2 por el ID de la región de i-12a3b45678cdef9a0 de la


instancia y AWS por el ID de la instancia.

Para obtener el ID de la instancia, podría por ejemplo ejecutar el comando describe-instances de


Amazon EC2, y especificar el nombre y el ID de la región de AWS del entorno.

aws ec2 describe-instances --region us-east-2 --filters Name=tag:Name,Values=*my-


environment* --query "Reservations[*].Instances[*].InstanceId" --output text

En el comando anterior, reemplace us-east-2 por el ID de la región de AWS de la instancia y my-


environment por el nombre del entorno.
2. De vuelta al entorno, use AWS CLI para ejecutar el comando aws configure o aws-shell para
ejecutar el comando configure. No especifique ningún valor para AWS Access Key ID (ID de clave
de acceso de AWS) o AWS Secret Access Key (Clave de acceso secreta de AWS). Presione Enter
después de cada indicación. En Default region name (Nombre de región predeterminado), especifique
la región de AWS más cercana a usted o a la región en la que se encuentran sus recursos de AWS.
Por ejemplo, us-east-2 para la región EE. UU. Este (Ohio). Para ver una lista de las regiones,
consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.
Opcionalmente, especifique un valor para Default output format (Formato de salida predeterminado) (por
ejemplo, json).

Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI, aws-shell o
ambos para llamar a los servicios de AWS, consulte la muestra de AWS CLI y aws-shell (p. 390). Para
llamar a los servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).

Crear y almacenar las credenciales de acceso


permanente en un entorno
Note

Si utiliza un entorno de desarrollo de EC2 de AWS Cloud9, le recomendamos que utilice


las credenciales temporales administradas de AWS en lugar de las credenciales de acceso
permanente de AWS. Para trabajar con credenciales temporales administradas de AWS, consulte
Credenciales temporales administradas por AWS (p. 569).

86
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno

En esta sección, se utiliza AWS Identity and Access Management (IAM) para generar un conjunto de
credenciales permanentes que AWS CLI, aws-shell o el código pueden utilizar para llamar a servicios de
AWS. Este conjunto incluye un ID de clave de acceso de AWS y una clave de acceso secreta de AWS, que
son únicos de su usuario en su cuenta de AWS. Si ya tiene un ID de clave de acceso de AWS y una clave
de acceso secreta de AWS, anote esas credenciales y pase directamente a Almacenar las credenciales de
acceso permanentes en un entorno (p. 88).

Puede crear un conjunto de credenciales permanentes con la consola de IAM (p. 87) o AWS
CLI (p. 87).

Crear credenciales de acceso permanentes con la consola


1. Inicie sesión en la consola de IAM en https://console.aws.amazon.com/iam.

En este paso, le recomendamos que inicie sesión con las credenciales de nivel de administrador de IAM
en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, seleccione Users (Usuarios).
3. En la lista de usuarios, elija el nombre del usuario que ha creado o identificado en Team Setup
(Configuración de equipo) (p. 9).
4. Seleccione la pestaña de credenciales de seguridad.
5. En Access keys (Clave de acceso), elija Create access key (Crear clave de acceso).
6. En la página Create access key (Crear clave de acceso), elija Show (Mostrar) y tome nota de los
valores de Access key ID (ID de clave de acceso) y Secret access key (Clave de acceso secreta).
Le recomendamos también que elija Download.csv file (Descargar archivo .csv) y que guarde estas
credenciales en un lugar seguro.

Pase a la sección Almacenar las credenciales de acceso permanentes en un entorno (p. 88).

Crear credenciales de acceso permanentes con AWS CLI


Note
En esta sección, le recomendamos que configure AWS CLI con las credenciales de nivel de
administrador de IAM de su cuenta de AWS. Si no puede hacerlo, consulte con el administrador
de su cuenta de AWS.
Note
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

Ejecute el comando create-access-key de IAM para crear una clave de acceso de AWS nueva y la
correspondiente clave de acceso secreta de AWS para el usuario.

aws iam create-access-key --user-name MyUser

En el comando anterior, reemplace MyUser por el nombre del usuario.

Guarde los valores AccessKeyId y SecretAccessKey que se muestran en un lugar seguro. Después
de ejecutar el comando create-access-key de IAM, esta es la única vez que puede usar AWS CLI para
ver la clave de acceso secreta de AWS del usuario. Para generar una nueva clave de acceso secreta de
AWS para que el usuario la use más adelante si es necesario, consulte Creación, modificación o consulta
de las claves de acceso (API, CLI, PowerShell) en la Guía del usuario de IAM.

87
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno

Almacenar las credenciales de acceso permanentes en un


entorno
En este procedimiento, se utiliza el IDE de AWS Cloud9 para almacenar las credenciales de acceso
permanentes de AWS en su entorno. En este procedimiento se presupone que ya ha creado un entorno
en AWS Cloud9, que lo ha abierto y que se muestra el IDE de AWS Cloud9 en su navegador web. Para
obtener más información, consulte Creación de un entorno (p. 53) y Apertura de un entorno (p. 78).
Note

El siguiente procedimiento muestra cómo almacenar las credenciales de acceso permanentes


mediante las variables de entorno. Si tiene AWS CLI o aws-shell instalado en el entorno, puede
utilizar el comando aws configure para que AWS CLI o el comando configure para aws-
shell a fin de almacenar las credenciales de acceso permanentes en su lugar. Para obtener
instrucciones, consulte Configuración rápida en la Guía del usuario de AWS Command Line
Interface.

1. Con el entorno abierto, en el IDE de AWS Cloud9, comience una nueva sesión del terminal si no hay
ninguna iniciada. Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window
(Ventana), New Terminal (Nuevo terminal).
2. Ejecute cada uno de los siguientes comandos, uno por uno, para definir las variables de
entorno locales que representan las credenciales de acceso permanentes. En estos comandos,
después de AWS_ACCESS_KEY_ID:, escriba el ID de clave de acceso de AWS. Después
de AWS_SECRET_ACCESS_KEY, escriba la clave de acceso secreta de AWS. Después de
AWS_DEFAULT_REGION_ID, escriba el identificador de la región de AWS asociada a la región de AWS
más cercana (o su región de AWS preferida). Para obtener una lista de los identificadores disponibles,
consulte la sección Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web
Services. Por ejemplo, para la región EE. UU. Este (Ohio), usaría us-east-2.

export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export AWS_DEFAULT_REGION=

3. Tenga en cuenta que las variables de entorno anteriores solo son válidas para la sesión de terminal
actual. Para que estas variables de entorno estén disponibles en todas las sesiones de terminal, debe
añadirlas al archivo de perfil de usuario de shell como variables de entorno de usuario, tal y como se
indica a continuación.
a. En la ventana Environment (Entorno) del IDE, elija el icono del engranaje y, a continuación, elija
Show Home in Favorites (Mostrar inicio en favoritos). Repita este paso y elija también Show Hidden
Files (Mostrar archivos ocultos).
b. Abra el archivo ~/.bashrc.
c. Escriba o pegue el siguiente código al final del archivo. En estos comandos, después
de AWS_ACCESS_KEY_ID:, escriba el ID de clave de acceso de AWS. Después de
AWS_SECRET_ACCESS_KEY, escriba la clave de acceso secreta de AWS. Después de
AWS_DEFAULT_REGION_ID, escriba el identificador de la región de AWS asociada a la región de
AWS más cercana (o su región de AWS preferida). Para obtener una lista de los identificadores
disponibles, consulte la sección Regiones y puntos de enlace de AWS en la Referencia general de
Amazon Web Services. Por ejemplo, para la región EE. UU. Este (Ohio), usaría us-east-2.

export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export AWS_DEFAULT_REGION=

d. Guarde el archivo.
e. Dé el origen del ~/.bashrc archivo para cargar estas nuevas variables de entorno.

88
AWS Cloud9 Guía del usuario
Modificación de la configuración del entorno

. ~/.bashrc

Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI o aws-shell
para llamar a los servicios de AWS, consulte Muestra de AWS CLI y aws-shell (p. 390). Para llamar a los
servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).

Modificación de la configuración del entorno en


AWS Cloud9
Puede cambiar las preferencias o la configuración de un entorno de desarrollo de AWS Cloud9.

• Cambiar las preferencias del entorno (p. 89)


• Cambiar la configuración del entorno con la consola (p. 89)
• Cambiar la configuración del entorno mediante código (p. 92)

Cambiar las preferencias del entorno


1. Abra el entorno cuya configuración desea cambiar. Para abrir un entorno, consulte Abrir un
entorno (p. 78).
2. En el IDE de AWS Cloud9, en la barra de menús, elija AWS Cloud9, Preferences (Preferencias).
3. En la ventana Preferences (Preferencias), elija Project Settings (Configuración del proyecto).
4. Cambie los valores de configuración disponibles según desee. Entre estos se incluyen valores como
Code Editor (Ace) (Editor de código (Ace)) y Find in Files (Buscar en archivos).

Note

Para obtener más información, consulte Project Setting Changes You Can Make (p. 189).

Cambiar la configuración del entorno con la consola


1. Inicie sesión en la consola de AWS Cloud9 como sigue:
• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
2. En la barra de navegación superior, elija la región de AWS en la que se encuentra el entorno.

89
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno con la consola

3. En la lista de entornos, en el entorno cuya configuración desea cambiar, realice una de las siguientes
operaciones.
• Elija el título de la tarjeta del entorno. Después, en la página siguiente, elija Edit (Editar).

• Seleccione la tarjeta del entorno y, a continuación, elija el botón Edit (Editar).

4. Realice sus cambios y elija Save changes (Guardar cambios).

90
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno con la consola

Puede usar la consola de AWS Cloud9 para cambiar los valores de configuración siguientes.
• Para entornos de EC2, Name (Nombre) y Description (Descripción).
• Para entornos de SSH: Name (Nombre), Description (Descripción), User (Usuario), Host (Anfitrión),
Port (Puerto), Environment path (Ruta del entorno) Node.js binary path (Ruta binaria de Node.js) SSH
jump host (Host de salto de SSH).

Para cambiar otros valores de configuración, haga lo siguiente.


• Para entornos de EC2, realice alguna de las siguientes operaciones.
• No puede cambiar Type (Tipo), Security groups (Grupos de seguridad), VPC, Subnet (Subred),
Environment path (Ruta de entorno) ni Environment ARN (ARN del entorno).
• Para Permissions (Permisos) o Number of members (Número de miembros), consulte Cambiar
el rol de acceso de un miembro del entorno (p. 101), Quitar a su usuario (p. 101), Invitar a un
usuario de IAM (p. 96) y Quitar a otro miembro del entorno (p. 103).
• Para EC2 instance type (Tipo de instancia de EC2), Memory (Memoria) o vCPU, consulte Mover o
cambiar el tamaño de un entorno (p. 104).
• Para entornos de SSH, realice alguna de las siguientes operaciones.
• No puede cambiar Type (Tipo) ni Environment ARN (ARN del entorno).
• Para Permissions (Permisos) o Number of members (Número de miembros), consulte Cambiar
el rol de acceso de un miembro del entorno (p. 101), Quitar a su usuario (p. 101), Invitar a un
usuario de IAM (p. 96) y Quitar a otro miembro del entorno (p. 103).

Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.

• En la barra de navegación lateral, elija una o varias de las siguientes acciones.


• Elija Your environments (Sus entornos) para mostrar todos los entornos que son propiedad de su
entidad de AWS en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Shared with you (Compartido con usted) para mostrar todos los entornos a los que su entidad de
AWS se ha invitado en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Account environments (Entornos de cuenta) para mostrar todos los entornos de la región de AWS
y la cuenta de AWS seleccionadas para las que su entidad de AWS tiene permisos de visualización.

• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos en
el ámbito actual.

• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.

91
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno mediante código

• En la barra de navegación superior, elija una región de AWS diferente.

Cambiar la configuración del entorno mediante código


Para cambiar la configuración de un entorno en AWS Cloud9 mediante código, llame a la operación de
actualización del entorno de AWS Cloud9, tal y como se indica a continuación.

AWS CLI update-environment

AWS SDK for C++ UpdateEnvironmentRequest,


UpdateEnvironmentResult

AWS SDK for Go UpdateEnvironment, UpdateEnvironmentRequest,


UpdateEnvironmentWithContext

AWS SDK for Java UpdateEnvironmentRequest,


UpdateEnvironmentResult

AWS SDK for JavaScript updateEnvironment

AWS SDK for .NET UpdateEnvironmentRequest,


UpdateEnvironmentResponse

AWS SDK for PHP updateEnvironment

AWS SDK for Python (Boto) update_environment

AWS SDK for Ruby update_environment

AWS Tools for Windows PowerShell Update-C9Environment

API de AWS Cloud9 UpdateEnvironment

Trabajo con entornos compartidos en AWS Cloud9


Un entorno compartido es un entorno de desarrollo de AWS Cloud9 al que se ha invitado a participar a
varios usuarios. En este tema se ofrecen instrucciones para compartir un entorno en AWS Cloud9 y sobre
cómo participar en un entorno compartido.

92
AWS Cloud9 Guía del usuario
Contenido

Para invitar a un usuario a que participe en un entorno de su propiedad, siga uno de estos procedimientos,
dependiendo del tipo de usuario al que desee invitar.

Tipo de usuario Siga estos procedimientos

Un usuario en la misma cuenta de AWS que el Invitar a un usuario en la misma cuenta que el
entorno entorno (p. 96)

Un administrador de AWS Cloud9 en la misma Para invitar al administrador de AWS Cloud9,


cuenta de AWS que el entorno, específicamente: consulte Invitar a un usuario en la misma cuenta
que el entorno (p. 96).
• El usuario raíz de la cuenta de AWS.
• Un usuario administrador de IAM. Para que el administrador de AWS Cloud9 se invite
a sí mismo (o a otros usuarios de la misma cuenta
• Un usuario con la política administrada de AWS
de AWS), consulte Hacer que un administrador de
AWSCloud9Administrator adjunta.
AWS Cloud9 en la misma cuenta que el entorno se
invite a sí mismo o a otros usuarios (p. 97).

Contenido
• Escenarios de uso de entornos compartidos (p. 93)
• Acerca de los roles de acceso de los miembros del entorno (p. 94)
• Invitar a un usuario en la misma cuenta que el entorno (p. 96)
• Hacer que un administrador de AWS Cloud9 en la misma cuenta que la del entorno se invite a sí mismo
o a otros usuarios (p. 97)
• Abrir un entorno compartido (p. 98)
• Ver una lista de miembros del entorno (p. 99)
• Abrir el archivo activo de un miembro del entorno (p. 100)
• Abrir el menú Abrir archivo de un miembro del entorno (p. 100)
• Ir al cursor activo de un miembro del entorno (p. 100)
• Conversar con otros miembros del entorno (p. 100)
• Ver mensajes de chat en un entorno compartido (p. 101)
• Eliminar un mensaje de chat de un entorno compartido (p. 101)
• Eliminar todos los mensaje de chat de un entorno compartido (p. 101)
• Cambiar el rol de acceso de un miembro del entorno (p. 101)
• Quitar un usuario de un entorno compartido (p. 102)
• Quitar otro miembro del entorno (p. 103)
• Prácticas recomendadas para compartir entornos (p. 104)

Casos de uso de entornos compartidos


Un entorno compartido es idóneo para lo siguiente.

• Programación por parejas (también conocida como programación por pares). Es aquella en que dos
usuarios trabajan juntos en el mismo código en un único entorno. En la programación en parejas,
normalmente un usuario escribe código de programación mientras que el otro observa el código que
se escribe. El observador ofrece información y comentarios inmediatos al escritor del código. Estas
posiciones cambian frecuentemente durante un proyecto. Sin un entorno compartido, los equipos de
programación en parejas se sientan frente a una sola máquina y únicamente uno de ellos puede escribir

93
AWS Cloud9 Guía del usuario
Acerca de los roles de acceso de los miembros del entorno

código a la vez. Con un entorno compartido, ambos usuarios se sientan frente a su máquina y escribir
código al mismo tiempo, incluso si se encuentran en oficinas físicas diferentes.
• Clases de informática. Resulta útil cuando los profesores o los ayudantes de enseñanza quieren obtener
acceso al entorno de un alumno para corregir deberes o resolver problemas con sus entornos en
tiempo real. Los alumnos pueden trabajar con sus compañeros en proyectos de deberes compartidos y
escribir código juntos en un único entorno en tiempo real. Pueden hacerlo a pesar de estar en diferentes
ubicaciones con sistemas operativos y tipos de navegador web diferentes.
• Cualquier otra situación en la que varios usuarios necesiten colaborar en el mismo código en tiempo
real.

Acerca de los roles de acceso de los miembros del


entorno
Antes de compartir un entorno o de participar en un entorno compartido en AWS Cloud9, es preciso
comprender los niveles de los permisos de acceso para un entorno compartido. Estos niveles de permisos
se denominan roles de acceso de los miembros del entorno.

Un entorno compartido en AWS Cloud9 ofrece tres roles de acceso de miembro del entorno: propietario,
lectura/escritura y solo lectura.

• Un propietario tiene control total sobre un entorno. Cada entorno tiene un único propietario que es el
creador del entorno. Un propietario puede realizar las siguientes acciones.
• Agregar, modificar y eliminar miembros del entorno
• Abrir, ver y modificar archivos
• Ejecutar código
• Cambiar la configuración del entorno de
• Conversar con otros miembros
• Eliminar mensajes de chat

En el IDE de AWS Cloud9, un propietario del entorno se muestra con acceso de lectura y escritura.
• Un miembro con acceso de lectura/escritura puede llevar a cabo las siguientes acciones.
• Abrir, ver y modificar archivos
• Ejecutar código
• Cambiar varios valores de configuración del entorno desde el IDE de AWS Cloud9
• Conversar con otros miembros
• Eliminar mensajes de chat

En el IDE de AWS Cloud9, los miembros con acceso de lectura/escritura se muestran con acceso de
lectura y escritura.
• Un miembro con acceso de solo lectura puede llevar a cabo las siguientes acciones.
• Abrir y ver archivos
• Conversar con otros miembros
• Eliminar mensajes de chat

En el IDE de AWS Cloud9, los miembros con acceso de solo lectura se muestran con acceso de Solo
lectura.

Para que un usuario pueda convertirse en propietario o miembro de un entorno, debe cumplir alguno de los
siguientes criterios.

• Es un usuario raíz de la cuenta de AWS.

94
AWS Cloud9 Guía del usuario
Acerca de los roles de acceso de los miembros del entorno

• Es un usuario administrador de IAM. Para obtener más información, consulte Creación del primer grupo
y usuario administrador de IAM en la Guía del usuario de IAM.
• Es un usuario que pertenece a un grupo de IAM, un usuario que asume un rol o un usuario federado que
asume un rol, y ese grupo o rol tiene la política administrada por AWS de AWSCloud9Administrator
o AWSCloud9User (o AWSCloud9EnvironmentMember, para ser un miembro solamente) adjunta.
Para obtener más información, consulte Políticas administradas (predefinidas) de AWS (p. 550).
• Para adjuntar una de las políticas administradas anteriores a un grupo de IAM, puede utilizar la AWS
Management Console (p. 95) o AWS Command Line Interface (AWS CLI) (p. 95) como se
describe en los siguientes procedimientos.
• Para crear un rol en IAM con una de las políticas administradas anteriores para que la asuma un
usuario o un usuario federado, consulte Creación de roles en la Guía del usuario de IAM. Para hacer
que un usuario o un usuario federado asuma el rol, consulte la cobertura de la asunción de roles en
Uso de las funciones de IAM en la Guía del usuario de IAM.

Adjuntar una política administrada de AWS para AWS Cloud9 a


un grupo mediante la consola
1. Si todavía no ha iniciado sesión en la AWS Management Console, hágalo ahora.

Para este paso, se recomienda iniciar sesión con credenciales de nivel de administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. Elija Groups (Grupos).
4. Elija el nombre del grupo.
5. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
6. En la lista con los nombres de las políticas, seleccione una de las siguientes casillas.
• AWSCloud9User (preferida) o AWSCloud9Administrator para habilitar a cada usuario del grupo como
un propietario del entorno
• AWSCloud9EnvironmentMember para habilitar a cada usuario del grupo como miembro únicamente

(Si no ve uno de estos nombres de política en la lista, escríbalo en el cuadro Search (Búsqueda) para
mostrarlo).
7. Elija Asociar política.

Adjuntar una política administrada de AWS para AWS Cloud9 a


un grupo mediante AWS CLI
Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

Ejecute el comando attach-group-policy de IAM para adjuntar la política administrada de AWS para
AWS Cloud9 al grupo, y especifique el nombre del grupo y el nombre de recurso de Amazon (ARN) de la
política:

95
AWS Cloud9 Guía del usuario
Invitar a un usuario en la misma cuenta que el entorno

aws iam attach-group-policy --group-name MyGroup --policy-arn arn:aws:iam::aws:policy/


POLICY_NAME

En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace POLICY_NAME por el
nombre de una de las siguientes políticas administradas de AWS.

• AWSCloud9User (preferida) o AWSCloud9Administrator para habilitar a cada usuario del grupo


como un propietario del entorno
• AWSCloud9EnvironmentMember para habilitar a cada usuario del grupo como miembro únicamente

Invitar a un usuario en la misma cuenta que el entorno


Siga las instrucciones de esta sección para compartir un entorno de desarrollo de AWS Cloud9 de su
propiedad en la cuenta de AWS con un usuario en la misma cuenta.

1. Si el usuario al que desea invitar no es uno de los siguientes tipos de usuarios, asegúrese de que ya
tenga el rol de acceso de miembro de entorno correspondiente. Para obtener instrucciones, consulte
Acerca de los roles de acceso de los miembros del entorno (p. 94).
• El usuario raíz de la cuenta de AWS.
• Un usuario administrador de IAM.
• Un usuario que pertenece a un grupo de IAM, un usuario que asume un rol o un usuario
federado que asume un rol, y ese grupo o rol tiene la política administrada por AWS de
AWSCloud9Administrator adjunta.
2. Abra el entorno de su propiedad al que desea invitar al usuario, si este aún no está abierto.
3. En la barra de menús del IDE de AWS Cloud9, realice una de las siguientes operaciones.
• Elija Window, Share (Ventana, Compartir).
• Elija Share (Compartir), situado junto al icono de engranaje Preferences (Preferencias).

4. En el cuadro de diálogo Share this environment (Compartir este entorno), en Invite Members (Invitar a
miembros), escriba uno de los siguientes datos
• Para invitar a un Usuario de IAM, ingrese el nombre del usuario.
• Para invitar al usuario raíz de la cuenta de AWS, escriba arn:aws:iam::123456789012:root y
reemplace 123456789012 por el ID de su cuenta de AWS.
• Para invitar a un usuario con un rol asumido o a un usuario federado con un rol asumido, escriba
arn:aws:sts::123456789012:assumed-role/MyAssumedRole/MyAssumedRoleSession y
reemplace 123456789012 por el ID de su cuenta de AWS, MyAssumedRole por el nombre del rol
asumido y MyAssumedRoleSession por el nombre de la sesión del rol asumido.
5. Para que este usuario sea un miembro de solo lectura, elija R. Para que sea de lectura/escritura, elija
RW.

96
AWS Cloud9 Guía del usuario
Hacer que un administrador de AWS Cloud9
en la misma cuenta que la del entorno
se invite a sí mismo o a otros usuarios
6. Elija Invite.
Note

Si hace que este usuario sea miembro de lectura/escritura, se muestra un cuadro de diálogo
con información sobre la posibilidad de que se pongan en peligro las credenciales de seguridad
de AWS. La información siguiente proporciona más datos sobre este problema.
Comparta un entorno solo con personas de confianza.
Un miembro de lectura/escritura podría utilizar el código de AWS CLI, aws-shell o el SDK de
AWS en el entorno para emprender acciones en AWS en su nombre. Además, si almacena las
credenciales permanentes de acceso de AWS en el entorno, ese miembro podría copiarlas y
utilizarlas fuera del entorno.
Para solucionar este problema no basta con eliminar las credenciales permanentes de acceso
de AWS del entorno y usar credenciales de acceso temporales de AWS en lugar. Disminuye
la posibilidad de que el miembro copie esas credenciales temporales y las use fuera del
entorno (puesto que esas credenciales temporales funcionarán durante un tiempo limitado).
Sin embargo, las credenciales temporales siguen habilitando a un miembro de lectura/escritura
para emprender acciones en AWS desde el entorno en su nombre.
7. Contacte con el usuario para informarle de que puede abrir este entorno y comenzar a utilizarlo.

Hacer que un administrador de AWS Cloud9 en la


misma cuenta que la del entorno se invite a sí mismo
o a otros usuarios
Note

Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).

Los siguientes tipos de usuarios pueden invitarse a sí mismos (o a otros usuarios de la misma cuenta de
AWS) a cualquier entorno en la misma cuenta.

• El usuario raíz de la cuenta de AWS.


• Un usuario administrador de IAM.
• Un usuario que pertenece a un grupo de IAM, un usuario que asume un rol o un usuario federado que
asume un rol, y ese grupo o rol tiene la política administrada por AWS de AWSCloud9Administrator
adjunta.

Si el usuario invitado no es uno de los tipos de usuarios anteriores, asegúrese de que ya tenga el rol de
acceso de miembro de entorno correspondiente. Para obtener instrucciones, consulte Acerca de los roles
de acceso de los miembros del entorno (p. 94).

Para invitar al usuario, use AWS CLI o aws-shell para ejecutar el comando create-environment-
membership de AWS Cloud9.

aws cloud9 create-environment-membership --environment-id 12a34567b8cd9012345ef67abcd890e1


--user-arn USER_ARN --permissions PERMISSION_LEVEL

En el comando anterior, reemplace 12a34567b8cd9012345ef67abcd890e1 por el ID del entorno y


PERMISSION_LEVEL por read-write o read-only. Reemplace USER_ARN por uno de los siguientes:

97
AWS Cloud9 Guía del usuario
Abrir un entorno compartido

• Para invitar a un usuario de IAM, escriba arn:aws:iam::123456789012:user/MyUser y reemplace


123456789012 por su ID de cuenta de AWS y MyUser por el nombre del usuario.
• Para invitar al usuario raíz de la cuenta de AWS, escriba arn:aws:iam::123456789012:root y
reemplace 123456789012 por el ID de su cuenta de AWS.
• Para invitar a un usuario con un rol asumido o a un usuario federado con un rol asumido, escriba
arn:aws:sts::123456789012:assumed-role/MyAssumedRole/MyAssumedRoleSession y
reemplace 123456789012 por el ID de su cuenta de AWS, MyAssumedRole por el nombre del rol
asumido y MyAssumedRoleSession por el nombre de la sesión del rol asumido.

Por ejemplo, para invitar al usuario raíz de la cuenta de AWS para el ID de cuenta 123456789012 a un
entorno con el ID 12a34567b8cd9012345ef67abcd890e1 como miembro de lectura/escritura, ejecute el
siguiente comando.

aws cloud9 create-environment-membership --environment-id 12a34567b8cd9012345ef67abcd890e1


--user-arn arn:aws:iam::123456789012:root --permissions read-write

Note

Si utiliza el shell de AWS, omita el prefijo aws de los comandos anteriores.

Abrir un entorno compartido


Para abrir un entorno compartido, utilice el panel de AWS Cloud9. A continuación, utilice el IDE de AWS
Cloud9 para hacer cosas en un entorno compartido, por ejemplo, trabajar con archivos y conversar con
otros miembros.

1. Asegúrese de que la política de acceso correspondiente se adjunta al grupo o el rol de su usuario.


Para obtener más información, consulte Acerca de los roles de acceso de los miembros del
entorno (p. 94).
2. Inicie sesión en la consola de AWS Cloud9 como sigue:
• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
• Si es un estudiante en un aula, pida a su instructor las instrucciones de inicio de sesión.
3. Abra el entorno compartido desde el panel de AWS Cloud9. Para obtener más información, consulte
Apertura de un entorno en AWS Cloud9 (p. 78).

Puede utilizar la ventana Collaborate (Colaborar) para interactuar con otros miembros, tal y como se
describe en el resto de este tema.
Note

Si la ventana Collaborate (Colaborar) no está visible, elija el botón Collaborate (Colaborar). Si el


botón Collaborate (Colaborar) no está visible, elija Window, Collaborate (Ventana, Colaborar) en
la barra de menús.

98
AWS Cloud9 Guía del usuario
Ver una lista de miembros del entorno

Ver una lista de miembros del entorno


Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), expanda Environment Members
(Miembros del entorno), si la lista de miembros no está visible.

Un círculo junto a cada miembro indica su estado en línea, tal y como se indica a continuación.

• Los miembros activos tienen un círculo verde.


• Los miembros sin conexión tienen un círculo gris.
• Los miembros inactivos tienen un círculo naranja.

Para utilizar código para obtener una lista de miembros del entorno, llame a la operación de AWS Cloud9
para describir suscripciones al entorno, tal y como se indica a continuación.

AWS CLI describe-environment-memberships

AWS SDK for C++ DescribeEnvironmentMembershipsRequest,


DescribeEnvironmentMembershipsResult

AWS SDK for Go DescribeEnvironmentMemberships,


DescribeEnvironmentMembershipsRequest,
DescribeEnvironmentMembershipsWithContext

AWS SDK for Java DescribeEnvironmentMembershipsRequest,


DescribeEnvironmentMembershipsResult

AWS SDK for JavaScript describeEnvironmentMemberships

AWS SDK for .NET DescribeEnvironmentMembershipsRequest,


DescribeEnvironmentMembershipsResponse

AWS SDK for PHP describeEnvironmentMemberships

99
AWS Cloud9 Guía del usuario
Abrir el archivo activo de un miembro del entorno

AWS SDK for Python (Boto) describe_environment_memberships

AWS SDK for Ruby describe_environment_memberships

AWS Tools for Windows PowerShell Get-C9EnvironmentMembershipList

API de AWS Cloud9 DescribeEnvironmentMemberships

Abrir el archivo activo de un miembro del entorno


Con el entorno compartido abierto, en la barra de menús, elija el nombre del miembro. A continuación, elija
Open Active File (Abrir archivo activo).

Abrir el archivo de un miembro del entorno


1. Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), expanda Environment
Members (Miembros del entorno), si la lista de miembros no está visible.
2. Expanda el nombre del usuario cuyo abrir archivo desea abrir en el entorno.
3. Haga doble clic en el nombre del archivo que desea abrir.

Ir al cursor activo de un miembro del entorno


1. Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), expanda Environment
Members (Miembros del entorno), si la lista de miembros no está visible.
2. Haga clic con el botón derecho en el nombre del miembro y, a continuación, elija Show Location
(Mostrar ubicación).

Conversar con otros miembros del entorno


Con el entorno compartido abierto, en la parte inferior de la ventana Collaborate (Colaborar), en Enter your
message here (Ingrese su mensaje aquí), ingrese el mensaje de conversación y, a continuación, pulse
Enter.

100
AWS Cloud9 Guía del usuario
Ver mensajes de conversación en un entorno compartido

Ver mensajes de conversación en un entorno


compartido
Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), expanda Group Chat
(Conversación de grupo), si la lista de los mensajes de conversación no está visible.

Eliminar mensajes de conversación de un entorno


compartido
Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), haga clic con el botón derecho
en Group Chat (Conversación de grupo) y, a continuación, elija Delete Message (Eliminar mensaje).
Note

Cuando elimina un mensaje de conversación, se elimina del entorno para todos los miembros.

Eliminar todos los mensajes de conversación de un


entorno compartido
Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), haga clic con el botón derecho
en cualquier parte de Group Chat (Conversación de grupo) y, a continuación, elija Clear history (Limpiar
historial).
Note

Cuando elimina todos los mensajes de conversación, se eliminan del entorno para todos los
miembros.

Cambiar el rol de acceso de un miembro del entorno


1. Si todavía no está abierto, abra el entorno de su propiedad que contiene el miembro cuyo rol de
acceso desea cambiar. Para obtener más información, consulte Apertura de un entorno en AWS
Cloud9 (p. 78).

101
AWS Cloud9 Guía del usuario
Quitar un usuario de un entorno compartido

2. En la ventana Collaborate (Colaborar), expanda Environment Members (Miembros del entorno), si la


lista de miembros no está visible.
3. Realice una o más de las siguientes acciones:
• Junto al nombre del miembro cuyo rol de acceso desea cambiar, elija R o RW para que este miembro
sea propietario o de lectura/escritura, respectivamente.
• Para cambiar un miembro de lectura/escritura a de solo lectura, haga clic con el botón derecho en el
nombre del miembro y, a continuación, elija Revoke Write Access (Revocar acceso de escritura).
• Para cambiar un miembro de solo lectura a de lectura/escritura, haga clic con el botón derecho en el
nombre del miembro y, a continuación, elija Grant Read+Write Access (Conceder acceso de lectura +
escritura).
Note

Si hace que este usuario sea miembro de lectura/escritura, se muestra un cuadro de diálogo
con información sobre la posibilidad de que se pongan en peligro las credenciales de
seguridad de AWS. No convierta un usuario en un miembro de lectura/escritura a menos
que confíe en él para emprender acciones en AWS en su nombre. Para obtener más
información, consulte la nota relacionada en Invitar a un usuario en la misma cuenta que el
entorno (p. 96).

Para utilizar el código para cambiar el rol de acceso de un miembro del entorno, llame a la operación de
AWS Cloud9 para actualizar la pertenencia al entorno, tal y como se indica a continuación.

AWS CLI update-environment-membership

AWS SDK for C++ UpdateEnvironmentMembershipRequest,


UpdateEnvironmentMembershipResult

AWS SDK for Go UpdateEnvironmentMembership,


UpdateEnvironmentMembershipRequest,
UpdateEnvironmentMembershipWithContext

AWS SDK for Java UpdateEnvironmentMembershipRequest,


UpdateEnvironmentMembershipResult

AWS SDK for JavaScript updateEnvironmentMembership

AWS SDK for .NET UpdateEnvironmentMembershipRequest,


UpdateEnvironmentMembershipResponse

AWS SDK for PHP updateEnvironmentMembership

AWS SDK for Python (Boto) update_environment_membership

AWS SDK for Ruby update_environment_membership

AWS Tools for Windows PowerShell Update-C9EnvironmentMembership

API de AWS Cloud9 UpdateEnvironmentMembership

Quitar un usuario de un entorno compartido


Note

No puede eliminar su usuario de un entorno si es el propietario del entorno.


La eliminación de su usuario de un entorno no lo elimina de IAM.

102
AWS Cloud9 Guía del usuario
Quitar otro miembro del entorno

1. Con el entorno compartido abierto, en la ventana Collaborate (Colaborar), expanda Environment


Members (Miembros del entorno), si la lista de miembros no está visible.
2. Realice una de las siguientes acciones.
• Junto a You (Usted), seleccione el icono de papelera.
• Haga clic con el botón derecho en You (Usted) y, a continuación, elija Leave environment (Abandonar
entorno).
3. Cuando se le solicite, elija Leave (Abandonar).

Para utilizar código para eliminar el usuario de un entorno compartido, llame a la operación de AWS
Cloud9 para eliminar la pertenencia al entorno, tal y como se indica a continuación.

AWS CLI delete-environment-membership

AWS SDK for C++ DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResult

AWS SDK for Go DeleteEnvironmentMembership,


DeleteEnvironmentMembershipRequest,
DeleteEnvironmentMembershipWithContext

AWS SDK for Java DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResult

AWS SDK for JavaScript deleteEnvironmentMembership

AWS SDK for .NET DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResponse

AWS SDK for PHP deleteEnvironmentMembership

AWS SDK for Python (Boto) delete_environment_membership

AWS SDK for Ruby delete_environment_membership

AWS Tools for Windows PowerShell Remove-C9EnvironmentMembership

API de AWS Cloud9 DeleteEnvironmentMembership

Quitar otro miembro del entorno


Note

Para eliminar un miembro que no sea su usuario de un entorno, debe haber iniciado sesión en
AWS Cloud9 con las credenciales del propietario del entorno.
La eliminación de un miembro no elimina el usuario de IAM.

1. Si todavía no está abierto, abra el entorno que contiene el miembro que desea eliminar. Para obtener
más información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).
2. En la ventana Collaborate (Colaborar), expanda Environment Members (Miembros del entorno), si la
lista de miembros no está visible.
3. Aplique alguna de las siguientes acciones.
• Junto al nombre del miembro que desea eliminar, elija el icono de la papelera.
• Haga clic con el botón derecho en el nombre del miembro que desea eliminar y, a continuación, elija
Revoke Access (Revocar acceso).
4. Cuando se le solicite, elija Remove Member (Quitar miembro).

103
AWS Cloud9 Guía del usuario
Prácticas recomendadas para compartir entornos

Para utilizar código para eliminar un miembro de un entorno, llame a la operación de AWS Cloud9 para
eliminar la pertenencia al entorno, tal y como se indica a continuación.

AWS CLI delete-environment-membership

AWS SDK for C++ DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResult

AWS SDK for Go DeleteEnvironmentMembership,


DeleteEnvironmentMembershipRequest,
DeleteEnvironmentMembershipWithContext

AWS SDK for Java DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResult

AWS SDK for JavaScript deleteEnvironmentMembership

AWS SDK for .NET DeleteEnvironmentMembershipRequest,


DeleteEnvironmentMembershipResponse

AWS SDK for PHP deleteEnvironmentMembership

AWS SDK for Python (Boto) delete_environment_membership

AWS SDK for Ruby delete_environment_membership

AWS Tools for Windows PowerShell Remove-C9EnvironmentMembership

API de AWS Cloud9 DeleteEnvironmentMembership

Prácticas recomendadas para compartir entornos


Le recomendamos las siguientes prácticas al compartir entornos.

• Invite a sus entornos únicamente a los miembros con acceso de lectura/escritura en los que confíe.
• En el caso de los entornos de EC2, los miembros de lectura/escritura pueden utilizar las credenciales de
acceso de AWS del propietario del entorno en lugar de sus propias credenciales, para realizar llamadas
desde el entorno a los servicios de AWS. Para evitarlo, el propietario del entorno puede desactivar las
credenciales temporales administradas de AWS para el entorno. Sin embargo, esto también impide
realizar llamadas al propietario del entorno. Para obtener más información, consulte Credenciales
temporales administradas de AWS (p. 569).
• Active AWS CloudTrail para hacer un seguimiento de la actividad de sus entornos. Para obtener más
información, consulte la Guía del usuario de AWS CloudTrail.
• No utilice el usuario raíz de su cuenta de AWS para crear y compartir entornos. Utilice los usuarios de
IAM de su cuenta en su lugar. Para obtener más información, consulte Solo para el primer acceso: sus
credenciales de usuario raíz y Usuarios de IAM en la Guía del usuario de IAM.

Mover un entorno y cambiar el tamaño de


volúmenes de Amazon EBS o cifrarlos
Puede mover un entorno de desarrollo de AWS Cloud9 de una instancia de Amazon EC2 a otra. Por
ejemplo, puede realizar las siguientes acciones:

104
AWS Cloud9 Guía del usuario
Movimiento de un entorno

• Transferir un entorno de una instancia de Amazon EC2 con problemas o rendimiento inesperado en
comparación con una instancia en buen estado.
• Transferir un entorno de una instancia existente a una que tenga las últimas actualizaciones del sistema.
• Aumentar o reducir los recursos informáticos de una instancia porque se está llevando a cabo un uso
excesivo o deficiente del entorno en la instancia actual.

También puede cambiar el tamaño del volumen de Amazon Elastic Block Store (Amazon EBS) asociado
con una instancia de Amazon EC2 para un entorno. Por ejemplo, puede realizar una o ambas de las
siguientes acciones:

• Aumentar el tamaño de un volumen porque se está quedando sin espacio de almacenamiento en la


instancia.
• Reducir el tamaño de un volumen porque no desea pagar por espacio de almacenamiento adicional que
no está utilizando.

Antes de mover o cambiar el tamaño de un entorno, puede intentar detener algunos procesos en
ejecución en este o agregarle un archivo de intercambio. Para obtener más información sobre cómo
gestionar la memoria baja o un uso alto de la CPU, consulte el problema relevante en Solución de
problemas (p. 591).
Note

En este tema solo se cubre el desplazamiento de un entorno de una instancia de Amazon EC2
a otra o el cambio de tamaño de un volumen de Amazon EBS. Para cambiar el tamaño de un
entorno de uno de sus servidores a otro o para cambiar el espacio de almacenamiento de uno de
sus servidores, consulte la documentación del servidor.

Por último, puede cifrar los recursos de Amazon EBS para garantizar la seguridad tanto de los datos en
reposo como de los datos en tránsito entre la instancia y el almacenamiento de EBS adjunto.

Temas
• Movimiento de un entorno (p. 105)
• Cambio de tamaño de un volumen de Amazon EBS utilizado en un entorno (p. 107)
• Cifrado de los volúmenes de Amazon EBS que utiliza AWS Cloud9 (p. 108)

Movimiento de un entorno
Antes de comenzar el proceso de desplazamiento, tenga en cuenta las condiciones siguientes:

• No se puede mover un entorno a una instancia de Amazon EC2 del mismo tipo. Al realizar el
movimiento, debe elegir un tipo de instancias de Amazon EC2 diferente para la nueva instancia.
Important

Si mueve su entorno a otro tipo de instancias de Amazon EC2, ese tipo de instancias también
debe ser compatible con AWS Cloud9 en la región de AWS actual. Para verificar los tipos
de instancias que están disponibles en cada región, vaya a la página Configure settings
(Configurar ajustes) que se muestra al crear un entorno de EC2 con la consola (p. 55). Su
elección en la sección Instance type (Tipo de instancias) está determinada por la región de
AWS seleccionada en la parte superior derecha de la consola.
• Debe detener la instancia de Amazon EC2 que está asociada con un entorno para poder cambiar el tipo
de instancias. Mientras la instancia esté detenida, ni usted ni ninguno de los miembros pueden usar el
entorno asociado con la instancia detenida.
• AWS mueve la instancia a un nuevo hardware, pero el ID de la instancia no cambia.

105
AWS Cloud9 Guía del usuario
Movimiento de un entorno

• Si la instancia se está ejecutando en Amazon VPC y tiene una dirección IPv4 pública, AWS libera la
dirección y le asigna una nueva dirección IPv4 pública. La instancia conserva sus direcciones IPv4
privadas, las direcciones IP elásticas y las direcciones IPv6.
• Planifique el tiempo de inactividad mientras la instancia está detenida. El proceso podría tardar varios
minutos.

Para mover un entorno

1. (Opcional) Si el nuevo tipo de instancias requiere controladores que no están instalados en la instancia
existente, debe conectarse a la instancia e instalar primero los controladores. Para obtener más
información, consulte Compatibilidad para cambiar el tamaño de instancias en la Guía del usuario de
Amazon EC2 para instancias de Linux.
2. Cierre todas las pestañas del navegador web que muestren el entorno.
Important

Si no cierra todas las pestañas del navegador web que muestran actualmente el entorno,
AWS Cloud9 podría interferir y permitirle completar el procedimiento. Específicamente, AWS
Cloud9 podría intentar en un momento no adecuado durante este procedimiento reiniciar la
instancia de Amazon EC2 asociada con el entorno. La instancia debe permanecer detenida
hasta el último paso de este procedimiento.
3. Inicie sesión en la AWS Management Console, si todavía no lo ha hecho, en https://
console.aws.amazon.com.

Le recomendamos que inicie sesión con credenciales de nivel de administrador de IAM en su cuenta
de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
4. Abra la consola de Amazon EC2. Para ello, en la lista Services (Servicios), seleccione EC2.
5. En la barra de navegación de AWS, elija la región de AWS que contiene el entorno que desea mover
(por ejemplo, EE. UU. Este [Ohio]).
6. En el panel de navegación del servicio, expanda Instances (Instancias) si aún no está ampliado y elija
Instances (Instancias).
7. En la lista de instancias, elija la que está asociada con el entorno que desea mover. Para un entorno
de EC2, el nombre de la instancia comienza por aws-cloud9- seguido del nombre del entorno. Por
ejemplo, si el entorno se denomina my-demo-environment, el nombre de la instancia comenzará
por aws-cloud9-my-demo-environment.
8. Si el valor de Instance State (Estado de instancia) no es stopped (detenido), elija Actions (Acciones),
Instance State (Estado de instancia), Stop (Detener). Cuando se le pregunte, elija Yes, Stop (Sí,
Detener). Puede que transcurran unos minutos hasta que la instancia se detenga.
9. Cuando el valor de Instance State (Estado de instancia) sea stopped (detenido), con la instancia
aún seleccionada, elija Actions (Acciones), Instance Settings (Configuración de instancia), Change
Instance Type (Cambiar tipo de instancias).
10. En el cuadro de diálogo Change Instance Type (Cambiar tipo de instancias), en Instance Type (Tipo
de instancias), elija el nuevo tipo de instancias que desea que utilice el entorno.
Note

Si el tipo de instancias que desea no aparece en la lista, eso significa que no es compatible
con la configuración de la instancia (por ejemplo, debido a su tipo de virtualización).
11. (Opcional) Si el tipo de instancia que ha elegido admite la optimización de EBS, seleccione EBS-
optimized para habilitar la optimización de EBS o desmarque EBS-optimized para deshabilitarla.
Note

Si el tipo de instancias que ha elegido está optimizado para EBS de forma predeterminada, la
opción EBS-optimized (Optimizado para EBS) estará seleccionada y no podrá desmarcarla.

106
AWS Cloud9 Guía del usuario
Cambio de tamaño de un volumen de
Amazon EBS utilizado en un entorno

12. Elija Apply (Aplicar) para aceptar la nueva configuración.


Note

Si no ha elegido otro tipo de instancias en Instance Type (Tipo de instancias) anteriormente


en este procedimiento, no sucede nada después de elegir Apply (Aplicar).
13. Vuelva a abrir el entorno. Para obtener más información, consulte Apertura de un entorno en AWS
Cloud9 (p. 78).

Para obtener más información sobre el procedimiento anterior, consulte Cambio del tipo de instancias en la
Guía del usuario de Amazon EC2 para instancias de Linux.

Cambio de tamaño de un volumen de Amazon EBS


utilizado en un entorno
1. Abra el entorno asociado con la instancia de Amazon EC2 para el volumen de Amazon EBS cuyo
tamaño desea cambiar.
2. En el IDE de AWS Cloud9 del entorno, cree un archivo con el siguiente contenido y, a continuación,
guarde el archivo con la extensión .sh (por ejemplo, resize.sh).
Nota

Este script funciona con volúmenes de Amazon EBS conectados a instancias EC2 que
ejecutan Amazon Linux 2, Amazon Linux o Ubuntu Server.
El script también cambia el tamaño de los volúmenes de Amazon EBS expuestos como
dispositivos de bloques NVMe en instancias basadas en Nitro. A fin de obtener una lista de
las instancias basadas en el sistema Nitro, consulte Instancias basadas en Nitro en la Guía
del usuario de Amazon EC2 para instancias de Linux.

#!/bin/bash

# Specify the desired volume size in GiB as a command line argument. If not specified,
default to 20 GiB.
SIZE=${1:-20}

# Get the ID of the environment host Amazon EC2 instance.


INSTANCEID=$(curl http://169.254.169.254/latest/meta-data/instance-id)
REGION=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone |
sed 's/\(.*\)[a-z]/\1/')

# Get the ID of the Amazon EBS volume associated with the instance.
VOLUMEID=$(aws ec2 describe-instances \
--instance-id $INSTANCEID \
--query "Reservations[0].Instances[0].BlockDeviceMappings[0].Ebs.VolumeId" \
--output text \
--region $REGION)

# Resize the EBS volume.


aws ec2 modify-volume --volume-id $VOLUMEID --size $SIZE

# Wait for the resize to finish.


while [ \
"$(aws ec2 describe-volumes-modifications \
--volume-id $VOLUMEID \
--filters Name=modification-state,Values="optimizing","completed" \
--query "length(VolumesModifications)"\
--output text)" != "1" ]; do
sleep 1
done

107
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9

#Check if we're on an NVMe filesystem


if [[ -e "/dev/xvda" && $(readlink -f /dev/xvda) = "/dev/xvda" ]]
then
# Rewrite the partition table so that the partition takes up all the space that it
can.
sudo growpart /dev/xvda 1

# Expand the size of the file system.


# Check if we're on AL2
STR=$(cat /etc/os-release)
SUB="VERSION_ID=\"2\""
if [[ "$STR" == *"$SUB"* ]]
then
sudo xfs_growfs -d /
else
sudo resize2fs /dev/xvda1
fi

else
# Rewrite the partition table so that the partition takes up all the space that it
can.
sudo growpart /dev/nvme0n1 1

# Expand the size of the file system.


# Check if we're on AL2
STR=$(cat /etc/os-release)
SUB="VERSION_ID=\"2\""
if [[ "$STR" == *"$SUB"* ]]
then
sudo xfs_growfs -d /
else
sudo resize2fs /dev/nvme0n1p1
fi
fi

3. Desde una sesión de terminal en el IDE, cambie al directorio que contiene el archivo resize.sh. A
continuación, ejecute uno de los siguientes comandos y sustituya el valor 20 por el tamaño en GiB al
que desea cambiar el volumen de Amazon EBS:


bash resize.sh 20


chmod +x resize.sh
./resize.sh 20

Cifrado de los volúmenes de Amazon EBS que utiliza


AWS Cloud9
El cifrado de Amazon EBS cifra los datos siguientes:

• Datos en reposo del volumen


• Todos los datos que se mueven entre el volumen y la instancia
• Todas las instantáneas creadas a partir del volumen
• Todos los volúmenes creados a partir de esas instantáneas

Tiene dos opciones de cifrado para los volúmenes de Amazon EBS utilizados por los entornos de
desarrollo de EC2 de AWS Cloud9:

108
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9

• Cifrado de forma predeterminada: puede configurar su cuenta de AWS para aplicar el cifrado de los
nuevos volúmenes de EBS y copias de las instantáneas que cree. El cifrado de forma predeterminada
está habilitado en el nivel de una región de AWS, por lo que no se puede habilitar para volúmenes o
instantáneas individuales en esa región. Además, dado que Amazon EBS cifra el volumen que se crea al
lanzar una instancia, debe habilitar esta configuración antes de crear un entorno de EC2. Para obtener
más información, consulte Cifrado de forma predeterminada en la Guía del usuario de Amazon EC2 para
instancias de Linux.
• Cifrado de un volumen de Amazon EBS existente utilizado por un entorno de EC2: puede cifrar
volúmenes específicos de Amazon EBS que ya están creados para instancias EC2. Esta opción implica
el uso de AWS Key Management Service (AWS KMS) para administrar el acceso a los volúmenes
cifrados. Para conocer el procedimiento pertinente, consulte Cifrado de un volumen de Amazon EBS
existente utilizado por AWS Cloud9 (p. 109).

Important

Si el IDE de AWS Cloud9 utiliza volúmenes de Amazon EBS cifrados de forma predeterminada, el
rol vinculado al servicio AWS Identity and Access Management para AWS Cloud9 requiere acceso
a la AWS KMS key para estos volúmenes de EBS. Si no se proporciona acceso, el IDE de AWS
Cloud9 podría no lanzarse y la depuración podría ser difícil.
Para proporcionar acceso, agregue el rol vinculado al servicio de AWS Cloud9,
AWSServiceRoleForAWSCloud9, a la clave de KMS utilizada por los volúmenes de Amazon
EBS. Para obtener más información sobre esta tarea, consulte Create an AWS Cloud9 IDE that
uses Amazon EBS volumes with default encryption en AWS Prescriptive Guidance Patterns.

Cifrado de un volumen de Amazon EBS existente utilizado por


AWS Cloud9
El cifrado de un volumen de Amazon EBS existente implica utilizar AWS KMS para crear una clave de
KMS. Después de crear una instantánea del volumen que desea reemplazar, utilice la clave de KMS para
cifrar una copia de la instantánea.

A continuación, cree un volumen cifrado con esa instantánea. Posteriormente, reemplace el volumen no
cifrado. Para ello, desconéctelo de la instancia EC2 y adjúntelo al volumen cifrado.

Por último, debe actualizar la política de claves de la clave administrada por el cliente para habilitar el
acceso de la función de servicio de AWS Cloud9.
Note

El siguiente procedimiento se centra en el uso de una clave administrada por el cliente para cifrar
un volumen. También puede utilizar una Clave administrada por AWS para un servicio de AWS
en su cuenta (el alias de Amazon EBS es aws/ebs). Si elige esta opción predeterminada para el
cifrado, omita el paso 1, en que se crea una clave administrada por el cliente. También omita el
paso 8 en que se actualiza la directiva de claves (no puede cambiar la directiva de claves de una
Clave administrada por AWS).

Para cifrar un volumen de Amazon EBS existente

1. En la consola de AWS KMS, cree una clave de KMS simétrica. Para obtener más información,
consulte Creación de una clave de KMS simétrica en la Guía para desarrolladores de AWS Key
Management Service.
2. En la consola de Amazon EC2, detenga la instancia respaldada por Amazon EBS y utilizada por el
entorno. Puede detener la instancia mediante la consola o la línea de comandos.
3. En el panel de navegación de la consola de Amazon EC2, elija Snapshots (Instantáneas) para crear
una instantánea del volumen existente que desea cifrar.

109
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9

4. En el panel de navegación de la consola de Amazon EC2, elija Snapshots (Instantáneas) para copiar
la instantánea. En el cuadro de diálogo Copy snapshot (Copiar instantánea), haga lo siguiente para
habilitar el cifrado:

• Elija Encrypt this snapshot (Cifrar esta instantánea).


• En Master Key (Clave maestra), seleccione la clave de KMS que creó anteriormente. (Si utiliza una
Clave administrada por AWS, conserve la opción aws/ebs [predeterminada]).
5. Cree un nuevo volumen a partir de instantánea cifrada.
Note

Los nuevos volúmenes de Amazon EBS que se crean a partir de instantáneas cifradas se
cifran automáticamente.
6. Desconecte el volumen de Amazon EBS antiguo de la instancia de Amazon EC2.
7. Adjunte el nuevo volumen cifrado a la instancia de Amazon EC2.
8. Actualice la directiva de claves para la clave de KMS mediante la vista predeterminada de la AWS
Management Console, la vista de políticas de la AWS Management Console o la API de AWS KMS.
Agregue las siguientes instrucciones de la política de claves para permitir que el servicio de AWS
Cloud9, AWSServiceRoleForAWSCloud9, acceda a la clave de KMS.
Note

Si utiliza Clave administrada por AWS, puede omitir este paso.

{
"Sid": "Allow use of the key",
"Effect": "Allow",
"Principal": {
"AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/
cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
},
{
"Sid": "Allow attachment of persistent resources",
"Effect": "Allow",
"Principal": {
"AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/
cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
},
"Action": [
"kms:CreateGrant",
"kms:ListGrants",
"kms:RevokeGrant"
],
"Resource": "*",
"Condition": {
"Bool": {
"kms:GrantIsForAWSResource": "true"
}
}
}

9. Reinicie la instancia de Amazon EC.

110
AWS Cloud9 Guía del usuario
Eliminación de entornos

Eliminación de un entorno en AWS Cloud9


Para evitar que se realicen cargos continuos en su cuenta de AWS relacionados con un entorno de
desarrollo de AWS Cloud9 que haya dejado de utilizar, debe eliminar el entorno.

• Eliminación de un entorno con la consola (p. 111)


• Eliminación de un entorno con código (p. 113)

Eliminación de un entorno con la consola


Warning

Cuando elimina un entorno, AWS Cloud9 lo elimina el permanentemente. Esto incluye la


eliminación permanente de todos los ajustes relacionados, los datos de usuario y el código no
confirmado. Los entornos eliminados no se pueden recuperar.

1. Inicie sesión en la consola de AWS Cloud9:


• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya a
https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
2. En la barra de navegación superior, elija la región de AWS en la que se encuentra el entorno.

3. En la lista de entornos, en el entorno que desea eliminar, realice una de las siguientes acciones.
• Elija el título de la tarjeta del entorno. Después, en la página siguiente, elija Delete (Eliminar).

111
AWS Cloud9 Guía del usuario
Eliminación de un entorno con la consola

• Seleccione la tarjeta del entorno y, a continuación, elija el botón Delete (Eliminar).

4. En el cuadro de diálogo Delete (Eliminar), escriba Delete y, a continuación, elija Delete (Eliminar).
• Entorno de EC2

Además, AWS Cloud9 finaliza la instancia de Amazon EC2 que estaba conectada al entorno.
Note

Si se produce un error en la eliminación de la cuenta, se muestra un banner en la parte


superior de la página web de la consola. Además, la tarjeta del entorno, si existe, indica que
se ha producido un error en la eliminación del entorno.
• Entorno de SSH

Si el entorno estaba conectado a una instancia de Amazon EC2, AWS Cloud9 no termina esa
instancia. Si no termina dicha instancia más tarde, en su cuenta de AWS le pueden seguir cobrando
cargos continuos por Amazon EC2 en relación con esa instancia.
5. Si el entorno era un entorno de SSH, AWS Cloud9 deja un subdirectorio oculto en la instancia de
informática en la nube o en el servidor que se conectó a dicho entorno. Ya puede eliminar de forma
segura dicho subdirectorio si lo desea. El subdirectorio se llama .c9. Se encuentra en el directorio
Environment path (Ruta del entorno), que especificó al crear el entorno.

Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.

112
AWS Cloud9 Guía del usuario
Eliminación de un entorno con código

• En la barra de navegación lateral, elija una o varias de las siguientes acciones.


• Elija Your environments (Sus entornos) para mostrar todos los entornos que son propiedad de su
entidad de AWS en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Shared with you (Compartido con usted) para mostrar todos los entornos a los que su entidad
de AWS se ha invitado en la región de AWS y la cuenta de AWS seleccionadas.
• Elija Account environments (Entornos de cuenta) para mostrar todos los entornos de la región
de AWS y la cuenta de AWS seleccionadas para las que su entidad de AWS tiene permisos de
visualización.

• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos
en el ámbito actual.

• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.
• En la barra de navegación superior, elija una región de AWS diferente.

Eliminación de un entorno con código


Warning

Cuando elimina un entorno, AWS Cloud9 lo elimina el permanentemente. Esto incluye la


eliminación permanente de todos los ajustes relacionados, los datos de usuario y el código no
confirmado. Los entornos eliminados no se pueden recuperar.

113
AWS Cloud9 Guía del usuario
Eliminación de un entorno con código

Para eliminar un entorno mediante código en AWS Cloud9, llame a la operación de eliminación de entorno
de AWS Cloud9, tal y como se indica seguidamente.

AWS CLI delete-environment

AWS SDK for C++ DeleteEnvironmentRequest,


DeleteEnvironmentResult

AWS SDK for Go DeleteEnvironment, DeleteEnvironmentRequest,


DeleteEnvironmentWithContext

AWS SDK for Java DeleteEnvironmentRequest,


DeleteEnvironmentResult

AWS SDK for JavaScript deleteEnvironment

AWS SDK for .NET DeleteEnvironmentRequest,


DeleteEnvironmentResponse

AWS SDK for PHP deleteEnvironment

AWS SDK for Python (Boto) delete_environment

AWS SDK for Ruby delete_environment

AWS Tools for Windows PowerShell Remove-C9Environment

API de AWS Cloud9 DeleteEnvironment

114
AWS Cloud9 Guía del usuario

Trabajo con el entorno de desarrollo


integrado (IDE) de AWS Cloud9
El entorno de desarrollo integrado (IDE) proporciona un conjunto de herramientas de productividad para
codificar integrado por un editor de código fuente, un depurador y herramientas de compilación.

Lea uno o varios de los siguientes temas para aprender a trabajar con el IDE de AWS Cloud9.

Temas
• Recorrido del IDE de AWS Cloud9 (p. 116)
• Lenguajes compatibles en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 136)
• Compatibilidad con lenguajes mejorada en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 138)
• Referencia de comandos de la barra de menús del entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 151)
• Búsqueda y reemplazo de texto en entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 162)
• Vista previa de archivos en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 165)
• Vista previa de las aplicaciones en ejecución en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 167)
• Trabajo con revisiones de archivo en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 175)
• Trabajo con archivos de imagen en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 176)
• Trabajo con compiladores, ejecutores y depuradores en el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 178)
• Trabajo con variables de entorno personalizadas en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 186)
• Trabajar con la configuración de los proyectos en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 188)
• Trabajo con la configuración de usuario en el IDE de AWS Cloud9 (p. 196)
• Trabajar con la configuración de usuarios y de proyectos de AWS en el entorno de desarrollo integrado
(IDE) de AWS Cloud9 (p. 204)
• Trabajo con enlaces de teclado en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 205)
• Trabajar con temas en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 208)
• Administrar scripts de inicialización en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 209)
• Referencia de enlaces de teclado predeterminados para MacOS para el entorno de desarrollo
integrado (IDE) de AWS Cloud9 (p. 209)
• Referencia de enlaces de teclado Vim para MacOS para el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 221)
• Referencia de enlaces de teclado Emacs para MacOS para el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 232)
• Referencia de enlaces de teclado Sublime para MacOS para el entorno de desarrollo integrado (IDE)
de AWS Cloud9 (p. 243)
• Referencia de enlaces de teclado predeterminados para Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9 (p. 256)
• Referencia de enlaces de teclado Vim para Windows/Linux en el entorno de desarrollo integrado (IDE)
de AWS Cloud9 (p. 267)

115
AWS Cloud9 Guía del usuario
Recorrido del IDE

• Referencia de enlaces de teclado Emacs para Windows/Linux en el entorno de desarrollo integrado


(IDE) de AWS Cloud9 (p. 278)
• Referencia de enlaces de teclado Sublime para Windows/Linux en el entorno de desarrollo integrado
(IDE) de AWS Cloud9 (p. 290)
• Referencia de comandos del entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 302)

Recorrido del IDE de AWS Cloud9


En este tema se ofrece un recorrido básico por el entorno de desarrollo integrado (IDE) de AWS Cloud9.
Para sacar el máximo provecho de este recorrido, siga los pasos que se muestran a continuación de forma
secuencial.

Temas
• Requisitos previos (p. 116)
• Paso 1: Barra de menús (p. 116)
• Paso 2: Panel (p. 118)
• Paso 3: Ventana Environment (Entorno) (p. 118)
• Paso 4: Editor, pestañas y paneles (p. 119)
• Paso 5: Consola (p. 121)
• Paso 6: Sección Open files (Abrir archivos) (p. 121)
• Paso 7: Margen interior (p. 122)
• Paso 8: Barra de estado (p. 122)
• Paso 9: Ventana Outline (Esquema) (p. 124)
• Paso 10: Ventana Go (Ir) (p. 125)
• Paso 11: Pestaña Immediate (Inmediato) (p. 127)
• Paso 12: Lista de procesos (p. 128)
• Paso 13: Preferencias (p. 129)
• Paso 14: Terminal (p. 130)
• Paso 15: Ventana Debugger (Depurador) (p. 131)
• Conclusiones (p. 136)

Requisitos previos
Para realizar este recorrido, debe disponer de una cuenta de AWS y de un entorno de desarrollo de
AWS Cloud9 abierto. Para obtener información sobre cómo hacerlo, puede seguir los pasos que se
indican en Introducción: tutoriales básicos para AWS Cloud9 (p. 32). También puede explorar otros temas
relacionados, como Configuración de AWS Cloud9 (p. 7) y Trabajo con entornos en AWS Cloud9 (p. 53).
Warning

Tener un entorno de desarrollo de AWS Cloud9 puede generar cargos en su cuenta de AWS.
Entre ellos se incluyen posibles cargos por Amazon EC2 si utiliza un entorno de EC2. Para
obtener más información, consulte Precios de Amazon EC2.

Paso 1: Barra de menús


La barra de menús, en el borde superior del IDE, contiene comandos comunes para trabajar con archivos
y código y cambiar la configuración del IDE. También puede obtener una vista previa y ejecutar código
desde la barra de menús.

116
AWS Cloud9 Guía del usuario
Paso 1: Barra de menús

Para ocultar la barra de menús, elija la flecha en el borde, tal y como se indica a continuación.

Para volver a ver la barra de menús, elija la flecha en el centro del lugar en el que se encontraba antes la
barra de menús, tal y como se indica a continuación.

Compare sus resultados con los siguientes.

Puede utilizar el IDE para trabajar con un conjunto de archivos en las siguientes secciones de este tutorial.
Para configurar estos archivos, elija File (Archivo) y, a continuación, New File (Nuevo archivo).

A continuación, copie el siguiente texto en la pestaña del editor Untitled1.

fish.txt
--------
A fish is any member of a group of organisms that consist of
all gill-bearing aquatic craniate animals that lack limbs with
digits. They form a sister group to the tunicates, together
forming the olfactores. Included in this definition are
lampreys and cartilaginous and bony fish as well as various
extinct related groups.

Para guardar el archivo, elija File (Archivo), Save (Guardar). Denomine al archivo fish.txt y, a
continuación, elija Save (Guardar).

117
AWS Cloud9 Guía del usuario
Paso 2: Panel

Repita estas instrucciones para guardar el segundo archivo como cat.txt, con el contenido siguiente.

cat.txt
-------
The domestic cat is a small, typically furry, carnivorous mammal.
They are often called house cats when kept as indoor pets or
simply cats when there is no need to distinguish them from
other felids and felines. Cats are often valued by humans for
companionship and for their ability to hunt.

En ocasiones, existen varias formas de hacer las cosas en el IDE. Por ejemplo, para ocultar la barra de
menús, en lugar de elegir la flecha del borde, puede elegir View (Ver), Menu Bar (Barra de menú). Para
crear un nuevo archivo, en lugar de elegirFile, New File (Archivo, Nuevo archivo) puede pulsar Alt-N
(en Windows/Linux) o Control-N (en MacOS). Para reducir la extensión de este tutorial, solo vamos a
explicar una forma de hacer las cosas. Cuando se sienta más cómodo con el IDE, no dude en probar y
averiguar el método que mejor se adapte a sus necesidades.

Paso 2: Panel
El panel le ofrece acceso rápido a cada uno de sus entornos. En el panel, puede crear, abrir y cambiar la
configuración de un entorno.

Para abrir el panel, en la barra de menús, elija AWS Cloud9, Go To Your Dashboard (Ir al panel).

Para ver la configuración de su entorno, elija el título dentro de la tarjeta my-demo-environment. Para
volver al panel, utilice el botón Atrás del navegador web o la ruta de navegación denominada Environments
(Entornos).

Para abrir el IDE de su entorno, elija Open IDE (Abrir IDE) en la tarjeta my-demo-environment.
Note

El IDE puede tardar unos momentos en volver a aparecer.

Paso 3: Ventana Environment (Entorno)


La ventana Environment (Entorno) muestra una lista de las carpetas y los archivos del entorno. También
puede ver diferentes tipos de archivos, como, por ejemplo, los archivos ocultos.

Para mostrar u ocultar la ventana Environment (Entorno), elija el botón Environment (Entorno).

118
AWS Cloud9 Guía del usuario
Paso 4: Editor, pestañas y paneles

Para ocultar la ventana Environment (Entorno) y el botón Environment (Entorno), elija Window (Ventana),
Environment (Entorno) en la barra de menús.

Para mostrar u ocultar archivos, elija el icono del engranaje en la ventana Environment (Entorno) y, a
continuación, elija Show Hidden Files (Mostrar archivos ocultos).

Paso 4: Editor, pestañas y paneles


El editor es donde puede hacer cosas como escribir código, ejecutar una sesión de terminal y cambiar la
configuración del IDE. Cada instancia de un archivo abierto, sesión de terminal, etc. está representada por
una pestaña. Las pestañas pueden agruparse en paneles. Las pestañas aparecen en el borde de su panel.

Para ocultar pestañas, elija View (Ver), Tab Buttons (Botones de pestañas) en la barra de menús.

Para abrir una nueva pestaña, elija el icono + en el borde de la fila de pestañas. A continuación, elija uno
de los comandos disponibles, por ejemplo, New File (Nuevo archivo), tal y como se indica a continuación.

119
AWS Cloud9 Guía del usuario
Paso 4: Editor, pestañas y paneles

Para ver dos paneles, seleccione el icono que parece un menú desplegable, que está en el borde de la fila
de pestañas. A continuación, elija Split Pane in Two Rows (Dividir panel en dos filas), tal y como se indica
a continuación.

Para volver a un único panel, elija de nuevo el icono del menú desplegable y, a continuación, seleccione el
icono del cuadrado único, tal y como se indica a continuación.

120
AWS Cloud9 Guía del usuario
Paso 5: Consola

Paso 5: Consola
La consola es un lugar alternativo para crear y administrar pestañas. De forma predeterminada, contiene
una pestaña Terminal, pero también puede contener otros tipos de pestañas.

Para mostrar u ocultar la consola, elija View (Ver), Console (Consola) en la barra de menús.

Para ampliar o contraer la consola, elija el icono de cambio de tamaño, que está en el borde de la consola,
tal y como se indica a continuación.

Paso 6: Sección Open files (Abrir archivos)


La sección Open Files (Abrir archivos) muestra una lista de todos los archivos que se encuentran abiertos
actualmente en el editor. La sección Open Files (Abrir archivos) forma parte de la ventana Environment
(Entorno).

121
AWS Cloud9 Guía del usuario
Paso 7: Margen interior

Para mostrar u ocultar la sección Open Files (Abrir archivos), seleccione View (Ver), Open Files (Abrir
archivos) en la barra de menús.

Para cambiar entre archivos abiertos, elija el archivo de interés de la lista.

Paso 7: Margen interior


El margen interior, en el borde de cada archivo del editor, muestra cosas como números de líneas y
símbolos contextuales cuando trabaja con archivos.

Para mostrar u ocultar el margen interior, elija View (Ver), Gutter (Margen interior) en la barra de menús.

Paso 8: Barra de estado


La barra de estado, situada en el borde de cada archivo del editor, muestra cosas como números de
carácter y línea, preferencia de tipo de archivo, configuración de espacio y pestaña y configuración del
editor relacionada.

Para mostrar u ocultar la barra de estado, elija View (Ver), Status Bar (Barra de estado) en la barra de
menús.

122
AWS Cloud9 Guía del usuario
Paso 8: Barra de estado

Para ir a un número de línea específico, elija una pestaña con el archivo que le interese. A continuación, en
la barra de estado, elija el número de línea y carácter (debería ser algo como 7:45). Escriba un número de
línea (como 4) y, a continuación, presione Enter, tal y como se indica a continuación.

Para cambiar la preferencia del tipo de archivo, en la barra de estado, elija otro tipo de archivo. Por
ejemplo, en el caso de cat.txt, elija Ruby para ver el cambio de colores de la sintaxis. Para volver a los
colores de texto sin formato, elija Plain Text (Texto sin formato), tal y como se indica a continuación.

123
AWS Cloud9 Guía del usuario
Paso 9: Ventana Outline (Esquema)

Paso 9: Ventana Outline (Esquema)


Puede utilizar la ventana Outline (Esquema) para ir rápidamente a la ubicación de un archivo específico.

Para mostrar u ocultar la ventana Outline (Esquema) y el botón Outline (Esquema), elija Window
(Ventana), Outline (Esquema) en la barra de menús.

Para ver cómo funciona la ventana Outline (Esquema), cree un archivo con el nombre hello.rb. Copie el
código siguiente en el archivo y guárdelo.

def say_hello(i)
puts "Hello!"
puts "i is #{i}"
end

def say_goodbye(i)
puts "i is now #{i}"
puts "Goodbye!"
end

i = 1
say_hello(i)
i += 1
say_goodbye(i)

Para mostrar u ocultar el contenido de la ventana Outline (Esquema), elija el botón Outline (Esquema).

A continuación, en la ventana Outline (Esquema), elija say_hello(i) y luego elija say_goodbye(i), tal y como
se indica a continuación.

124
AWS Cloud9 Guía del usuario
Paso 10: Ventana Go (Ir)

Paso 10: Ventana Go (Ir)


Puede utilizar la ventana Go (Ir) para abrir un archivo en el editor, ir a una definición de símbolo, ejecutar
un comando o ir a una línea del archivo activo en el editor.

125
AWS Cloud9 Guía del usuario
Paso 10: Ventana Go (Ir)

Para mostrar el contenido de la ventana Go (Ir), seleccione el botón Go (Ir) (el icono de lupa).

Para mostrar u ocultar la ventana Go (Ir) y el botón Go (Ir), elija Window (Ventana), Go (Ir) en la barra de
menús.

Con la ventana Go (Ir) abierta, puede:

• Introduzca un signo de barra inclinada (/) seguido de parte o la totalidad de un nombre de archivo. En
la lista de archivos coincidentes que aparecerá, elija un archivo para abrirlo en el editor. Por ejemplo, al
escribir /fish se muestra fish.txt, mientras que al escribir /.txt se muestra tanto fish.txt como
cat.txt.
Note

La búsqueda de archivos se limita solo a los archivos y las carpetas no ocultos de la ventana
Environment (Entorno).
• Escriba una arroba (@) seguida del nombre de un símbolo. En la lista de símbolos coincidentes que
aparecerá, elija un símbolo para abrirlo en el editor. Por ejemplo, con el archivo hello.rb abierto
y activo en el editor, escriba @hello para mostrar say_hello(i), o escriba @say para mostrar
say_hello(i) y say_goodbye(i).
Note

Si el archivo activo en el editor forma parte de un proyecto con idiomas admitidos, la búsqueda
de símbolos se limita al proyecto actual. De lo contrario, la búsqueda de símbolos se
limita únicamente al archivo activo en el editor. Para obtener más información, consulte
Compatibilidad con TypeScript mejorada con proyectos de lenguajes (p. 147).
• Escriba un punto (.) seguido del nombre de un comando. En la lista de comandos que aparecerá, elija
un comando para ejecutarlo. Por ejemplo, escribir .closetab y, a continuación, pulsar Enter cierra la
pestaña actual del editor. Para obtener una lista de los comandos disponibles, consulte el Referencia de
comandos del entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 302).
• Escriba un signo de dos puntos (:) seguido de un número para ir a ese número de línea en el archivo
activo en el editor. Por ejemplo, con el archivo hello.rb abierto y activo en el editor, escriba :11 para
ir a la línea 11 de ese archivo.

126
AWS Cloud9 Guía del usuario
Paso 11: Pestaña Immediate (Inmediato)

Para ver los enlaces de teclado de cada una de estas acciones según el modo de teclado y el sistema
operativo actuales, consulte cada uno de los comandos Go To (Ir a) disponibles en el menú Go (Ir) de la
barra de menú.

Paso 11: Pestaña Immediate (Inmediato)


La pestaña Immediate (Inmediato) permite probar pequeños fragmentos de código JavaScript. Para ver
cómo funciona la pestaña Immediate (Inmediato), haga lo siguiente.

1. Abra una pestaña Immediate (Inmediato) eligiendo Window (Ventana), New Immediate Window
(Nueva ventana inmediata) en la barra de menús.
2. Ejecute código en la pestaña Immediate (Inmediato). Para probarlo, escriba el siguiente código en
la ventana, pulse Shift-Enter después de escribir la línea 1 y de nuevo después de la línea 2.
Presione Enter después de la línea 3. (Si presiona Enter en lugar de Shift-Enter después de
escribir la línea 1 o la línea 2, el código se ejecutará antes de lo que desea).

for (i = 0; i <= 10; i++) { // Press Shift-Enter after typing this line.
console.log(i) // Press Shift-Enter after typing this line.
} // Press Enter after typing this line. The numbers 0 to 10
will be printed.

127
AWS Cloud9 Guía del usuario
Paso 12: Lista de procesos

Paso 12: Lista de procesos


En Process List (Lista de procesos) se muestran todos los procesos en ejecución. Puede detener o incluso
forzar la detención de procesos que no desea que se ejecuten más. Para ver cómo funciona la ventana
Process List (Lista de procesos), haga lo siguiente.

1. Para abrir Process List (Lista de procesos), elija Tools (Herramientas), Process List (Lista de
procesos) en la barra de menús.
2. Busque un proceso. En Process List (Lista de procesos), escriba el nombre del proceso.
3. Detenga o fuerce la detención de un proceso. En la lista de procesos, elija el proceso y, a
continuación, elija Kill (Terminar) o Force Kill (Forzar terminación), tal y como se indica a continuación.

128
AWS Cloud9 Guía del usuario
Paso 13: Preferencias

Paso 13: Preferencias


En las preferencias, se incluyen los siguientes ajustes de configuración.

• Solo la configuración del entorno actual, como, por ejemplo, si debe utilizar tabuladores suaves en el
editor, los tipos de archivos que se deben omitir y los comportamientos de finalización de código de
lenguajes como PHP y Python.
• Su configuración de usuario en cada uno de sus entornos, como, por ejemplo, colores, fuentes y
comportamientos del editor.
• Su enlaces de teclado, como, por ejemplo, las combinaciones de teclas de acceso directo que prefiere
utilizar para trabajar con archivos y el editor.
• El tema general del IDE.

Para ver las preferencias, elija AWS Cloud9, Preferences (Preferencias) en la barra de menús. Se muestra
algo similar a lo siguiente.

129
AWS Cloud9 Guía del usuario
Paso 14: Terminal

Paso 14: Terminal


Puede ejecutar una o varias sesiones de terminal en el IDE. Para iniciar una sesión de terminal, elija
Window (Ventana), New Terminal (Nuevo terminal) en la barra de menús. O bien, elija el icono "más"
situado junto a las pestañas Console (Consola) y elija New Terminal (Nuevo terminal).

Puede probar ejecutar un comando en el terminal. Por ejemplo, en el terminal, escriba echo $PATH y, a
continuación, pulse Enter para imprimir el valor de la variable de entorno PATH.

También puede probar a ejecutar otros comandos. Por ejemplo, pruebe comandos como los siguientes.

• pwd para imprimir la ruta al directorio actual.


• aws --version para imprimir información de versión de la AWS CLI.
• ls -l para imprimir información del directorio actual.

130
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)

Paso 15: Ventana Debugger (Depurador)


Puede utilizar la ventana Debugger (Depurador) para depurar el código. Por ejemplo, puede recorrer el
código en ejecución por partes, observar los valores de las variables a lo largo del tiempo y examinar la
pila de llamadas.
Note

Este procedimiento es similar al Paso 2: Recorrido básico del IDE (p. 36) de cualquiera de los
tutoriales básicos del IDE (p. 32).

Para mostrar u ocultar la ventana Debugger (Depurador) y el botón Debugger (Depurador), elija Window
(Ventana), Debugger (Depurador) en la barra de menús.

En este tutorial, puede experimentar con la ventana Debugger (Depurador) y algunos códigos JavaScript
haciendo lo siguiente.

1. Verifique la instalación de Node.js en su entorno. Para ello, ejecute el siguiente comando en una
sesión del terminal: node --version. Si Node.js está instalado, se genera el número de versión de
Node.js en la salida y puede ir directamente al paso 3 de este procedimiento («Escribir algún código
JavaScript...»).
2. Si necesita instalar Node.js, haga lo siguiente.

131
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)

a. Ejecute los dos comandos siguientes, de uno en uno, para asegurarse de que su entorno tiene las
actualizaciones más recientes y, a continuación, descargue Node Version Manager (nvm). (nvm
es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de Node.js.
Para obtener más información, consulte Node Version Manager en GitHub).

Para Amazon Linux:

sudo yum -y update


curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

Para Ubuntu Server:

sudo apt update


curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

b. Utilice un editor de texto para actualizar el archivo de perfil de shell (por ejemplo, ~/.bashrc)
para permitir que nvm se cargue. Por ejemplo, en la ventana Environment (Entorno) del IDE, elija
el icono del engranaje y, a continuación, seleccione Show Home in Favorites (Mostrar inicio en
favoritos). Repita este paso y elija también Show Hidden Files (Mostrar archivos ocultos).
c. Abra el archivo ~/.bashrc.
d. Escriba o pegue el código siguiente al final del archivo para permitir que nvm se cargue.

Para Amazon Linux:

export NVM_DIR="/home/ec2-user/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm.

Para Ubuntu Server:

export NVM_DIR="/home/ubuntu/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm.

e. Guarde el archivo.
f. Cierre esa sesión de terminal e inicie una nueva. A continuación, ejecute el siguiente comando
para instalar la última versión de Node.js.

nvm install node

3. Escriba algún código JavaScript para depurarlo. Por ejemplo, cree un archivo, añada el siguiente
código en él y, a continuación, guárdelo como hello.js.

var i;

i = 10;

console.log("Hello!");
console.log("i is " + i);

i += 1;

console.log("i is now " + i);


console.log("Goodbye!");

4. Añada algunos puntos de interrupción en el código. Por ejemplo, en el margen interior, haga clic en el
margen junto a las líneas 6 y 10. Aparece un círculo rojo junto a cada uno de estos números de línea,
tal y como se indica a continuación.

132
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)

5. Ya está listo para depurar el código JavaScript. Para probarlo, haga lo siguiente.

a. Para mostrar u ocultar el contenido de la ventana Debugger (Depurador), elija el botón Debugger
(Depurador), tal y como se muestra en el siguiente paso.
b. Observe el valor de la variable denominada i mientras se está ejecutando el código. En la
ventana Debugger (Depurador), en Watch Expressions (Expresiones de inspección), elija Type
an expression here (Escriba una expresión aquí). Escriba la letra i y, a continuación, presione
Enter, tal y como se indica a continuación.

c. Comience a ejecutar el código. Seleccione Run (Ejecutar), Run With (Ejecutar con), Node.js, tal y
como se indica a continuación.

133
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)

d. El código realiza una pausa en la ejecución en la línea 6. La ventana Debugger (Depurador)


muestra el valor i en Watch Expressions (Expresiones de inspección), que actualmente es 10.

e. En la ventana Debugger (Depurador), seleccione Resume (Reanudar), que es el icono de flecha


azul, tal y como se indica a continuación.

134
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)

f. El código realiza una pausa en la ejecución en la línea 10. En la ventana Debugger (Depurador)
ahora aparece el nuevo valor de i, que en la actualidad es 11.
g. Seleccione Resume (Reanudar) de nuevo. El código se ejecuta hasta el final. El resultado se
imprime en la pestaña hello.js de la consola, tal y como se indica a continuación.

Compare sus resultados con los siguientes.

135
AWS Cloud9 Guía del usuario
Conclusiones

Conclusiones
Warning

Recuerde que tener un entorno de desarrollo de AWS Cloud9 puede generar cargos en su cuenta
de AWS. Entre ellos se incluyen posibles cargos por Amazon EC2 si utiliza un entorno de EC2.
Para obtener más información, consulte Precios de Amazon EC2.
En la sección principal (Uso de la IDE (p. 115)) se incluyen temas adicionales que pueden ser
de su interés. Sin embargo, cuando haya terminado de recorrer el IDE de AWS Cloud9 y ya no
necesite el entorno, asegúrese de eliminarlo junto con sus recursos asociados, tal y como se
describe en Eliminación de entornos (p. 111).

Lenguajes compatibles en el entorno de desarrollo


integrado (IDE) de AWS Cloud9
El IDE de AWS Cloud9 es compatible con muchos lenguajes de programación. En la tabla siguiente se
muestran los lenguajes que son compatibles y en qué grado.

3
Lenguaje Resaltado IU2 de Vista de Sugerencias Finalización Depuración
1 2
de sintaxis ejecución esquema de código y de código
lint
5 4
C++ ✓ ✓ ✓   ✓ ✓

136
AWS Cloud9 Guía del usuario
Lenguajes compatibles

3
Lenguaje Resaltado IU2 de Vista de Sugerencias Finalización Depuración
1 2
de sintaxis ejecución esquema de código y de código
lint
5
C# ✓   ✓   ✓  

CoffeeScript ✓ ✓        

CSS ✓       ✓  

Dart ✓          
4 4
Go ✓ ✓ ✓ ✓ ✓ ✓

Haskell ✓          

HTML ✓ ✓ ✓   ✓  
6
Java ✓ ✓ ✓ ✓ ✓ ✓

JavaScript ✓ ✓ ✓ ✓ ✓  

Node.js ✓ ✓ ✓ ✓ ✓ ✓
7
PHP ✓ ✓ ✓ ✓ ✓ ✓
8
Python ✓ ✓ ✓ ✓ ✓ ✓
5
Ruby ✓ ✓ ✓ ✓ ✓  
5
Script de ✓ ✓ ✓ ✓ ✓  
shell
9
TypeScript ✓ ✓ ✓ ✓ ✓  

Notas
1
El IDE de AWS Cloud9 proporciona resaltado de sintaxis para muchos más lenguajes. Para ver una lista
completa, en la barra de menús del IDE, elija View, Syntax (Ver, Sintaxis).
2
Puede ejecutar programas o scripts con un solo clic para lenguajes marcados con ✓, sin utilizar la línea
de comandos. Para los lenguajes que no están marcados con ✓ o que no aparecen en la barra de menús
Run, Run With (Ejecutar, Ejecutar con) del IDE, puede crear un ejecutor para ese lenguaje. Para ver
instrucciones, consulte la sección sobre creación de un generador o ejecutor (p. 183).
3
Puede utilizar las herramientas integradas del IDE para depurar programas o scripts para lenguajes
marcados con ✓. Para ver instrucciones, consulte la sección sobre depuración del código (p. 179).
4
Esta característica se encuentra en estado experimental para este lenguaje. No se ha aplicado
plenamente y no está documentada o no es compatible.
5
Esta característica solo es compatible con las funciones locales para este lenguaje.
6
El soporte mejorado para las funciones de Java SE 11 puede activarse en los entornos de desarrollo de
AWS Cloud9 EC2 con 2 GiB o con más memoria. Para obtener más información, consulte Compatibilidad
con el desarrollo de Java mejorada (p. 138).
7
Para especificar las rutas de AWS Cloud9 que deben utilizarse para finalizar el código de PHP
personalizado, en el IDE de AWS Cloud9, active la configuración Project, PHP Support, Enable PHP code
completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) de Preferences (Preferencias)

137
AWS Cloud9 Guía del usuario
Compatibilidad con lenguajes mejorada

y agregue las rutas del código personalizado a la configuración Project, PHP Support, PHP Completion
Include Paths (Proyecto, Compatibilidad con PHP, Rutas de inclusión para finalización de PHP).
8
Para especificar las rutas de AWS Cloud9 que deben utilizarse para finalizar el código de Python
personalizado, en el IDE de AWS Cloud9, active la configuración Project, Python Support, Enable Python
code completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) en Preferences
(Preferencias) y agregue las rutas del código personalizado a la configuración Project, Python Support,
PYTHONPATH (Proyecto, Compatibilidad con Python, PYTHONPATH).
9
El IDE de AWS Cloud9 proporciona compatibilidad adicional para algunos lenguajes de programación,
como, por ejemplo, TypeScript (la versión 3.7.5 se admite en el IDE de AWS Cloud9), en el contexto de un
proyecto de lenguaje. Para obtener más información, consulte Working with Language Projects (p. 147).

Compatibilidad con lenguajes mejorada en el


entorno de desarrollo integrado (IDE) de AWS
Cloud9
AWS Cloud9 proporciona compatibilidad mejorada para mejorar su experiencia de desarrollo al codificar
con los siguientes lenguajes:

• Java: las extensiones permiten proporcionar características como la finalización de código, lint de
errores, acciones específicas del contexto y opciones de depuración.
• TypeScript: los proyectos de lenguaje ofrecen acceso a características de productividad mejoradas para
TypeScript.

Temas
• Compatibilidad con el desarrollo de Java mejorada (p. 138)
• Compatibilidad con TypeScript mejorada con proyectos de lenguajes (p. 147)

Compatibilidad con el desarrollo de Java mejorada


AWS Cloud9 proporciona compatibilidad con lenguaje mejorada para mejorar su experiencia de desarrollo
al trabajar con Java. Las características de productividad clave incluyen la finalización de código, lint de
errores, enfoques de código y opciones de depuración, como puntos de interrupción e incrementos.
Important

Las características de productividad mejoradas solo están disponibles para entornos de desarrollo
de AWS Cloud9 conectados a instancias de Amazon EC2.
Además, para garantizar una experiencia de IDE óptima cuando se utiliza compatibilidad de
lenguaje mejorada con Java, la instancia de computación de Amazon EC2 que respalda su
entorno de AWS Cloud9 requiere 2 GiB o más de memoria. Si AWS Cloud9 detecta que la
instancia de computación de EC2 no tiene suficiente RAM, no se le ofrece la opción de activar
características mejoradas para Java.
En la actualidad, AWS Cloud9 soporta funciones de idioma disponibles en versiones hasta e
incluidas Java SE 11. Amazon Coretto 11, distribución sin costo, multiplataforma y lista para
producción de Open Java Development Kit (OpenJDK), ya está instalado en instancias de
Amazon EC2 que respaldan sus entornos de desarrollo. Puede instalar versiones más recientes
del JDK, pero no se admiten las características de lenguaje que se introdujeron después de Java
11 (tipos de registros y clases selladas, por ejemplo).

138
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Activación y personalización de la compatibilidad con Java


mejorada
La opción de activar la compatibilidad con Java mejorada se muestra automáticamente si se cumplen las
siguientes condiciones:

• Su entorno de AWS Cloud9 está conectado a una instancia de Amazon EC2 con 2 GiB o más de
memoria.
• Está trabajando con un archivo asociado con el desarrollo de Java. AWS Cloud9 verifica los siguientes
nombres y extensiones de archivos: *.java, *.gradle (asociados con la herramienta de creación
Gradle) y pom.xml (asociados con la herramienta de creación Apache Maven).
• Está trabajando en un entorno de AWS Cloud9 creado después del 11 de diciembre de 2020.
Actualmente, no se pueden usar las características de productividad de Java en entornos de desarrollo
creados antes de esta fecha.

Si se cumplen estas condiciones, aparece un cuadro de diálogo para preguntarle si quiere activar las
características de productividad adicionales para codificar y depurar Java. Si elige Activate (Activar), puede
comenzar a utilizar las características del IDE.

Note

Las instancias de Amazon EC2 que se lanzan al crear un entorno de AWS Cloud9 ya tienen
Amazon Coretto 11 instalado. Amazon Coretto es una distribución sin costo, multiplataforma
y lista para producción de Open Java Development Kit (OpenJDK). Esto significa que puede
comenzar a desarrollar y ejecutar aplicaciones de Java en AWS Cloud9 listas para usar.

También puede activar y desactivar manualmente la compatibilidad con lenguajes y depuración mejorados
mediante la interfaz de AWS Cloud9. Elija Preferences (Preferencias), Java Support (Compatibilidad con
Java), Enhanced Java Support (Compatibilidad mejorada con Java).

139
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Dos extensiones proporcionan la compatibilidad con el desarrollo de Java mejorada en AWS Cloud9 al
IDE:

• Compatibilidad con lenguaje de Java(TM) por Red Hat


• Depurador para Java

La interfaz de AWS Cloud9 le concede acceso a una amplia gama de opciones de configuración que
personalizan el rendimiento de estas extensiones. Para cambiar la configuración de la extensión, elija
Preferences (Preferencias), Java Support (Compatibilidad con Java).

Para obtener información detallada sobre esta configuración, consulte las versiones instaladas de las
páginas ReadMe pertinentes de los repositorios de GitHub de las extensiones:

• Compatibilidad con lenguaje de Java(TM) por Red Hat


• Depurador para Java

Características destacadas
Después de activar la compatibilidad con Java mejorada, puede utilizar una serie de características que
aumentan la productividad.

Finalización de código

Con la finalización del código, el editor hace sugerencias contextuales basadas en el código que está
escribiendo. Por ejemplo, si escribe el operador punto (“.”) después del nombre de un objeto, el editor
muestra los métodos o las propiedades disponibles para ese objeto.

140
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Enfoques de código

El enfoque de código le permite acceder a acciones específicas del contexto directamente en el código
fuente. Para el desarrollo de Java, los enfoques de código facilitan las pruebas unitarias al permitirle
ejecutar y depurar métodos específicos.

141
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Lint de código

El lint de código describe cómo el editor resalta los posibles errores en el código antes de haberlo creado.
Por ejemplo, la herramienta de lint llama si está intentando utilizar una variable no inicializada o si intenta
asignar un valor a una variable que espera un tipo diferente.

142
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Opciones de depuración

Puede implementar puntos de interrupción y expresiones de observación. Establezca los puntos de


interrupción en el código fuente y muestre el panel del depurador para definir las condiciones pertinentes.

143
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Comandos de Java

Para ejecutar comandos desde el panel de comandos de AWS Cloud9, presione Ctrl + . o F1. A
continuación, ingrese “java” para filtrar los comandos pertinentes.

Soluciones rápidas

144
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

Con soluciones rápidas, puede resolver los errores causados por el uso de variables no declaradas o
métodos no definidos mediante la creación de stubs para los elementos que faltan.

Refactorización

La refactorización le permite reestructurar el código sin cambiar su comportamiento. Para acceder a


opciones como organizar las importaciones o crear constructores, abra el menú contextual (con el botón
derecho) del elemento y elija Refactoring (Refactorización).

145
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada

146
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada

Cambio de nombre

El cambio de nombre es una característica de refactorización que le permite modificar fácilmente los
nombres de las variables, las funciones y las clases seleccionadas en cualquier parte del código en
la que aparezcan con una sola acción. Para cambiar un nombre, abra el menú contextual (clic con el
botón derecho) del elemento y elija Rename (Cambiar nombre). El cambio de nombre afecta a todas las
instancias del nombre en el código.

Herramientas opcionales para el desarrollo de Java


Las extensiones que proporcionan compatibilidad con Java mejorada incluyen características que le
permiten integrar las herramientas de automatización de Gradle y Maven en el desarrollo de su proyecto.
Estas herramientas no están preinstaladas en el entorno de desarrollo de AWS Cloud9. Para obtener más
información acerca de cómo instalar y utilizar estas herramientas de creación opcionales, consulte los
siguientes recursos:

• Gradle: Getting started guide (Guía de introducción)


• Maven: Maven in 5 minutes (Maven en 5 minutos)

Compatibilidad con TypeScript mejorada con


proyectos de lenguajes
El IDE de AWS Cloud9 le permite utilizar proyectos de lenguaje para acceder a características de
productividad mejoradas para TypeScript. Un proyecto de lenguaje es un conjunto de carpetas, opciones
de configuración y archivos relacionados del IDE de un entorno de desarrollo de AWS Cloud9.

Para utilizar el IDE para crear un proyecto de lenguaje en su entorno, consulte Creación de un proyecto de
lenguaje (p. 150).

147
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada

Características de productividad de proyectos disponibles


El IDE de AWS Cloud9 proporciona las siguientes características de productividad de proyectos para
TypeScript.

Lenguaje Autocompletar (p.


Iconos
148)de Soluciones Buscar Ir a Ir a
margen rápidas (p. 148)referencias (p. 148)
definición (p. 149)
símbolo (p. 149)
interior (p. 148)

TypeScript X X X X X X

Autocompletar
A medida que escribe en un archivo en el editor, se muestra una lista de símbolos en el punto de inserción
para ese contexto, si hay símbolos disponibles.

Para insertar un símbolo de la lista en el punto de inserción, si aún no se ha elegido un símbolo, use la
flecha arriba o abajo para seleccionarlo y, a continuación, pulse Tab.

Antes de pulsar Tab, puede que vea una sugerencia en pantalla con información acerca del símbolo
elegido, si hay información disponible.

Para cerrar la lista sin insertar un símbolo, pulse Esc.

Iconos de margen interior


Podrían aparecer iconos en el margen interior del archivo activo. Estos iconos resaltan posibles problemas
como advertencias y errores en el código antes de ejecutarlo.

Para obtener más información acerca de un problema, detenga el puntero sobre el icono del problema.

Soluciones rápidas
En el archivo activo en el editor, puede mostrar información sobre errores y advertencias de codificación,
con posibles correcciones que se aplicará automáticamente a dicho código. Para mostrar información
de errores o advertencias y sus posibles correcciones, elija cualquier parte del código subrayado con
una línea roja discontinua (para errores) o una línea gris discontinua (para advertencias). O bien, con el
cursor sobre el código que tiene una línea roja o gris discontinua, pulse Option-Enter (para macOS)
o Alt-Enter (para Linux o Windows). Para aplicar una solución propuesta, elija la solución en la
lista o utilice las teclas de flecha para seleccionar la solución y, a continuación, pulse Enter. Para
activar o desactivar la selección de soluciones rápidas mediante clics con el ratón, elija AWS Cloud9,
Preferences (Preferencias), User Settings (Configuración del usuario), Language (Lenguaje), Hints &
Warnings (Consejos y advertencias), Show Available Quick Fixes on Click (Mostrar las soluciones rápidas
disponibles al hacer clic).

Buscar referencias
En el archivo activo en el editor, puede mostrar todas las referencias al símbolo en el punto de inserción, si
el IDE tiene acceso a dichas referencias.

Para ello, en el punto de inserción en cualquier lugar dentro del símbolo, ejecute el comando Find
References (Buscar referencias). Por ejemplo:

• Haga clic con el botón derecho en el punto de inserción y, a continuación, elija Find References (Buscar
referencias).
• En la barra de menús, elija Go, Find References (Ir, Buscar referencias).
• De forma predeterminada, pulse Shift-F3 para macOS, Windows o Linux.

148
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada

Si hay referencias disponibles, se abrirá un panel en la parte superior del archivo activo, junto a ese
símbolo. El panel contiene una lista de archivos en los que se hace referencia al símbolo. El panel muestra
la primera referencia de la lista. Para mostrar otra referencia, elija esa referencia de la lista.

Para cerrar el panel, elija el icono de cierre (X) en el panel o pulse Esc.

El comando Find References (Buscar referencias) podría estar deshabilitado, o podría no funcionar
según lo previsto, bajo las siguientes condiciones:

• No hay ninguna referencia a ese símbolo en el proyecto del archivo activo.


• El IDE no puede encontrar algunas o ninguna de las referencias de ese símbolo en el proyecto del
archivo activo.
• El IDE no tiene acceso a una o más ubicaciones donde se hace referencia al símbolo en el proyecto del
archivo activo.

Ir a definición
En el archivo activo en el editor, puede ir de un símbolo al lugar donde se define el símbolo, si el IDE tiene
acceso a dicha definición.

Para ello, en el punto de inserción en cualquier lugar dentro del símbolo, ejecute el comando Jump to
Definition (Buscar referencias). Por ejemplo:

• Haga clic con el botón derecho en el punto de inserción y, a continuación, elija Jump to Definition (Saltar
a la definición).
• En la barra de menús, elija Go, Jump to Definition (Ir, Saltar a la definición).
• De forma predeterminada, pulse F3 para macOS, Windows o Linux.

Si la definición está disponible, el punto de inserción cambia a esa definición, incluso aunque la definición
esté en un archivo independiente.

El comando Jump to Definition (Buscar referencias) podría estar deshabilitado, o podría no funcionar
según lo previsto, bajo las siguientes condiciones:

• El símbolo es un símbolo primitivo para ese lenguaje.


• El IDE no puede encontrar la ubicación de la definición en el proyecto del archivo activo.
• El IDE no tiene acceso a la ubicación de la definición en el proyecto del archivo activo.

Ir a símbolo
Puede ir a un símbolo específico dentro de un proyecto, de la siguiente manera.

1. Para activar uno de los archivos del proyecto, ábralo en el editor. Si el archivo ya está abierto, elija su
pestaña en el editor para activarlo.
2. Ejecute el comando Go to Symbol (Ir a símbolo). Por ejemplo:

• Elija el botón de ventana Go (Ir) (icono de lupa). En el cuadro Goto Anything (Ir a cualquier punto),
escriba @ y, a continuación, comience a escribir el símbolo.
• En la barra de menús, elija Go, Go To Symbol (Ir, Ir a símbolo). En la ventana Go (Ir), empiece a
escribir el símbolo después de @.
• Pulse Command-2 o, de forma predeterminada, Command-Shift-O para sistemas operativos
macOS o, de forma predeterminada, Ctrl-Shift-O para Windows o Linux. En la ventana Go (Ir),
empiece a escribir el símbolo después de @.

149
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada

Por ejemplo, para buscar todos los símbolos del proyecto denominados toString, comience a
escribir @toString (o comience a escribir toString después de @, si @ ya se muestra).
3. Si ve el símbolo que desea en la lista Symbols (Símbolos), haga clic en él para seleccionarlo. O
bien use las flechas arriba o abajo para seleccionarlo y, a continuación, pulse (Entrar) Enter. A
continuación, el punto de inserción cambia a ese símbolo.

Si el símbolo al que desea ir no está en el proyecto del archivo activo, es posible que este procedimiento
no funcione correctamente.

Creación de un proyecto de lenguaje


Utilice el siguiente procedimiento para crear un proyecto de lenguaje que funcionará con las características
compatibles de productividad del proyecto en el IDE de AWS Cloud9.
Note

Le recomendamos que utilice características compatibles de productividad del proyecto en


los archivos que forman parte de un proyecto de lenguaje. Aunque puede utilizar algunas
características de productividad de proyecto en un archivo que no forma parte de un proyecto, las
características podrían tener un comportamiento actuar con resultados inesperados.
Por ejemplo, puede utilizar el IDE para buscar las referencias y definiciones en un archivo en el
nivel raíz de un entorno que no forma parte de un proyecto. Es posible que el IDE solo busque en
los archivos situados en ese mismo nivel raíz. Esto podría provocar que no se encuentre ninguna
referencia o definición, aunque esas referencias o definiciones existan realmente en proyectos de
lenguaje en otros lugares del mismo entorno.

Creación de un proyecto de lenguaje de TypeScript


1. Asegúrese de que tiene TypeScript instalado en el entorno. Para obtener más información, consulte
Paso 1: Instalar las herramientas necesarias (p. 485) en la Muestra de TypeScript para AWS
Cloud9 (p. 484).
2. Desde una sesión de terminal en el IDE del entorno, cambie al directorio en el que desea crear el
proyecto. Si el directorio no existe, créelo y acceda a él. Por ejemplo, los siguientes comandos crean
un directorio denominado my-demo-project en la raíz del entorno (en ~/environment) y, a
continuación, cambia a dicho directorio.

mkdir ~/environment/my-demo-project
cd ~/environment/my-demo-project

3. En la raíz del directorio en el que desea crear el proyecto, ejecute el compilador TypeScript con la
opción --init.

tsc --init

Si este comando se realiza correctamente, el compilador TypeScript crea un archivo tsconfig.json


en la raíz del directorio para el proyecto. Puede utilizar este archivo para definir varias configuración
del proyecto, como, por ejemplo, las opciones del compilador TypeScript y archivos específicos que
incluir o excluir del proyecto.

Para obtener más información sobre el archivo tsconfig.json, consulte los siguientes temas:

• Información general de tsconfig.json en el sitio web de TypeScript.


• Esquema de tsconfig.json en el sitio web json.schemastore.org.

150
AWS Cloud9 Guía del usuario
Referencia de los comandos de menú

Referencia de comandos de la barra de menús


del entorno de desarrollo integrado (IDE) de AWS
Cloud9
En la lista siguiente se describen los comandos de la barra de menús predeterminados del IDE de AWS
Cloud9. Si la barra de menús no está visible, elija la barra fina del borde superior del IDE para mostrarla.

• AWS Cloud9 Menú de (p. 151)


• Menú File (Archivo) de (p. 152)
• Menú Edit (p. 153) (Editar)
• Menú Find (p. 155) (Buscar)
• Menú View (Ver) de (p. 156)
• Menú Go (p. 157) (Ir)
• Menú Run (p. 158) (Ejecutar)
• Menú de herramientas (p. 158)
• Menú Window (p. 159) (Ventana)
• Menú Support (p. 161) (Soporte)
• Menú Preview (p. 161) (Vista previa)
• Otros comandos de la barra de menús (p. 162)

AWS Cloud9Menú de
Comando Descripción

Preferencias Realice alguna de las siguientes acciones:

• Abra la pestaña Preferences (Preferencias) si no


está abierta.
• Haga que Preferences (Preferencias) sea la
pestaña activa si está abierta pero no activa.
• Oculte la pestaña Preferences (Preferencias) si
está activa.

Consulte Trabajar con la configuración de los


proyectos (p. 188), Trabajar con la configuración
de los usuarios (p. 196), Trabajar con los enlaces
de teclado (p. 205), Trabajar con temas (p. 208)
y Trabajo con scripts de inicialización (p. 209).

Go To Your Dashboard (Ir a su panel Abra la consola de AWS Cloud9 en una pestaña
independiente del navegador web. Consulte
Creación de un entorno (p. 53), Abrir un
entorno (p. 78), Modificación de la configuración
del entorno (p. 89) y la sección sobre eliminación
de entornos (p. 111).

Welcome Page (Página de bienvenida Abre la pestaña Welcome (Bienvenida).

151
AWS Cloud9 Guía del usuario
Menú File

Comando Descripción

Open Your Project Settings (Abrir la configuración Abra el archivo project.settings del entorno
del proyecto actual. Consulte Trabajar con la configuración de
los proyectos (p. 188).

Open Your User Settings (Abrir su configuración de Abra el archivo user.settings del usuario
usuario actual. Consulte Trabajar con la configuración de
los usuarios (p. 196).

Open Your Keymap (Abrir su Keymap Abra el archivo keybindings.settings del


usuario actual. Consulte Trabajar con enlaces de
teclado (p. 205).

Open Your Init Script (Abrir su script Init Abra el archivo init.js del usuario
actual. Consulte Trabajar con scripts de
inicialización (p. 209).

Open Your Stylesheet (Abrir su hoja de estilos Abra el archivo styles.css del usuario actual.
Consulte Trabajar con temas (p. 208).

Menú File
Comando Descripción

New File (Archivo nuevo Cree un archivo nuevo.

New From Template (Nuevo desde plantilla Crear un nuevo archivo, basado en la plantilla de
archivo elegida.

Abrir Mostrar y va a la ventana Navigate (Navegar).

Open Recent (Abrir últimos Abre el archivo elegido.

Guarde Guarda el archivo actual.

Save As (Guardar como Guarda el archivo actual con otro nombre o


ubicación, o ambos.

Save All (Guardar todo Guarda todos los archivos sin guardar.

Revert to Saved (Volver sin guardar Descarta los cambios hechos en el archivo desde
la última vez que se guardó.

Revert All to Saved (Descartar todos los cambios Descarta cambios de todos los archivos sin
guardar desde que se guardaron por última vez.

Show File Revision History (Ver historial de Ver y administrar los cambios en el archivo actual
revisiones de archivo en el editor. Consulte Uso de revisiones de
archivo (p. 175).

Upload Local Files (Cargar archivos locales Abra el cuadro de diálogo Upload Files (Cargar
archivos), que permite arrastrar archivos de la
computadora local al entorno.

Download Project (Descargar proyecto Combine los archivos del entorno en un


archivo .zip, que se puede descargar en la
computadora local.

152
AWS Cloud9 Guía del usuario
Menú Edit (Editar)

Comando Descripción

Line Endings (Finales de línea Utiliza los finales de línea de Windows (retorno de
carro además de salto de línea) o de Unix (solo
salto de línea).

Close File (Cerrar archivo Cierra el archivo actual.

Close All Files (Cerrar todos los archivos Cierra todos los archivos abiertos.

Menú Edit (Editar)

Comando Descripción

Deshacer Deshacer la última acción.

Rehacer Rehace la última acción deshecha.

Cortar Mueve la selección al portapapeles.

Copiar Copiar la selección en el portapapeles.

Pegar Copia el contenido del portapapeles en el punto de


selección.

Keyboard Mode (Modo teclado El conjunto de enlaces de teclado que se va a


utilizar, por ejemplo Default, Vim, Emacs o
Sublime. Consulte Trabajar con enlaces de
teclado (p. 205).

Selection, Select All (Selección, Seleccionar todo Seleccionar todo el contenido seleccionable.

Selection, Split Into Lines (Selección, Dividir en dos Agregar un cursor al final de la línea actual.
líneas

Selection, Single Selection (Selección, Selección Borrar todas las selecciones anteriores.
única

Selection, Multiple Selections, Add Cursor Up Añadir un cursor una línea por encima del cursor
(Selección, Selección múltiple, Añadir cursor arriba activo. Si ya hay un cursor, añade otro por encima
de ese cursor.

Selection, Multiple Selections, Add Cursor Down Añadir un cursor una línea por debajo del cursor
(Selección, Selección múltiple, Añadir cursor abajo activo. Si ya hay un cursor añadido, añade otro por
debajo de ese cursor.

Selection, Multiple Selections, Move Active Cursor Añade un segundo cursor una línea por encima
Up (Selección, Selección múltiple, Añadir cursor del cursor activo. Si ya se ha añadido un segundo
abajo cursor, lo mueve hacia arriba una línea.

Selection, Multiple Selections, Move Active Cursor Añade un segundo cursor una línea por debajo
Down (Selección, Selección múltiple, Mover cursor del cursor activo. Si ya se ha añadido un segundo
activo abajo cursor, lo mueve hacia abajo una línea.

Selection, Multiple Selections, Add Next Selection Incluir más selecciones coincidentes que están
Match (Selección, Selección múltiple, Añadir después de la selección.
coincidencia próxima selección

153
AWS Cloud9 Guía del usuario
Menú Edit (Editar)

Comando Descripción

Selection, Multiple Selections, Add Previous Incluir más selecciones coincidentes que están
Selection Match (Selección, Selección múltiple, antes de la selección.
Añadir coincidencia selección anterior

Selection, Multiple Selections, Merge Selection Agregar un cursor al final de la línea actual.
Range (Selección, Selección múltiple, Combinar
rango de selección

Selection, Select Word Right (Selección, Incluir la siguiente palabra a la derecha del cursor
Seleccionar palabra a la derecha en la selección.

Selection, Select Word Left (Selección, Seleccionar Incluir la siguiente palabra a la izquierda del cursor
palabra a la izquierda en la selección.

Selection, Select to Line End (Selección, Incluir desde el cursor hasta el final de la línea
Seleccionar hasta final de línea actual en la selección

Selection, Select to Line Start (Selección, Incluir desde el comienzo de la línea actual hasta
Seleccionar hasta inicio de línea el cursor en la selección.

Selection, Select to Document End (Selección, Incluir desde el cursor hasta el final del archivo
Seleccionar hasta el final del documento actual en la selección.

Selection, Select to Document Start (Selección, Incluir desde el cursor hasta el comienzo del
Seleccionar hasta inicio de documento archivo actual en la selección.

Line, Indent (Línea, Aplicar sangría Aplicar sangría de un tabulador a la selección.

Line, Outdent (Línea, Quitar sangría Quitar la sangría de la selección un tabulador.

Line, Move Line Up (Línea, Mover una línea arriba Mover la selección una línea hacia arriba.

Line, Move Line Down (Línea, Mover una línea Mover la selección una línea hacia abajo.
abajo

Line, Copy Lines Up (Línea, Copiar líneas arriba Copiar el contenido de la línea y pegarlo una línea
por encima.

Line, Copy Lines Down (Línea, Copiar líneas abajo Copiar el contenido de la línea y pegarlo una línea
por debajo.

Line, Remove Line (Línea, Quitar línea Eliminar el contenido de la línea actual.

Line, Remove to Line End (Línea, Borrar hasta final Eliminar desde el cursor hasta el final de la línea
de línea actual.

Line, Remove to Line Start (Línea, Borrar hasta Eliminar desde el comienzo de la línea actual hasta
comienzo de línea el cursor.

Line, Split Line (Línea, Dividir línea Mover el contenido del cursor al final de la línea, a
una línea propia.

Text, Remove Word Right (Texto, Borrar palabra Eliminar la palabra situada a la derecha del cursor.
derecha

Text, Remove Word Left (Texto, Borrar palabra Eliminar la palabra situada a la izquierda del
izquierda cursor.

154
AWS Cloud9 Guía del usuario
Menú Find (Buscar)

Comando Descripción

Text, Align (Texto, Alinear Mover todos los cursores al mismo espacio que
el cursor activo en cada una de sus líneas, si no
están alineados.

Text, Transpose Letters (Texto, Transponer letras Transponer la selección.

Text, To Upper Case (Texto, En mayúsculas Poner la selección completa en mayúsculas.

Text, To Lower Case (Texto, En minúsculas Poner la selección completa en minúsculas.

Comment, Toggle Comment (Comentario, Cambiar Añadir caracteres de comentario de línea al


comentario principio de cada línea seleccionada o eliminarlos
si ya están.

Code Folding, Toggle Fold (Plegado de código, Plegar código o quitar el plegado de código si está
Cambiar plegado plegado.

Code Folding, Unfold (Plegado de código, Desplegar el código seleccionado.


Desplegar

Code Folding, Fold Other (Plegado de código, Plegar todos los elementos plegables, excepto el
Plegar otro ámbito actual de selección.

Code Folding, Fold All (Plegado de código, Plegar Plegar todos los elementos plegables.
todo

Code Folding, Unfold All (Plegado de código, Desplegar el plegado de código en todo el archivo.
Desplegar todo

Code Formatting, Apply Code Formatting (Formato Volver a formatear el código JavaScript
de código, Aplicar formato de código seleccionado.

Code Formatting, Open Language & Formatting Abrir la sección Project Settings (Configuración del
Preferences (Formato de código, Abrir lenguaje y proyecto) de la pestaña Preferences (Preferencias)
preferencias de formato para configurar el lenguaje de programación.

Menú Find (Buscar)


Para obtener más información, consulte Búsqueda y reemplazo de texto (p. 162).

Comando Descripción

Encuentre Abrir la barra de búsqueda y reemplazo en el


documento actual centrándose en la expresión
Find (Buscar).

Find Next (Buscar siguiente Ir a la siguiente coincidencia en el documento


actual de la consulta de búsqueda introducida en
último lugar.

Find Previous (Buscar anterior Ir a la coincidencia anterior en el documento actual


de la consulta de búsqueda que se ha introducido
en último lugar.

155
AWS Cloud9 Guía del usuario
Menú View (Ver)

Comando Descripción

Reemplazar Abrir la barra de búsqueda y reemplazo en el


documento actual centrándose en la expresión
Replace With (Reemplazar por).

Replace Next (Buscar siguiente Sustituir la siguiente coincidencia de Find (Buscar)


por Replace With (Reemplazar por) en la barra de
búsqueda y reemplazo del documento actual.

Replace Previous (Buscar anterior Sustituir la coincidencia anterior de Find (Buscar)


por Replace With (Reemplazar por) en la barra de
búsqueda y reemplazo del documento actual.

Replace All (Reemplazar todo Sustituir todas las coincidencias de Find (Buscar)
por Replace With (Reemplazar por) en la barra de
búsqueda y reemplazo del documento actual.

Buscar en archivos Mostrar la barra de buscar y reemplazar para


varios archivos

Menú View (Ver)


Comando Descripción

Editores Mostrar el editor elegido.

Open Files (Archivos abiertos Mostrar la lista Open Files (Archivos abiertos) de
la ventana Environment (Entorno) u ocultarla si se
muestra.

Menu Bar (Barra Mostrar la barra de menús u ocultarla si se


muestra.

Tab Buttons (Botones de pestañas Mostrar las pestañas u ocultarlas si se muestran.

Gutter (Margen interior Mostrar el margen izquierdo o lo oculta si se


muestra.

Status Bar (barra de estado Mostrar la barra de estado u ocultarla si se


muestra.

Consola Mostrar la ventana Console (Consola) u ocultarla si


se muestra.

Layout, Single (Panel, Único Mostrar un solo panel.

Layout, Vertical Split (Panel, División vertical Mostrar dos paneles, superior e inferior.

Layout, Horizontal Split (Panel, División horizontal Mostrar dos paneles, uno junto a otro.

Layout, Cross Split (Panel, División cruzada Mostrar cuatro paneles de igual tamaño.

Layout, Split 1:2 (Panel, División 1:2 Mostrar un panel a la izquierda y dos paneles a la
derecha.

Layout, Split 2:1 (Panel, División 2:1 Mostrar dos paneles a la izquierda y un panel a la
derecha.

156
AWS Cloud9 Guía del usuario
Menú Go (Ir)

Comando Descripción

Font Size, Increase Font Size (Tamaño de fuente, Aumentar el tamaño de la fuente.
Aumentar

Font Size, Decrease Font Size (Tamaño de fuente, Disminuir el tamaño de la fuente.
Disminuir

Sintaxis Mostrar el tipo de sintaxis del documento actual.

Themes (Temas Mostrar el tipo de tema del IDE.

Wrap Lines (Ajuste de línea Ajusta las palabras en el borde del panel actual o
deja de ajustarlas si ya lo están.

Wrap To Print Margin (Ajustar al margen de Ajusta las palabras en el borde del margen de
impresión impresión actual o deja de ajustarlas si ya lo están.

Menú Go (Ir)

Comando Descripción

Go to Anything (Ir a cualquier punto Mostrar la ventana Go (Ir) en el modo Go to


Anything (Ir a cualquier punto).

Go to Symbol (Ir a símbolo Mostrar la ventana Go (Ir) en el modo Go to


Symbol (Ir a símbolo).

Go to File (Ir a archivo Mostrar la ventana Go (Ir) en el modo Go to File (Ir


a archivo).

Go to Command (Ir a comando Mostrar la ventana Go (Ir) en el modo Go to


Command (Ir a comando).

Go to Line (Ir a línea Mostrar la ventana Go (Ir) en el modo Go to Line (Ir


a línea).

Next Error (Siguiente error Ir al siguiente error.

Previous Error (Error anterior Ir al error anterior.

Word Right (Palabra a la derecha Ir una palabra a la derecha.

Word Left (Palabra a la izquierda Ir una palabra a la izquierda.

Line End (Final de línea Ir al final de la línea actual.

Line Start (Inicio de línea Ir al comienzo de la línea actual.

Jump to Definition (Saltar a la definición Ir a la definición de la variable o función en el


cursor.

Jump to Matching Brace (Saltar a símbolo Ir al símbolo coincidente en el ámbito actual.


coincidente

Scroll to Selection (Desplazar a selección Desplazar la selección a una vista mejor.

157
AWS Cloud9 Guía del usuario
Menú Run (Ejecutar)

Menú Run (Ejecutar)

Comando Descripción

Ejecute Ejecutar o depurar la aplicación actual.

Run Last (Ejecutar último Ejecutar o depurar el último archivo ejecutado.

Run With (Ejecutar con Ejecutar o depurar el ejecutor elegido. Consulte


Trabajo con compiladores, ejecutores y
depuradores (p. 178).

Run History (Ejecutar historial Ver el historial de ejecución.

Run Configurations (Configuraciones de ejecución Elija una configuración de ejecución con la


que ejecutar o depurar, o creer o administrar
configuraciones de ejecución. Consulte
Trabajo con compiladores, ejecutores y
depuradores (p. 178).

Show Debugger at Break (Mostrar depurador en Cuando la ejecución de código alcanza un punto
descanso de interrupción, muestra la ventana Debugger
(Depurador).

Compilación Compilar el archivo actual.

Cancel Build (Cancelar compilación Detener la compilación del archivo actual.

Sistema de compilación Compilar usando el sistema de compilación


elegido.

Show Build Result (Mostrar resultado de Mostrar el resultado de la compilación relacionada.


compilación

Automatically Build Supported Files (Compilar Compilar automáticamente archivos compatibles.


automáticamente archivos compatibles

Save All on Build (Guardar todo en compilación Cuando se compila, guarda todos los archivos sin
guardar relacionados.

Menú de herramientas

Comando Descripción

Strip Trailing Space (Suprimir espacio final Suprimir los espacios en blanco al final de las
líneas.

Preview, Preview File (Vista previa, Vista previa de Mostrar una vista previa del documento actual en
archivo una pestaña de vista previa.

Preview, Preview Running Application (Vista Mostrar la vista previa de la aplicación en una
previa, Vista previa de una aplicación en ejecución pestaña independiente del navegador web.

Preview, Configure Preview URL (Vista previa, Abrir la sección Project Settings (Configuración del
Configurar URL de vista previa proyecto) de la pestaña Preferences (Preferencias)

158
AWS Cloud9 Guía del usuario
Menú Window (Ventana)

Comando Descripción
en el cuadro Run & Debug, Preview URL (Ejecutar
y depurar, URL vista previa).

Preview, Show Active Servers (Vista previa, Mostrar una lista de direcciones de servidores
Mostrar servidores activos activos disponibles en el cuadro de diálogo
Process List (Lista de procesos).

Process List (Lista de procesos Mostrar el cuadro de diálogo Process List (Lista de
procesos).

Show Autocomplete (Mostrar autocompletar Mostrar el menú contextual de finalización de un


código.

Rename Variable (Renombrar variable Iniciar una refactorización de cambio de nombre


para la selección.

Toggle Macro Recording (Alternar grabación de Comienza la grabación de la combinación de teclas


macro o la detiene si ya se está grabando.

Play Macro (Reproducir macro Reproduce pulsaciones del teclado previamente


registradas.

Menú Window (Ventana)

Comando Descripción

Go Mostrar la ventana Go (Ir) u ocultarla si se muestra.

New Terminal (Nuevo terminal Abrir una nueva pestaña Terminal.

New Immediate Window (Nueva ventana inmediata Abrir una nueva pestaña Immediate (Inmediata).

Share Mostrar el cuadro de diálogo Share this


environment (Compartir este entorno).

Instalador de Muestra el cuadro de diálogo AWS Cloud9 Installer


(Instalador de AWS Cloud9).

Colaborar Mostrar la ventana Collaborate (Colaborar) u


ocultarla si se muestra

Outline (Esquema Mostrar la ventana Outline (Esquema) u ocultarla si


se muestra.

AWS Recursos de Muestra la ventana AWS Resources (Recursos de


AWS) u ocultarla si se muestra.

Entorno Mostrar la ventana Environment (Entorno) u


ocultarla si se muestra.

Debugger Mostrar la ventana Debugger (Depurador) u


ocultarla si se muestra.

Navigation, Tab to the Right (Navegación, Pestaña Ir una pestaña a la derecha.


a la derecha

159
AWS Cloud9 Guía del usuario
Menú Window (Ventana)

Comando Descripción

Navigation, Tab to the Left (Navegación, Pestaña a Ir una pestaña a la izquierda.


la izquierda

Navigation, Next Tab in History (Navegación, Ir a la siguiente pestaña.


Siguiente pestaña en el historial

Navigation, Previous Tab in History (Navegación, Ir a la pestaña anterior.


Pestaña anterior en el historial

Navigation, Move Tab to Right (Navegación, Mover Mueve la pestaña actual a la derecha. Si la
pestaña a la derecha pestaña ya está en la parte derecha, crea allí una
pestaña de división.

Navigation, Move Tab to Left (Navegación, Mover Mueve la pestaña actual a la izquierda. Si la
pestaña a la izquierda pestaña ya está en la parte izquierda, crea allí una
pestaña de división.

Navigation, Move Tab to Up (Navegación, Mover Mueve la pestaña actual un panel hacia arriba. Si
pestaña a la izquierda la pestaña ya está en la parte superior, crea allí
una pestaña de división.

Navigation, Move Tab to Down (Navegación, Mueve la pestaña actual un panel hacia abajo. Si
Mover pestaña hacia abajo la pestaña ya está en la parte inferior, crea allí una
pestaña de división.

Navigation, Go to Pane to Right (Navegación, Ir un Ir un panel a la derecha.


panel a la derecha

Navigation, Go to Pane to Left (Navegación, Ir un Ir un panel a la izquierda.


panel a la izquierda

Navigation, Go to Pane to Up (Navegación, Ir un Ir un panel hacia arriba.


panel hacia arriba

Navigation, Go to Pane to Down (Navegación, Ir un Bajar un panel.


panel hacia abajo

Navigation, Switch Between Editor and Terminal Cambiar entre el editor y la pestaña Terminal.
(Navegación, Cambiar entre editor y terminal

Navigation, Next Pane in History (Navegación, Ir al siguiente panel.


Siguiente panel en el historial

Navigation, Previous Pane in History (Navegación, Ir al panel anterior.


Panel anterior en el historial

Saved Layouts, Save (Diseños guardados, Guardar el diseño actual. Para cambiar a este
Guardar diseño más tarde, elija Saved Layouts, LAYOUT-
ID.

Saved Layouts, Save and Close All (Diseños Guarda el diseño actual y, a continuación, cierra
guardados, Guardar y cerrar todo todas las pestañas y paneles.

Saved Layouts, Show Saved Layouts in File Tree Mostrar todos los diseños guardados en la ventana
(Diseños guardados, Mostrar diseños guardados Environment (Entorno).
en árbol de archivos

Tabs, Close Pane (Pestañas, Cerrar panel Cerrar el panel actual.

160
AWS Cloud9 Guía del usuario
Menú Support (Soporte)

Comando Descripción

Tabs, Close All Tabs In All Panes (Pestañas, Cerrar todas las pestañas abiertas en todos los
Cerrar todas las pestañas en todos los paneles paneles.

Tabs, Close All But Current Tab (Pestañas, Cerrar Cerrar todas las pestañas abiertas en el panel
todas las pestañas menos la actual actual, excepto la pestaña actual.

Tabs, Split Pane in Two Rows (Pestañas, Dividir Divide el panel actual en dos, superior e inferior.
panel en dos filas

Tabs, Split Pane in Two Columns (Pestañas, Dividir Divide el panel actual en dos, izquierda y derecha.
panel en dos columnas

Presets, Full IDE (Preestablecidos, IDE completo Cambia al modo IDE completo.

Presets, Minimal Editor (Preestablecidos, Editor Cambia al modo de editor mínimo.


mínimo

Presets, Sublime Mode (Preestablecidos, Modo Cambia al modo Sublime.


Sublime

Menú Support (Soporte)

Comando Descripción

Welcome Page (Página de bienvenida Abre la pestaña Welcome (Bienvenida).

Get Help (Community) (Obtener ayuda Abre el sitio web de la comunidad en línea de AWS
[Comunidad) Cloud9 en una nueva pestaña del navegador web.

Read Documentation (Leer documentación Abre la Guía del usuario de AWS Cloud9 en una
nueva pestaña del navegador web.

Menú Preview (Vista previa)

Comando Descripción

Preview File (Vista previa de archivo Mostrar una vista previa del documento actual en
una pestaña de vista previa.

Preview Running Application (Vista previa de Mostrar la vista previa de la aplicación en una
aplicación en ejecución pestaña independiente del navegador web.

Configure Preview URL (Configurar URL de vista Abrir la sección Project Settings (Configuración del
previa proyecto) de la pestaña Preferences (Preferencias)
en el cuadro Run & Debug, Preview URL (Ejecutar
y depurar, URL vista previa).

Show Active Servers (Mostrar servidores activos Mostrar una lista de direcciones de servidores
activos disponibles en el cuadro de diálogo
Process List (Lista de procesos).

161
AWS Cloud9 Guía del usuario
Otros comandos de la barra de menús

Otros comandos de la barra de menús


Comando Descripción

Ejecute Ejecutar o depurar la aplicación actual.

Share Abre el cuadro de diálogo Share this environment


(Compartir este entorno).

Preferences (Preferencias) (icono de engranaje) Abre la pestaña Preferences (Preferencias).

Búsqueda y reemplazo de texto en entorno de


desarrollo integrado (IDE) de AWS Cloud9
Puede utilizar la barra de búsqueda y reemplazo del IDE de AWS Cloud9 para encontrar y reemplazar
texto en un único archivo o en varios.

• Búsqueda de texto en un único archivo (p. 162)


• Reemplazo de texto en un único archivo (p. 162)
• Búsqueda de texto en varios archivos (p. 163)
• Reemplazo de texto en varios archivos (p. 164)
• Opciones de búsqueda y reemplazo (p. 165)

Búsqueda de texto en un único archivo


1. Abra el archivo en el que desea encontrar texto. Si el archivo ya está abierto, elija la pestaña del archivo
para activarlo.
2. En la barra de menús, elija Find, Find (Buscar, Buscar).
3. En la barra de búsqueda y reemplazo, en Find (Buscar), escriba el texto que desea encontrar.
4. Para especificar opciones de búsqueda adicionales, consulte Opciones de búsqueda y
reemplazo (p. 165).
5. Si hay coincidencias, el valor 0 of 0 (0 de 0) en el cuadro Find (Buscar) cambiará a un número distinto
de cero. En tal caso, el editor se dirige a la primera coincidencia. En caso de que haya más de una
coincidencia, para pasar a la siguiente, elija la flecha derecha del cuadro Find (Buscar) o elija Find,
Find Next (Buscar, Buscar siguiente) en la barra de menús. Para pasar a la coincidencia anterior, elija
la flecha izquierda del cuadro Find (Buscar) o elija Find, Find Previous (Buscar, Buscar anterior) en la
barra de menús.

Reemplazo de texto en un único archivo


1. Abra el archivo en el que desea reemplazar texto. Si el archivo ya está abierto, elija la pestaña del
archivo para activarlo.
2. En la barra de menús, elija Find, Replace (Buscar, Reemplazar).
3. En la barra de búsqueda y reemplazo, en Find (Buscar), escriba el texto que desea encontrar.
4. En Replace With (Reemplazar por), escriba el texto por el que desea reemplazar el texto de Find
(Buscar).

162
AWS Cloud9 Guía del usuario
Búsqueda de texto en varios archivos

5. Para especificar opciones de búsqueda y reemplazo adicionales, consulte la sección Opciones de


búsqueda y reemplazo (p. 165).
6. Si hay coincidencias, el valor 0 of 0 (0 de 0) en el cuadro Find (Buscar) cambiará a un número distinto
de cero. En tal caso, el editor se dirige a la primera coincidencia. En caso de que haya más de una
coincidencia, para pasar a la siguiente, elija la flecha derecha del cuadro Find (Buscar) o elija Find,
Find Next (Buscar, Buscar siguiente) en la barra de menús. Para pasar a la coincidencia anterior, elija
la flecha izquierda del cuadro Find (Buscar) o elija Find, Find Previous (Buscar, Buscar anterior) en la
barra de menús.
7. Para reemplazar la coincidencia actual con el texto de Replace With (Reemplazar por) y, a continuación,
pasar a la siguiente coincidencia, elija Replace (Reemplazar). Para reemplazar todas las coincidencias
con el texto de Replace With (Reemplazar por), elija Replace All (Reemplazar todo).

Búsqueda de texto en varios archivos


1. En la barra de menús, elija Find, Find in Files (Buscar, Buscar en archivos).
2. En la barra de búsqueda y reemplazo, en Find (Buscar), escriba el texto que desea encontrar.
3. Para especificar opciones de búsqueda adicionales, consulte Opciones de búsqueda y
reemplazo (p. 165).
4. En el cuadro que aparece a la derecha del botón Find (Buscar) (el cuadro con *.*, -.*), escriba
cualquier conjunto de archivos para incluirlos o excluirlos de la búsqueda. Por ejemplo:
• En blanco * o *.*: buscar todos los archivos.
• my-file.txt: buscar solo el archivo llamado my-file.txt.
• my*: buscar solo los archivos con nombres de archivo que comiencen por my.
• my*.txt: buscar solo los archivos cuyos nombres comiencen por my y que tengan la extensión de
archivo .txt.
• my*.htm*: buscar solo los archivos cuyos nombres comiencen por my y que tengan una extensión de
archivo que comience por .htm.
• my*.htm, my*.html: buscar los archivos cuyos nombres comiencen por my y que tengan una
extensión de archivo .htm o .html.
• -my-file.txt: no buscar el archivo llamado my-file.txt.
• -my*: no buscar los archivos que comiencen por my.
• -my*.htm*: no buscar los archivos cuyos nombres comiencen por my y que tengan una extensión de
archivo que comience por .htm.
• my*.htm*, -my*.html: buscar todos los archivos cuyos nombres comiencen por my y que tengan
una extensión de archivo que comience por .htm. Pero no buscar los archivos cuyos nombres
comiencen por my y que tengan una extensión de archivo que comience por .html.
5. En la lista desplegable que aparece junto a la casilla anterior, seleccione una de las siguientes opciones
para restringir aún más la búsqueda solo a ubicaciones específicas:
• Environment (Entorno): buscar solo archivos en la ventana Environment (Entorno).
• Project (excludes .gitignore'd) (Proyecto [se excluye .gitignore'd]): buscar cualquier archivo del
entorno, excepto los archivos o tipos de archivo que aparecen en el archivo .gitignore del entorno,
si existe un archivo .gitignore.
• Selection (Selección): buscar solo los archivos que se haya seleccionado actualmente en la ventana
Environment (Entorno).
Note

Para restringir aún más la búsqueda a solo una sola carpeta, elija una carpeta en la ventana
Environment (Entorno) y, a continuación, elija Selection (Selección). También puede hacer
clic con el botón derecho del ratón en la ventana Environment (Entorno) y, a continuación,
elegir Search In This Folder (Buscar en esta carpeta) en el menú contextual.
163
AWS Cloud9 Guía del usuario
Reemplazo de texto en varios archivos

• Favorites (Favoritos): buscar solo archivos en la lista Favorites (Favoritos) de la ventana Environment
(Entorno).
• Active File (Archivo activo): buscar solo el archivo activo.
• Open Files (Archivos abiertos): buscar solo archivos en la lista Open Files (Archivos abiertos) de la
ventana Environment (Entorno).
6. Elija Find (Buscar).
7. Para ir a un archivo que contenga coincidencias, haga doble clic en el nombre de archivo en la pestaña
Search Results (Resultados de búsqueda). Para ir a una coincidencia específica, haga doble clic en la
coincidencia que desee de la pestaña Search Results (Resultados de búsqueda).

Reemplazo de texto en varios archivos


1. En la barra de menús, elija Find, Find in Files (Buscar, Buscar en archivos).
2. En la barra de búsqueda y reemplazo, en Find (Buscar), escriba el texto que desea encontrar.
3. Para especificar opciones de búsqueda adicionales, consulte Opciones de búsqueda y
reemplazo (p. 165).
4. En el cuadro que aparece a la derecha del botón Find (Buscar) (el cuadro con *.*, -.*), escriba
cualquier conjunto de archivos para incluirlos o excluirlos de la búsqueda. Por ejemplo:
• En blanco * o *.*: todos los archivos.
• my-file.txt: solo el archivo llamado my-file.txt.
• my*: solo los archivos cuyos nombres comiencen por my.
• my*.txt: solo los archivos cuyos nombres comiencen por my y que tengan la extensión de archivo
.txt.
• my*.htm*: todos los archivos cuyos nombres comiencen por my y que tengan una extensión de
archivo que comience por .htm.
• my*.htm, my*.html: todos los archivos cuyos nombres comiencen por my y que tengan una
extensión de archivo .htm o .html.
• -my-file.txt: no buscar el archivo llamado my-file.txt.
• -my*: no buscar los archivos que comiencen por my.
• -my*.htm*: no buscar los archivos cuyos nombres comiencen por my y que tengan una extensión de
archivo que comience por .htm.
• my*.htm*, -my*.html: buscar todos los archivos cuyos nombres comiencen por my y que tengan
una extensión de archivo que comience por .htm. Pero no buscar los archivos cuyos nombres
comiencen por my y que tengan una extensión de archivo que comience por .html.
5. En la lista desplegable que aparece junto a la casilla anterior, seleccione una de las siguientes opciones
para restringir aún más la búsqueda solo a ubicaciones específicas:
• Environment (Entorno): solo archivos en la ventana Environment (Entorno).
• Project (excludes .gitignore'd) (Proyecto [se excluye .gitignore'd]): cualquier archivo del entorno,
excepto los archivos o tipos de archivo que se incluyen en el archivo .gitignore del entorno, si
existe un archivo .gitignore.
• Selection:/ (Selección:/): solo los archivos que estén seleccionados actualmente.
• Favorites (Favoritos): solo los archivos de la lista Favorites (Favoritos) de la ventana Environment
(Entorno).
• Active File (Archivo activo): solo el archivo activo.
• Open Files (Archivos abiertos): solo los archivos de la lista Open Files (Archivos abiertos) en la
ventana Environment (Entorno).
6. En Replace With (Reemplazar por), escriba el texto por el que desea reemplazar el texto de Find
(Buscar).
7. Elija Replace (Reemplazar).

164
AWS Cloud9 Guía del usuario
Opciones de búsqueda y reemplazo

Note

La operación de reemplazo se realiza inmediatamente en todos los archivos dentro del ámbito.
Esta operación no se puede deshacer fácilmente. Si desea ver qué se va a modificar antes de
comenzar la operación de reemplazo, elija Find (Buscar).
8. Para ir a un archivo que contenga reemplazos, haga doble clic en el nombre de archivo en la pestaña
Search Results (Resultados de búsqueda). Para ir a un reemplazo específico, haga doble clic en el
reemplazo que desee en la pestaña Search Results (Resultados de búsqueda).

Opciones de búsqueda y reemplazo


Elija cualquiera de los siguientes botones de la barra de búsqueda y reemplazo para modificar las
operaciones de búsqueda y reemplazo.

• Regular Expressions (Expresiones regulares): buscar texto que coincide con la expresión regular
especificada en Find (Buscar) o Find in Files (Buscar en archivos). Consulte Escribiendo un patrón de
expresión regular en tema Expresiones regulares de JavaScript en Mozilla Developer Network.
• Match Case (Coincidir mayúsculas y minúsculas): buscar texto que coincide con el uso de mayúsculas y
minúsculas especificado en Find (Buscar) o Find in Files (Buscar en archivos).
• Whole Words (Palabras completas): utilizar las reglas de carácter de palabra estándar para buscar texto
en Find (Buscar) o Find in Files (Buscar en archivos).
• Wrap Around (Ajuste automático): solo para un único archivo, no parar al final o al comienzo del archivo
al pasar a la coincidencia siguiente o anterior.
• Search Selection (Buscar en la selección): solo para un único archivo, buscar únicamente en la
selección.
• Show in Console (Mostrar en la consola): para varios archivos, mostrar la pestaña Search Results
(Resultados de búsqueda) en Console (Consola) en lugar del panel activo.
• Preserve Case (Conservar mayúsculas y minúsculas): solo para un único archivo, conservar el uso de
mayúsculas y minúsculas según corresponda al reemplazar el texto.

Vista previa de archivos en el entorno de desarrollo


integrado (IDE) de AWS Cloud9
Puede utilizar el IDE de AWS Cloud9 para obtener una vista previa de los archivos de un entorno de
desarrollo de AWS Cloud9 en el IDE.

165
AWS Cloud9 Guía del usuario
Abrir un archivo para vista previa

• Abrir un archivo para vista previa (p. 166)


• Volver a cargar la vista previa de un archivo (p. 167)
• Cambiar el tipo de vista previa del archivo (p. 167)
• Abrir una vista previa de un archivo en una pestaña independiente del navegador web (p. 167)
• Cambiar a una vista previa de archivo distinta (p. 167)

Abrir un archivo para vista previa


Lleve a cabo una de las siguientes operaciones en el IDE de AWS Cloud9 para abrir una pestaña de vista
previa de un archivo en el entorno:

• En la ventana Environment (Entorno), haga clic con el botón derecho en el archivo del que desea
obtener una vista previa y, a continuación, elija Preview (Vista previa).
Note

Aunque puede emplear este enfoque para obtener una vista previa de cualquier archivo,
funciona mejor con los archivos que tienen las siguientes extensiones de archivo:
• .htm
• .html
• .pdf
• .svg
• .xhtml
• Cualquier archivo que tenga contenido en formato Markdown.
• Abra un archivo con una de las siguientes extensiones de archivo:
• .pdf
• .svg
• Con el archivo del que desea obtener una vista previa ya abierto y activo, en la barra de menús, elija
Preview, Preview File FILE_NAME (Vista previa, Vista previa de archivo, NOMBRE_ARCHIVO). O bien,
seleccione Tools, Preview, Preview File FILE_NAME, donde FILE_NAME es el nombre del archivo del
que desea obtener una vista previa.
Note

Estos comandos funcionan solo con los siguientes tipos de archivo:


• .htm
• .html
• .markdown
• .md
• .pdf
• .svg
• .txt: la vista previa funciona mejor si el contenido del archivo está en formato Markdown.
• .xhtml: la vista previa funciona mejor si el archivo contiene o hace referencia a información
de presentación de contenido.

Note

El menú Preview Settings (Configuración de vista previa) de la pestaña de vista previa de archivos
166
no está operativo y elegir cualquiera de sus comandos de menú no tendrá ningún efecto.
AWS Cloud9 Guía del usuario
Volver a cargar la vista previa de un archivo

Volver a cargar la vista previa de un archivo


En la pestaña de vista previa de archivos, elija el botón Refresh (Actualizar) (flecha circular).

Cambiar el tipo de vista previa del archivo


En la pestaña de vista previa de archivos, elija una de las siguientes opciones en la lista de tipos de vista
previa:

• Browser (Navegador): muestra la vista previa del archivo en un formato de navegador web, solo para los
siguientes tipos de archivo:
• .htm
• .html
• .pdf
• .svg
• .xhtml: la vista previa funciona mejor si el archivo contiene o hace referencia a información de
presentación de contenido.
• Raw Content (UTF-8) (Contenido raw (UTF-8): muestra la vista previa del contenido del archivo original
en Formato de Transformación Unicode de 8 bits (UTF-8). Esto puede mostrar contenido inesperado
para algunos tipos de archivos.
• Markdown (Marcado): muestra la vista previa de cualquier archivo con formato Markdown. Los intentos
de obtener una vista previa de cualquier otro tipo de archivo pueden mostrar contenido inesperado.

Abrir una vista previa de un archivo en una pestaña


independiente del navegador web
En la pestaña de vista previa de archivos, elija Pop Out Into New Window (Mostrar en nueva ventana).

Cambiar a una vista previa de archivo distinta


En la pestaña de vista previa de archivos, escriba la ruta de una ruta de archivo diferente en la barra de
direcciones. La barra de dirección se encuentra entre el botón Refresh (Actualizar) y la lista de tipos de
vista previa.

Vista previa de las aplicaciones en ejecución en


el entorno de desarrollo integrado (IDE) de AWS
Cloud9
Puede utilizar el IDE de AWS Cloud9 para obtener una vista previa de una aplicación en ejecución desde
el IDE.

Temas
• Ejecutar una aplicación (p. 168)
• Vista previa de una aplicación en ejecución (p. 169)
• Volver a cargar la vista previa de una aplicación (p. 170)
• Cambiar el tipo de vista previa de la aplicación (p. 170)

167
AWS Cloud9 Guía del usuario
Ejecutar una aplicación

• Abrir la vista previa de una aplicación en una pestaña independiente del navegador web (p. 170)
• Cambiar a una URL de vista previa distinta (p. 170)
• Compartir una aplicación en ejecución a través de internet (p. 170)

Ejecutar una aplicación


Para poder obtener la vista previa de una aplicación desde el IDE, debe estar ejecutándose en el entorno
de desarrollo de AWS Cloud9 mediante HTTP en el puerto 8080, 8081, o 8082 con la IP 127.0.0.1,
localhost, o 0.0.0.0.
Note

No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082 con dirección
IP de 127.0.0.1, localhost o 0.0.0.0. Sin embargo, no obtendrá una vista previa de la
aplicación en ejecución desde el IDE.

Para escribir código para ejecutar la aplicación en un puerto e IP específicos, consulte la documentación
de la aplicación.

Para ejecutar su aplicación, consulte Run Your Code (p. 179).

Para probar este comportamiento, podría agregar, por ejemplo, el siguiente código de JavaScript a un
archivo con un nombre como server.js en la raíz de su entorno. Este código ejecuta un servidor
mediante Node.js.
Note

El siguiente código indica que text/html es el Content-Type del contenido devuelto.


Especifique otro Content-Type para devolver contenido en otro formato (text/css para un
archivo CSS, por ejemplo).

var http = require('http');


var fs = require('fs');
var url = require('url');

http.createServer( function (request, response) {


var pathname = url.parse(request.url).pathname;
console.log("Trying to find '" + pathname.substr(1) + "'...");

fs.readFile(pathname.substr(1), function (err, data) {


if (err) {
response.writeHead(404, {'Content-Type': 'text/html'});
response.write("ERROR: Cannot find '" + pathname.substr(1) + "'.");
console.log("ERROR: Cannot find '" + pathname.substr(1) + "'.");
} else {
console.log("Found '" + pathname.substr(1) + "'.");
response.writeHead(200, {'Content-Type': 'text/html'});
response.write(data.toString());
}
response.end();
});
}).listen(8080, 'localhost'); // Or 8081 or 8082 instead of 8080. Or '127.0.0.1' instead of
'localhost'.

O bien, podría agregar el siguiente código de Python a un archivo con un nombre como server.py en la
raíz de su entorno. Este código ejecuta un servidor mediante Python, como se indica a continuación.

import os
import http.server

168
AWS Cloud9 Guía del usuario
Vista previa de una aplicación en ejecución

import socketserver

ip = 'localhost' # Or '127.0.0.1' instead of 'localhost'.


port = '8080' # Or '8081' or '8082' instead of '8080'.
Handler = http.server.SimpleHTTPRequestHandler
httpd = socketserver.TCPServer((ip, int(port)), Handler)
httpd.serve_forever()

Después, agregue el siguiente código HTML a un archivo con un nombre como index.html en la raíz de
su entorno.

<html>
<head>
<title>Hello Home Page</title>
</head>
<body>
<p style="font-family:Arial;color:blue">Hello, World!</p>
</body>
</html>

Para ver la salida HTML de este archivo en la pestaña de vista previa de la aplicación, ejecute server.js
con el archivo Node.js o server.py con Python. A continuación, siga las instrucciones del siguiente
procedimiento para obtener una vista previa. En la pestaña de vista previa de la aplicación, añada /
index.html al final de la URL y, a continuación, pulse Enter.

Vista previa de una aplicación en ejecución


Con la aplicación en ejecución utilizando HTTP a través del puerto 8080, 8081 o 8082 con la IP
127.0.0.1, localhost o 0.0.0.0 en el entorno, y con el archivo de código de la aplicación
correspondiente abierto y activo en el IDE de AWS Cloud9, elija una de las siguientes opciones en la barra
de menús:

• Preview, Preview Running Application (Vista previa, Vista previa de una aplicación en ejecución
• Tools, Preview, Preview Running Application (Herramientas, Vista previa, Vista previa de una aplicación
en ejecución

Se abre una pestaña de vista previa de la aplicación en el entorno y, a continuación, se muestra en ella el
resultado de la aplicación.

Si la pestaña de vista previa de la aplicación muestra un error o está en blanco, pruebe los siguientes
pasos de solución de problemas La pestaña de vista previa de la aplicación muestra un mensaje de error o
está en blanco (p. 586).

Para permitir que otras personas obtengan una vista previa de la aplicación en ejecución fuera del IDE,
consulte Compartir una aplicación en ejecución a través de internet (p. 170).
Note

Si la aplicación aún no está en ejecución, verá un error en la pestaña de vista previa. Ejecute o
reinicie la aplicación y, a continuación, seleccione el comando de la barra de menús de nuevo.
Si la aplicación no se puede ejecutar en cualquiera de los puertos o direcciones IP anteriores, o
si la aplicación debe ejecutarse en más de uno de estos puertos al mismo tiempo (por ejemplo,
su aplicación debe ejecutarse en los puertos 8080 y 3000 al mismo tiempo), la pestaña de vista
previa puede mostrar un error o estar en blanco. Esto se debe a que la pestaña de vista previa
de la aplicación dentro del entorno solo funciona con los puertos y las direcciones IP anteriores.
Además, funciona con un solo puerto a la vez.
No recomendamos compartir la URL en la pestaña de vista previa de
la aplicación con otros usuarios. (La URL se muestra con el formato

169
AWS Cloud9 Guía del usuario
Volver a cargar la vista previa de una aplicación

https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-
east-2.amazonaws.com/, donde 12a34567b8cd9012345ef67abcd890e1 es el ID que
AWS Cloud9 asigna al entorno y us-east-2 es el ID de la región de AWS para el entorno). Esta
URL solo funciona cuando el IDE del entorno está abierto y la aplicación se está ejecutando en el
mismo navegador web.
Si intenta ir a la IP de 127.0.0.1, localhost o 0.0.0.0 usando la pestaña de vista previa
de la aplicación en el IDE o en una pestaña independiente del navegador web fuera del IDE,
el comportamiento incorporado predeterminado del IDE de AWS Cloud9 es que intentará ir a
su computadora local, en lugar de intentar ir a la instancia o a su propio servidor conectado al
entorno.

Volver a cargar la vista previa de una aplicación


En la pestaña de vista previa de la aplicación, elija el botón Refresh (Actualizar) (flecha circular).
Note

Este comando no reinicia el servidor. Simplemente actualiza el contenido de la aplicación en la


pestaña de vista previa.

Cambiar el tipo de vista previa de la aplicación


En la pestaña de vista previa de la aplicación, elija una de las siguientes opciones en la lista de tipos de
vista previa:

• Browser (Navegador): ofrece la vista previa del resultado en un formato de navegador web.
• Raw Content (UTF-8) (Contenido raw ([UTF-8]): intenta obtener una vista previa del resultado en
Formato de Transformación Unicode de 8 bits (UTF-8), si procede.
• Markdown (Marcado): intenta obtener una vista previa del resultado con formato de marcado, si procede.

Abrir la vista previa de una aplicación en una pestaña


independiente del navegador web
En la pestaña de vista previa de la aplicación, elija Pop Out Into New Window (Mostrar en nueva ventana).
Note

La vista previa de la aplicación no se mostrará en una nueva pestaña del navegador web salvo si
el IDE de AWS Cloud9 también se ejecuta en otra pestaña, por lo menos, del mismo navegador.

Cambiar a una URL de vista previa distinta


En la pestaña de vista previa de la aplicación, escriba la ruta de una URL diferente en la barra de
direcciones. La barra de dirección se encuentra entre el botón Refresh (Actualizar) y la lista de tipos de
vista previa.

Compartir una aplicación en ejecución a través de


internet
Tras obtener una vista previa de la aplicación en ejecución, puede ponerla a disposición de otros usuarios
a través de Internet.

170
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet

Para ello, si tiene una instancia de Amazon EC2 conectada a su entorno, siga los pasos que se indican a
continuación. De lo contrario, consulte la documentación de su servidor.

Temas
• Paso 1: obtener la dirección IP y el ID de la instancia (p. 171)
• Paso 2: configurar el grupo de seguridad para la instancia (p. 172)
• Paso 3: configurar la subred para la instancia (p. 173)
• Paso 4: Compartir la URL de la aplicación en ejecución (p. 174)

Paso 1: obtener la dirección IP y el ID de la instancia


En este paso, anote el ID de instancia y la dirección IP pública de la instancia de Amazon EC2 que esté
conectada al entorno. Necesitará el ID de la instancia en un paso posterior para permitir solicitudes
de aplicaciones entrantes. A continuación, puede dar la dirección IP pública a otros usuarios para que
obtengan acceso a la aplicación en ejecución.

1. Obtenga el ID de la instancia de Amazon EC2. Para ello, siga uno de estos pasos:

• En una sesión de terminal en el IDE de AWS Cloud9 del entorno, ejecute el siguiente comando para
obtener el ID de la instancia de Amazon EC2.

curl http://169.254.169.254/latest/meta-data/instance-id

El ID de la instancia tendrá un aspecto similar al siguiente: i-12a3b456c789d0123. Anote el ID de


esta instancia.
• En el IDE del entorno, en la barra de menús, elija el icono de usuario y, a continuación, elija Manage
EC2 Instance (Administrar instancia EC2).

En la consola de Amazon EC2 que se muestra, anote el ID de la instancia que aparece en la


columna Instance ID (ID de instancia). El ID de la instancia tendrá un aspecto similar al siguiente:
i-12a3b456c789d0123.
2. Obtenga la dirección IP pública de la instancia de Amazon EC2. Para ello, siga uno de estos pasos:

• En el IDE del entorno, en la barra de menús, elija Share (Compartir). En el cuadro de diálogo Share
this environment (Compartir este entorno), anote la dirección IP pública del cuadro Application
(Aplicación). La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0.
• En una sesión de terminal en el IDE del entorno, ejecute el siguiente comando para obtener la
dirección IP pública de la instancia de Amazon EC2.

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

La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0. Anote esta dirección IP
pública.
• En el IDE del entorno, en la barra de menús, elija el icono de usuario y, a continuación, elija Manage
EC2 Instance (Administrar instancia EC2). En la consola de Amazon EC2 que se muestra, en la
pestaña Description (Descripción), anote la dirección IP pública para el campo IPv4 Public IP (IP
pública IPv4). La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0.

171
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet

Note

La dirección IP pública de la instancia podría cambiar en cualquier momento que la instancia


se reinicie. Para evitar que cambie esta dirección IP, una solución es asignar una dirección
IP elástica y asignarla después a la instancia en ejecución. Para obtener instrucciones,
consulte Asignación de una dirección IP elástica y Asociación de una dirección IP elástica
a una instancia en ejecución en la Guía del usuario de Amazon EC2 para instancias de
Linux. Tenga en cuenta también que la posibilidad de asignar una dirección IP elástica puede
suponer que se hagan cargos en su cuenta de AWS. Para obtener más información, consulte
Precios de Amazon EC2.

Paso 2: configurar el grupo de seguridad para la instancia


En este paso, la consola de Amazon EC2 se utiliza para configurar el grupo de seguridad de Amazon EC2
para la instancia conectada al entorno, a fin de permitir las solicitudes HTTP entrantes a través del puerto
8080, 8081 o 8082.
Note

No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082. Si ejecuta en
otro protocolo o puerto, sustitúyalo en todo este paso. No podrá obtener una vista previa de la
aplicación en ejecución desde el IDE hasta que vuelva a ejecutarla mediante HTTP a través de
uno de los puertos y las direcciones IP, como se describe en Vista previa de una aplicación en
ejecución (p. 169).
Para tener una capa adicional de seguridad, puede configurar una lista de control de acceso
(ACL) de red para una subred de una nube privada virtual (VPC) que la instancia pueda utilizar.
Para obtener más información acerca de los grupos de seguridad y las ACL de red, consulte lo
siguiente:

• Paso 3: configurar la subred para la instancia (p. 173)


• Seguridad en la Guía del usuario de Amazon VPC
• Grupos de seguridad de su Your VPC en la Guía del usuario de Amazon VPC
• ACL de red en la Guía del usuario de Amazon VPC

1. En el IDE del entorno, en la barra de menús, elija el icono de usuario y, a continuación, elija Manage
EC2 Instance (Administrar instancia EC2). A continuación, vaya al paso 3 en este procedimiento.
2. Si la elección de Manage EC2 Instance (Administrar instancia EC2) o de otros pasos de este
procedimiento muestra errores, recomendamos que inicie sesión en la consola de Amazon EC2
utilizando las credenciales de un usuario administrador de IAM en su cuenta de AWS y después
complete las siguientes instrucciones. Si no puede hacerlo, consulte con el administrador de su cuenta
de AWS.

a. Inicie sesión en la AWS Management Console, si todavía no lo ha hecho, en https://


console.aws.amazon.com/.
b. Abra la consola de Amazon EC2. Para ello, en la barra de navegación de AWS, elija Services
(Servicios). A continuación, elija EC2.
c. En la barra de navegación de AWS, elija la región de AWS en la que se encuentra el entorno.
d. Si se muestra EC2 Dashboard (Panel de EC2), elija Running Instances (Ejecutar instancias).
También puede en el panel de navegación del servicio, expandir Instances (Instancias) si aún no
está ampliado y elegir Instances (Instancias).
e. En la lista de instancias, seleccione la instancia cuyo Instance ID (ID de instancia) coincida con el
ID de instancia que anotó anteriormente.

172
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet

3. En la pestaña Description (Descripción) de la instancia, elija el vínculo del grupo de seguridad junto a
Security groups (Grupos de seguridad).
4. Con el grupo de seguridad a la vista, busque en la pestaña Inbound (Entrada). Si ya existe una regla
donde Type (Tipo) se establece en Custom TCP Rule (Regla de TCP personalizada) y Port Range
(Rango de puertos) en 8080, 8081 u 8082, elija Cancel (Cancelar) y diríjase a Paso 3: configurar la
subred para la instancia (p. 173). De lo contrario, elija Edit (Editar).
5. En el cuadro de diálogo Edit inbound rules (Modificar reglas de entrada), elija Add tag (Agregar
etiqueta).
6. En Type, elija Custom TCP Rule.
7. En Port Range (Rango de puerto), escriba 8080, 8081 o 8082.
8. En Source (Fuente), elija Anywhere (Cualquiera).
Note

La elección de Anywhere (Cualquiera) en Source (Fuente) permite las solicitudes entrantes


desde cualquier dirección IP. Para restringirlo a determinadas direcciones IP, seleccione
Custom (Personalizado) y, a continuación, escriba el rango de direcciones IP o elija My IP (Mi
IP) para restringirlo a las solicitudes de la dirección IP únicamente
9. Seleccione Save.

Paso 3: configurar la subred para la instancia


En este paso, las consolas de Amazon EC2 y Amazon Virtual Private Cloud (Amazon VPC) se utilizan para
configurar la subred para la instancia de Amazon EC2 conectada al entorno, a fin de permitir también las
solicitudes HTTP entrantes a través del puerto 8080, 8081 o 8082.
Note

No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082. Si ejecuta en
otro protocolo o puerto, sustitúyalo en todo este paso. No podrá obtener una vista previa de la
aplicación en ejecución desde el IDE hasta que vuelva a ejecutarla mediante HTTP a través
de los puertos y las direcciones IP, como se describe en Vista previa de una aplicación en
ejecución (p. 169).
En este paso se describe cómo configurar una ACL de red para una subred en una consola de
Amazon VPC que la instancia pueda utilizar. Este paso no es necesario. Sin embargo, agrega una
capa de seguridad adicional en comparación con usar solo grupos de seguridad. Para obtener
más información acerca de las ACL de red, consulte lo siguiente:

• Seguridad en la Guía del usuario de Amazon VPC


• ACL de red en la Guía del usuario de Amazon VPC

1. Con la consola de Amazon EC2 ya abierta del paso anterior, en el panel de navegación del servicio,
expanda Instances (Instancias) si aún no lo está y, a continuación, elija Instances (Instancias).
2. En la lista de instancias, seleccione la instancia cuyo Instance ID (ID de instancia) coincida con el ID
de instancia que anotó anteriormente.
3. En la pestaña Description (Descripción) de la instancia, anote el valor de Subnet ID (ID de subred).
Debería ser similar a: subnet-1fab8aEX.
4. Abra la consola de Amazon VPC. Para ello, en la barra de navegación de AWS, elija Services
(Servicios). A continuación, elija VPC.

En este paso, le recomendamos que inicie sesión en la consola de Amazon VPC con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Si no puede hacerlo, consulte con el
administrador de su cuenta de AWS.

173
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet

5. Si se muestra VPC Dashboard (Panel de VPC), elija Subnets (Subredes). También puede seleccionar
Subnets (Subredes) en el panel de navegación.
6. En la lista de subnets, seleccione la subnets cuyo valor de Subnet ID (ID de subred) coincida con el
que anotó anteriormente.
7. En la pestaña Summary (Resumen), elija el enlace ACL de red junto a Network ACL (ACL de red).
8. En la lista de ACL de red, seleccione la ACL de red. (Solo hay una ACL de red).
9. Busque en la pestaña Inbound Rules (Reglas de entrada) la ACL de red. Si ya existe una regla donde
Type (Tipo) está establecido en HTTP* (8080), HTTP* (8081) o HTTP* (8082), continúe en Paso 4:
Compartir la URL de la aplicación en ejecución (p. 174). De lo contrario, elija Edit (Editar).
10. Elija Add another rule.
11. En Rule # (N.º de regla), escriba un número para la regla (por ejemplo, 200).
12. En Type, elija Custom TCP Rule.
13. En Port Range (Rango de puerto), escriba 8080, 8081 o 8082.
14. En Source (Fuente), escriba el rango de las direcciones IP de las que se permitirán solicitudes
entrantes. Por ejemplo, para permitir las solicitudes entrantes de cualquier dirección IP, escriba
0.0.0.0/0.
15. Con Allow / Deny (Permitir/Denegar) establecido en ALLOW, elija Save (Guardar).

Paso 4: Compartir la URL de la aplicación en ejecución


Con la aplicación en ejecución, de a los otros usuarios la dirección IP pública antes anotada. Asegúrese de
iniciar la URL con el protocolo correcto y añada el número de puerto si no es el valor predeterminado de
ese protocolo (por ejemplo, http://192.0.2.0:8080/index.html usando HTTP a través del puerto
8080).

Si la pestaña del navegador web resultante muestra un error o está en blanco, pruebe los siguientes pasos
de solución de problemas No se puede mostrar la aplicación en ejecución fuera del IDE (p. 587).
Note

La dirección IP pública de la instancia podría cambiar en cualquier momento que la instancia


se reinicie. Para evitar que cambie esta dirección IP, una solución es asignar una dirección IP
elástica y asignarla después a la instancia en ejecución. Para obtener instrucciones, consulte
Asignación de una dirección IP elástica y Asociación de una dirección IP elástica a una instancia
en ejecución en la Guía del usuario de Amazon EC2 para instancias de Linux. Tenga en cuenta
también que la posibilidad de asignar una dirección IP elástica puede suponer que se hagan
cargos en su cuenta de AWS. Para obtener más información, consulte Precios de Amazon EC2.
No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082. Sin embargo,
no podrá obtener una vista previa de la aplicación en ejecución desde el IDE hasta que vuelva a
ejecutarla mediante HTTP a través de uno de los puertos y las direcciones IP, como se describe
en Vista previa de una aplicación en ejecución (p. 169).
Si los usuarios realizan solicitudes a la URL anterior y dichas solicitudes provienen de una red
privada virtual (VPN) que bloquea el tráfico en el protocolo o el puerto solicitado, esas solicitudes
podría dar error. Estos usuarios deben utilizar una red diferente que permita el tráfico a través del
protocolo y el puerto solicitados. Para obtener más información, consulte con el administrador de
red.
No recomendamos compartir la URL en la pestaña de vista previa de la
aplicación en el IDE con otros usuarios. (La URL se muestra con el formato
https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-
east-2.amazonaws.com/, donde 12a34567b8cd9012345ef67abcd890e1 es el ID que
AWS Cloud9 asigna al entorno y us-east-2 es el ID de la región de AWS para el entorno). Esta
URL solo funciona cuando el IDE del entorno está abierto y la aplicación se está ejecutando en el
mismo navegador web.

174
AWS Cloud9 Guía del usuario
Trabajo con revisiones de archivo

Trabajo con revisiones de archivo en el entorno de


desarrollo integrado (IDE) de AWS Cloud9
Puede utilizar el panel File Revision History (Historial de revisiones de archivo) del IDE de AWS Cloud9
para ver y administrar los cambios realizados en un archivo en un entorno de desarrollo de EC2 de AWS
Cloud9. El panel File Revision History (Historial de revisiones de archivo) no está disponible para archivos
de un entorno de desarrollo de SSH de AWS Cloud9.

Para ver el panel File Revision History (Historial de revisiones de archivo) de un archivo, abra ese archivo
en el editor. A continuación, en la barra de menús, elija File, Show File Revision History (Archivo, Ver
historial de revisiones de archivo).

El panel File Revision History (Historial de revisiones de archivo) comienza el seguimiento del historial
de revisiones de un archivo en el IDE después de abrir por primera vez el archivo en el editor en un
entorno y solo para ese entorno. El panel File Revision History (Historial de revisiones de archivo) realiza
el seguimiento de las revisiones de un archivo desde el propio editor. No realiza el seguimiento de las
revisiones de un archivo que se han realizado de cualquier otra forma (por ejemplo por medio del terminal,
Git u otras herramientas de revisión de archivo).

No se puede editar un archivo mientras esté abierto el panel File Revision History (Historial de revisiones
de archivo). Para ocultar el panel, elija de nuevo File, Show Revision History (Archivo, Mostrar historial de
revisiones) o elija la X (Cerrar control deslizante de tiempo) en la esquina del panel.

Para ir a una versión del archivo que esté asociada a una acción de guardado de archivo, elija un punto
File Saved on (Archivo guardado en) por encima del control deslizante de revisiones.

175
AWS Cloud9 Guía del usuario
Trabajo con archivos de imagen

Para avanzar o retroceder una versión a partir de la versión del archivo seleccionada actualmente en el
control deslizante de revisiones, elija una de las flechas de pasos (Step revision forward (Avanzar revisión)
o Step revision backward (Retroceder revisión).

Para avanzar automáticamente en las versiones del archivo de una en una desde el principio hasta el final
del historial de revisiones, seleccione el botón de reproducción (Playback file history (Reproducir historial
de archivo)).

Para que la versión del archivo seleccionado actualmente sea la versión más reciente del historial de
revisiones, seleccione Revert (Revertir).

Trabajo con archivos de imagen en el entorno de


desarrollo integrado (IDE) de AWS Cloud9
Puede usar el IDE de AWS Cloud9 para ver y editar archivos de imagen.

• Ver o editar una imagen (p. 176)


• Cambiar de tamaño una imagen (p. 176)
• Recortar una imagen (p. 177)
• Rotar una imagen (p. 177)
• Invertir una imagen (p. 177)
• Acercar o alejar una imagen (p. 178)
• Suavizar una imagen (p. 178)

Ver o editar una imagen


En el IDE de AWS Cloud9, abra el archivo de la imagen que desea ver o editar. Estos son los tipos de
archivos de imagen que se admiten:

• .bmp
• .gif (solo visualización)
• .ico (solo visualización)
• .jpeg
• .jpg
• .png
• .tiff

Cambiar de tamaño una imagen


1. Abra el archivo de imagen en el IDE.

176
AWS Cloud9 Guía del usuario
Recortar una imagen

2. En la barra de edición de imágenes, seleccione Resize (Cambiar tamaño).


3. Para cambiar el ancho de la imagen, escriba un nuevo valor de Width (Ancho) en píxeles. O elija "-" o
"+" junto a Width (Ancho) para cambiar el ancho actual de píxel en píxel.
4. Para cambiar la altura de la imagen, escriba un nuevo valor de Height (Altura) en píxeles. O elija "-" o
"+" junto a Height (Altura) para cambiar la altura actual de píxel en píxel.
5. Para mantener la proporción de ancho/altura de la imagen, deje marcado Maintain Aspect Ratio
(Mantener relación de aspecto).
6. Para confirmar la nuevo tamaño de la imagen, en la barra de edición de imágenes, observe las medidas
del ancho (W) y la altura (H) en píxeles.
7. Elija Resize (Cambiar tamaño).
8. Para descartar el cambio de tamaño, en la barra de menús, elija Edit (Editar), Undo (Deshacer). Para
mantener el nuevo tamaño, elija File (Archivo) y Save (Guardar).

Recortar una imagen


1. Abra el archivo de imagen en el IDE.
2. Arrastre el puntero por encima de la parte de la imagen que desea conservar.
3. Para confirmar las dimensiones de la selección, en la barra de edición de imágenes, consulte las
dimensiones Selection (Selección), tal y como se indica a continuación:
• La distancia en píxeles desde el borde izquierdo de la imagen original al borde izquierdo de la
selección (L)
• La distancia en píxeles desde el borde superior de la imagen original al borde superior de la selección
(T)
• El ancho de la selección en píxeles (W)
• La altura de la selección en píxeles (H)
4. En la barra de edición de imágenes, seleccione Crop (Recortar).
5. Para descartar el recorte, en la barra de menús, elija Edit (Editar), Undo (Deshacer). Para mantener la
nueva imagen recortada, elija File (Archivo) y Save (Guardar).

Rotar una imagen


1. Abra el archivo de imagen en el IDE.
2. Para rotar la imagen hacia la izquierda, en la barra de edición de imágenes, elija Rotate 90 Degrees Left
(Rotar 90 grados a la izquierda).
3. Para rotar la imagen hacia la derecha, en la barra de edición de imágenes, elija Rotate 90 Degrees
Right (Rotar 90 grados a la derecha).
4. Para descartar la rotación, en la barra de menús, elija Edit (Editar), Undo (Deshacer). Para mantener la
nueva imagen rotada, elija File (Archivo) y Save (Guardar).

Invertir una imagen


1. Abra el archivo de imagen en el IDE.
2. Para invertir la imagen horizontalmente, en la barra de edición de imágenes, elija FlipH (Invertir H).
3. Para invertir la imagen verticalmente, en la barra de edición de imágenes, elija FlipV (Invertir V).
4. Para descartar la inversión, en la barra de menús, elija Edit (Editar), Undo (Deshacer). Para mantener la
nueva imagen invertida, elija File (Archivo) y Save (Guardar).

177
AWS Cloud9 Guía del usuario
Acercar o alejar una imagen

Acercar o alejar una imagen


1. Abra el archivo de imagen en el IDE.
2. En la barra de edición de imágenes, elija uno de los factores de zoom disponibles (por ejemplo, 75%,
100% o 200%).

Suavizar una imagen


1. Abra el archivo de imagen en el IDE.
2. En la barra de edición de imágenes, seleccione Smooth (Suavizar) para reducir la cantidad de pixelación
de la imagen. Para descartar el suavizado, anule la selección de Smooth (Suavizar).
3. En la barra de menús, elija File (Archivo), Save (Guardar).

Trabajo con compiladores, ejecutores y


depuradores en el entorno de desarrollo integrado
(IDE) de AWS Cloud9
Un compilador indica al IDE de AWS Cloud9 cómo compilar los archivos de un proyecto. Un ejecutor
indica al IDE de AWS Cloud9 cómo ejecutar archivos de un tipo específico. Un ejecutor puede utilizar un
depurador para ayudar a encontrar cualquier problema en el código fuente de los archivos.

Puede utilizar el IDE de AWS Cloud9 para compilar, ejecutar y depurar el código de las siguientes formas:

• Utilice un compilador para compilar los archivos del proyecto. Consulte Compilar los archivos del
proyecto (p. 179).
• Utilice a un ejecutor para ejecutar (y, de forma opcional, depurar) el código. Consulte Soporte integrado
de compilación, ejecución y depuración (p. 178) y Ejecutar el código (p. 179).
• Cambie un ejecutor integrado que ejecute (y, de forma opcional, depure) el código de una forma
diferente a la que se ha definido originalmente. Consulte Cambiar un ejecutor integrado (p. 182).
• Utilice un ejecutor que ejecute (y, de forma opcional, depure) el código con una combinación
personalizada de nombre de archivo, opciones de línea de comandos, modo de depuración, directorio de
trabajo actual y variables de entorno. Consulte Crear una configuración de ejecución (p. 182).
• Cree su propio compilador o ejecutor. Consulte Crear un compilador o ejecutor (p. 183).

Soporte integrado de compilación, ejecución y


depuración
El IDE de AWS Cloud9 proporciona soporte integrado para compilar, ejecutar y depurar código en varios
lenguajes. Para obtener una lista completa, consulte Lenguajes compatibles (p. 136).

El soporte de compilación integrado se encuentra disponible en la barra de menús con los comandos de
menú Run (Ejecutar), Build System (Sistema de compilación) y Run (Ejecutar), Build (Compilar). Para
añadir compatibilidad con un lenguaje de programación o una herramienta que no se encuentren en la
lista, consulte la sección Crear un compilador o ejecutor (p. 183).

El soporte integrado se encuentra disponible con el botón Run (Ejecutar) y en la barra de menús con
los comandos de menú Run (Ejecutar), Run With (Ejecutar con) y Run (Ejecutar), Run Configurations

178
AWS Cloud9 Guía del usuario
Compilar los archivos del proyecto

(Configuraciones de ejecución). Para añadir compatibilidad con un lenguaje de programación o una


herramienta que no se encuentren en la lista, consulte Crear un compilador o ejecutor (p. 183) y Crear
una configuración de ejecución (p. 182).

El soporte de depuración integrado se encuentra disponible a través de la ventana Debugger (Depurador).


Para ver la ventana Debugger (Depurador), elija el botón Debugger (Depurador). Si el botón Debugger
(Depurador) no es visible, elija Window (Ventana), Debugger (Depurador) en la barra de menús.

Compilar los archivos del proyecto


1. Abra un archivo que se corresponda con el código que desea compilar.
2. En la barra de menús, elija Run, Build System (Ejecutar, Sistema de compilación) y, a continuación, elija
el nombre del compilador que va a utilizar si aún no lo ha elegido. Si el compilador que desea utilizar
no se encuentra en la lista, detenga este procedimiento, realice los pasos que se indican en Crear un
compilador o ejecutor (p. 183) y, a continuación, vuelva a este procedimiento.
3. Elija Run, Build (Ejecutar, Compilar).

Ejecutar el código
1. Abra un archivo que se corresponda con el código que desea ejecutar, si el archivo aún no está abierto
y seleccionado.
2. En la barra de menús, realice una de las siguientes operaciones:
• Para ejecutar el código con el ejecutor integrado de mayor coincidencia, elija Run, Run (Ejecutar,
Ejecutar). Si AWS Cloud9 no encuentra ninguno, este comando está deshabilitado.
• Para ejecutar el código con la configuración de ejecución que AWS Cloud9 utilizó por última vez, elija
Run, Run Last (Ejecutar, Ejecutar última).
• Para ejecutar el código con un ejecutor específico, elija Run, Run With (Ejecutar, Ejecutar con) y,
a continuación, elija el nombre del ejecutor. Si el ejecutor que desea utilizar no se encuentra en
la lista, detenga este procedimiento, realice los pasos que se indican en Crear un compilador o
ejecutor (p. 183) y, a continuación, vuelva a este procedimiento.
• Para ejecutar el código con un ejecutor específico con una combinación personalizada de nombre de
archivo, opciones de línea de comandos, modo de depuración, directorio de trabajo actual y variables
de entorno, elija Run, Run Configurations (Ejecutar, Configuraciones de ejecución) y, a continuación,
elija el nombre de la configuración de ejecución. Si se abre la pestaña de la configuración de
ejecución, elija Runner: Auto (Ejecutor: Auto), elija el ejecutor que desea utilizar y, a continuación,
seleccione Run (Ejecutar). Si el ejecutor que desea utilizar no se encuentra en la lista, detenga este
procedimiento, realice los pasos que se indican en Crear un compilador o ejecutor (p. 183) y, a
continuación, vuelva a este procedimiento.

Depurar el código
1. En la pestaña de configuración de ejecución del código, elija Run in Debug Mode (Ejecutar en modo de
depuración). El icono de error cambia a verde sobre un fondo blanco. Para obtener más información,
consulte Ejecutar el código (p. 179) y Crear una configuración de ejecución (p. 182).
2. Establezca los puntos de interrupción en el código que desee para realizar pausas durante la ejecución,
tal y como se indica a continuación:
a. Abra cada archivo en el que desea establecer un punto de interrupción.
b. En cada punto de un archivo en el que desea establecer un punto de interrupción, elija el área en
blanco del margen interior situado a la izquierda del número de línea. Aparece un círculo rojo.

Para eliminar un punto de interrupción, elija el punto de interrupción existente en el margen interior.

179
AWS Cloud9 Guía del usuario
Depurar el código

Para deshabilitar un punto de interrupción en lugar de eliminarlo, en la ventana Debugger


(Depurador), en Breakpoints (Puntos de interrupción), desactive la casilla que se corresponde con
punto de interrupción que desea deshabilitar. Para habilitar el punto de interrupción de nuevo,
seleccione la casilla que ha desactivado.

Para deshabilitar todos los puntos de interrupción a la vez, en la ventana Debugger (Depurador),
elija Deactivate All Breakpoints (Desactivar todos los puntos de interrupción). Para habilitar de
nuevo todos los puntos de interrupción, elija Activate All Breakpoints (Activar todos los puntos de
interrupción).

Si la ventana Debugger (Depurador) no es visible, elija el botón Debugger (Depurador). Si el botón


Debugger (Depurador) no es visible, en la barra de menús, elija Window (Ventana), Debugger
(Depurador).
3. Establezca cualquier expresión de inspección para la que desea obtener el valor en el punto en que se
pone en pausa la ejecución, tal y como se indica a continuación:
a. En la ventana Debugger (Depurador), en Watch Expressions (Expresiones de inspección), elija Type
an expression here (Escriba una expresión aquí).
b. Escriba la expresión que desea inspeccionar y, a continuación, presione Enter.

Para cambiar una expresión de observación existente, haga clic con el botón derecho del ratón en
dicha expresión y, a continuación, elija Edit Watch Expression (Editar expresión de inspección).
Escriba el cambio y, a continuación, presione Enter.

Para eliminar una expresión de inspección existente, haga clic con el botón derecho del ratón
en dicha expresión y, a continuación, elija Remove Watch Expression (Eliminar expresión de
inspección).
4. Ejecute el código tal y como se describe en Ejecutar el código (p. 179).

Cada vez que ponga en pausa una ejecución, puede hacer lo siguiente en la ventana Debugger
(Depurador), tal y como se muestra.

180
AWS Cloud9 Guía del usuario
Depurar el código

• Ejecute el código hasta el siguiente punto de interrupción (o hasta el siguiente punto de parada lógico si
no hay más puntos de interrupción): elija Resume (Reanudar).
• Omita las instrucciones en ejecución una por una hasta la siguiente llamada al método o función: elija
Step Over (Saltar).
• Ejecute el código hasta la siguiente instrucción y vuelva a hacer una pausa: elija Step Into (Paso a paso).
• Detenga las instrucciones en ejecución una por una en la llamada al método o función actual: elija Step
Out (Salir).
• Deshabilite todos los puntos de interrupción existentes: elija Deactivate All Breakpoints (Desactivar
todos los puntos de interrupción). Habilite de nuevo todos los puntos de interrupción: Elija Activate All
Breakpoints (Activar todos los puntos de interrupción).

181
AWS Cloud9 Guía del usuario
Cambiar un ejecutor integrado

• No realice una pausa cuando el código genere una excepción: siga haciendo clic en el botón de
comportamiento de las excepciones hasta que la ayuda contextual indique Don't pause on exceptions
(No hacer pausa en excepciones) (gris).
• Realice una pausa cuando el código genere una excepción: siga haciendo clic en el botón de
comportamiento de las excepciones hasta que la ayuda contextual indique Pause on all exceptions
(Hacer pausa en todas las excepciones) (rojo).
• Haga una pausa únicamente cuando el código genere una excepción no detectada: siga haciendo clic
en el botón de comportamiento de las excepciones hasta que la ayuda contextual indique Pause on
uncaught exceptions (Hacer pausa en excepciones no detectadas) (azul).
• Abra un script disponible: elija Available internal and external scripts (Scripts internos y externos
disponibles) y, a continuación, elija el script.
• Consulte la lista de expresiones de inspección actuales: consulte el área Watch Expressions
(Expresiones de inspección).
• Consulte la ruta de ejecución que ha llevado el código hasta el punto de interrupción actual: consulte el
área Call Stack (Pila de llamadas).
• Vea la lista de variables locales: consulte el área Local Variables (Variables locales).
• Deshabilite puntos de interrupción individuales: en Breakpoints (Puntos de interrupción), desactive las
casillas correspondientes a los puntos de interrupción que desea deshabilitar. Para habilitar los puntos
de interrupción de nuevo, seleccione las casillas que ha desactivado anteriormente.

Cada vez que una ejecución se pone en pausa, también puede detener el puntero sobre cualquier
fragmento de código mostrado (por ejemplo, una variable) para ver la información disponible
correspondiente en una información sobre herramientas.

Cambiar un ejecutor integrado


1. En la barra de menús, elija Run, Run With (Ejecutar, Ejecutar con) y, a continuación, elija el ejecutor
integrado que desea cambiar.
2. Para detener el ejecutor para que no intente ejecutar el código, elija Stop (Detener) en la pestaña de
configuración de ejecución que se abre.
3. Elija Runner: My Runner (Ejecutor: Mi ejecutor), donde My Runner (Mi ejecutor) es el nombre del
ejecutor que desea cambiar y, a continuación, elija Edit Runner (Editar ejecutor).
4. En la pestaña My Runner.run (Mi Runner.run) que se abre, cambie la definición actual del ejecutor.
Consulte Definir un compilador o ejecutor (p. 184).
5. Elija File, Save As (Archivo, Guardar como). Guarde el archivo con el mismo nombre (My Runner.run)
en el directorio my-environment/.c9/runners, donde my-environment es el nombre de su
entorno de desarrollo de AWS Cloud9.

Note

Los cambios que realiza en un ejecutor integrado se aplican únicamente al entorno en el que
ha realizado esos cambios. Para aplicar los cambios en otro entorno, abra el otro entorno y, a
continuación, siga los pasos anteriores para abrir, editar y guardar esos mismos cambios de el
ejecutor integrado.

Crear una configuración de ejecución


En la barra de menús, elija Run, Run Configurations, New Run Configuration (Ejecutar, Configuraciones de
ejecución, Nueva configuración de ejecución). En la pestaña de la configuración de ejecución que se abre,
haga lo siguiente:

182
AWS Cloud9 Guía del usuario
Crear un compilador o ejecutor

1. En el cuadro que aparece junto a Run (Ejecutar) y Restart (Reiniciar), escriba el nombre que se
mostrará en el menú Run, Run Configurations (Ejecutar, Configuraciones de ejecución) para esta
configuración.
2. En el cuadro Command (Comando), escriba las opciones de línea de comandos personalizadas que
desee utilizar.
3. Para que esta configuración de ejecución utilice la configuración de depuración predefinida del ejecutor,
elija Run in Debug Mode (Ejecutar en modo de depuración). El icono de error cambiará a verde sobre un
fondo blanco.
4. Para que esta configuración use un directorio de trabajo específico, elija CWD, elija el directorio que se
va a usar y, a continuación, elija Select (Seleccionar).
5. Para que esta configuración de ejecución utilice variables de entorno específicas, seleccione ENV y, a
continuación, escriba el nombre y el valor de cada variable de entorno.

Para utilizar esta configuración de ejecución, abra el archivo que se corresponde con el código que desea
ejecutar. Elija Run, Run Configurations (Ejecutar, Configuraciones de ejecución) en la barra de menús y
luego elija el nombre de esta configuración de ejecución. En la pestaña de la configuración de ejecución
que se abre, elija Runner: Auto (Ejecutor: Auto), elija el ejecutor que desea utilizar y, a continuación,
seleccione Run (Ejecutar).
Note

Cualquier configuración de ejecución que cree se aplica únicamente al entorno en el que creó
esa configuración de ejecución. Para agregar esa configuración de ejecución a otro entorno, abra
el otro entorno y, a continuación, siga los pasos anteriores para crear la misma configuración de
ejecución en ese entorno.

Crear un compilador o ejecutor


1. Para crear un compilador, en la barra de menús, elija Run, Build System, New Build System (Ejecutar,
Sistema de compilación, Nuevo sistema de compilación). Para crear un ejecutor, en la barra de menús,
elija Run, Run With, New Runner (Ejecutar, Ejecutar con, Nuevo ejecutor).
2. En la pestaña del compilador (con la etiqueta My Builder.build [Mi Builder.build]) o la pestaña del
ejecutor (con la etiqueta My Runner.run [Mi Runner.run]) que aparece, defina el compilador o ejecutor.
Consulte Definir un compilador o ejecutor (p. 184).
3. Después de definir el compilador o ejecutor, elija File, Save As (Archivo, Guardar como). En el caso
del compilador, guarde el archivo con la extensión .build en el directorio my-environment/.c9/
builders, donde my-environment es el nombre del entorno. En el caso del ejecutor, guarde
el archivo con la extensión .run en el directorio my-environment/.c9/runners, donde my-
environment es el nombre del entorno. El nombre del archivo que especifique será el nombre que
aparece en el menú Run, Build System (Ejecutar, Sistema de compilación) o el menú Run, Run With
(Ejecutar, Ejecutar con). Por lo tanto, a menos que especifique otro nombre de archivo, de forma
predeterminada el nombre de visualización será My Builder (Mi ejecutor) (para un compilador) o My
Runner (Mi ejecutor) (para un ejecutor).

Para utilizar este compilador o ejecutor, consulte Compilar los archivos del proyecto (p. 179) o Ejecutar el
código (p. 179).
Note

Cualquier compilador o ejecutor que cree se aplica únicamente al entorno en el que ha creado
ese compilador o ejecutor. Para agregar ese compilador o ejecutor a otro entorno, abra el otro
entorno y, a continuación, siga los pasos anteriores para crear el mismo compilador o ejecutor en
ese entorno.

183
AWS Cloud9 Guía del usuario
Definir un compilador o ejecutor

Definir un compilador o ejecutor


En este procedimiento, se da por hecho que ya ha comenzado a crear un compilador o un ejecutor
eligiendo Run, Build System, New Build System (Ejecutar, Sistema de compilación, Nuevo sistema de
compilación) (para un compilador) o Run, Run With, New Runner (Ejecutar, Ejecutar con, Nuevo ejecutor)
(para un ejecutor).

En la pestaña del compilador o ejecutor que se muestra, utilice JSON para definir el ejecutor o compilador.
Comience con el siguiente código como plantilla.

Para un compilador, comience con este código.

{
"cmd": [],
"info": "",
"env": {},
"selector": ""
}

Para un ejecutor, comience con este código.

{
"cmd": [],
"script": "",
"working_dir": "",
"info": "",
"env": {},
"selector": "",
"debugger": "",
"debugport": ""
}

En el código anterior:

• cmd: representa una lista separada por comas de cadenas para AWS Cloud9 que se ejecutan como un
único comando.

Cuando AWS Cloud9 ejecuta este comando, cada cadena de la lista se separará por un solo espacio.
Por ejemplo, AWS Cloud9 ejecutará "cmd": [ "ls", "$file", "$args"] como ls $file
$args, donde AWS Cloud9 reemplazará a $file por la ruta completa del archivo actual y $args
por cualquier argumento introducido después del nombre de archivo. Para obtener más información,
consulte la lista de variables admitidas más adelante en esta sección.
• script: representa un script bash (que también puede especificarse como una matriz de líneas si es
necesario para facilitar la lectura) que ejecuta el ejecutor en el terminal.
• working_dir: representa el directorio desde el que se ejecutará el ejecutor.
• info: representa cualquier cadena de texto que desee mostrar al usuario al principio de la ejecución.
Esta cadena puede contener variables, por ejemplo Running $project_path$file_name...,
donde AWS Cloud9 reemplazará $project_path por la ruta del directorio del archivo actual y
$file_name por la parte del nombre del archivo actual. Consulte la lista de variables admitidas más
adelante en esta sección.
• env: representa cualquier matriz de argumentos de línea de comandos que utiliza AWS Cloud9, por
ejemplo:

"env": {
"LANG": "en_US.UTF-8",
"SHLVL": "1"

184
AWS Cloud9 Guía del usuario
Definir un compilador o ejecutor

• selector: representa cualquier expresión regular que desea que use AWS Cloud9 para identificar los
nombres de archivo que se aplican a este ejecutor. Por ejemplo, puede especificar source.py para los
archivos de Python.
• debugger: representa el nombre de cualquier depurador disponible que desea que utilice AWS Cloud9
que sea compatible con este ejecutor. Por ejemplo, podría especificar v8 para el depurador de V8.
• debugport: representa el número de puerto que desea que utilice AWS Cloud9 durante la depuración.
Por ejemplo, podría especificar 15454 para el número de puerto que se va a utilizar.

En la siguiente tabla, se muestran las variables que se pueden utilizar.

Variable Description (Descripción

$file_path El directorio del archivo actual, por ejemplo, /


home/ec2-user/environment o /home/
ubuntu/environment.

$file La ruta completa al archivo actual, por ejemplo, /


home/ec2-user/environment/hello.py o /
home/ubuntu/environment/hello.py.

$args Cualquier argumento introducido después el


nombre de archivo, por ejemplo, "5" "9".

$file_name La parte del nombre del archivo actual, por


ejemplo, hello.py.

$file_extension La extensión del archivo actual, por ejemplo, py.

$file_base_name El nombre del archivo actual sin la extensión de


archivo, por ejemplo, hello.

$packages La ruta completa a la carpeta de los paquetes.

$project La ruta completa a la carpeta del proyecto actual.

$project_path El directorio del archivo del proyecto actual, por


ejemplo, /home/ec2-user/environment/ o /
home/ubuntu/environment/.

$project_name El nombre del archivo del proyecto actual sin la


extensión de archivo, por ejemplo, my-demo-
environment.

$project_extension La extensión del archivo del proyecto actual.

$project_base_name El nombre del archivo del proyecto actual sin la


extensión.

$hostname El nombre de anfitrión del entorno, como, por


ejemplo, 192.0.2.0.

$hostname_path El nombre de anfitrión del entorno con la ruta


relativa al archivo del proyecto, como, por ejemplo,
https://192.0.2.0/hello.js.

$url La URL completa para acceder al entorno, como,


por ejemplo, https://192.0.2.0..

185
AWS Cloud9 Guía del usuario
Trabajo con variables de entorno personalizadas

Variable Description (Descripción

$port El puerto asignado al entorno, como, por ejemplo,


8080.

$ip La dirección IP para ejecutar un proceso en el


entorno, como, por ejemplo, 0.0.0.0.

Por ejemplo, el siguiente archivo del compilador denominado G++.build define un compilador de GCC
que ejecuta el comando g++ con la opción -o para compilar el archivo actual (por ejemplo, hello.cpp)
en un módulo de objetos. A continuación, vincula el módulo de objetos a un programa con el mismo
nombre que el archivo actual (por ejemplo, hello). Aquí, el comando equivalente es g++ -o hello
hello.cpp.

{
"cmd": [ "g++", "-o", "$file_base_name", "$file_name" ],
"info": "Compiling $file_name and linking to $file_base_name...",
"selector": "source.cpp"
}

Como otro ejemplo, el siguiente archivo del ejecutor denominado Python.run define un ejecutor que
utiliza Python para ejecutar el archivo actual con los argumentos que se han proporcionado. Por ejemplo,
si el nombre del archivo actual es hello.py y se han proporcionado los argumentos 5 y 9 , el comando
equivalente es python hello.py 5 9.

{
"cmd": [ "python", "$file_name", "$args" ],
"info": "Running $file_name...",
"selector": "source.py"
}

Por último, el siguiente archivo del ejecutor denominado Print Run Variables.run define un ejecutor
que simplemente genera el valor de cada variable disponible y, a continuación, se detiene.

{
"info": "file_path = $file_path, file = $file, args = $args, file_name = $file_name,
file_extension = $file_extension, file_base_name = $file_base_name, packages = $packages,
project = $project, project_path = $project_path, project_name = $project_name,
project_extension = $project_extension, project_base_name = $project_base_name, hostname =
$hostname, hostname_path = $hostname_path, url = $url, port = $port, ip = $ip"
}

Trabajo con variables de entorno personalizadas


en el entorno de desarrollo integrado (IDE) de AWS
Cloud9
El IDE de AWS Cloud9 permite obtener y configurar variables de entorno personalizadas. Puede obtener y
configurar variables de entorno personalizadas en el IDE de AWS Cloud9 de las siguientes maneras.

• Establecer variables de entorno personalizadas en el nivel de comando (p. 187)


• Establecer variables de entorno de usuario personalizadas en ~/.bash_profile (p. 187)
• Establecer variables de entorno personalizadas locales (p. 187)

186
AWS Cloud9 Guía del usuario
Establecer variables de entorno
personalizadas en el nivel de comando

• Establecer variables de entorno de usuario personalizadas en ~/.bashrc (p. 188)


• Establecer variables de entorno personalizadas en la lista ENV (p. 188)

Establecer variables de entorno personalizadas en el


nivel de comando
Puede establecer las variables de entorno personalizadas en el nivel del comando al ejecutar un comando
en su entorno de desarrollo de AWS Cloud9. Para probar este comportamiento, cree un archivo llamado
script.sh con el código siguiente:

#!/bin/bash

echo $MY_ENV_VAR

Si ejecuta el siguiente comando, el terminal muestra Terminal session:

MY_ENV_VAR='Terminal session' sh ./script.sh

Si establece la variable de entorno personalizada utilizando los diversos enfoques que se describen en
este tema, al intentar obtener el valor de la variable de entorno personalizada, este ajuste tendrá prioridad
con respecto a todos los demás.

Establecer variables de entorno de usuario


personalizadas en ~/.bash_profile
Puede establecer variables de entorno de usuario personalizadas en el archivo ~/.bash_profile de su
entorno. Para probar este comportamiento, agregue el siguiente código al archivo ~/.bash_profile en
su entorno:

export MY_ENV_VAR='.bash_profile file'

Si, a continuación, ejecuta sh ./script.sh desde la línea de comandos, el terminal muestra


.bash_profile file. (En este caso, se da por hecho que ha creado el archivo script.sh tal y como
se ha descrito anteriormente).

Establecer variables de entorno personalizadas


locales
Puede establecer variables de entorno personalizadas locales en una sesión de terminal ejecutando el
comando export . Para probar este comportamiento, ejecute el comando siguiente en una sesión de
terminal:

export MY_ENV_VAR='Command line export'

Si, a continuación, ejecuta sh ./script.sh desde la línea de comandos, el terminal muestra Command
line export. (En este caso, se da por hecho que ha creado el archivo script.sh tal y como se ha
descrito anteriormente).

Si establece la misma variable de entorno personalizada con el comando export y el archivo


~/.bash_profile, al intentar obtener el valor de la variable de entorno personalizada, el ajuste del
comando export tiene prioridad.

187
AWS Cloud9 Guía del usuario
Establecer variables de entorno de
usuario personalizadas en ~/.bashrc

Establecer variables de entorno de usuario


personalizadas en ~/.bashrc
Puede establecer variables de entorno de usuario personalizadas en el archivo ~/.bashrc de su entorno.
Para probar este comportamiento, agregue el siguiente código al archivo ~/.bashrc en su entorno:

export MY_ENV_VAR='.bashrc file'

Si, a continuación, ejecuta sh ./script.sh desde la línea de comandos, el terminal muestra .bashrc
file. (En este caso, se da por hecho que ha creado el archivo script.sh tal y como se ha descrito
anteriormente).

Si establece la misma variable de entorno personalizada con el comando export y el archivo


~/.bashrc, al intentar obtener el valor de la variable de entorno personalizada, el ajuste del comando
export tiene prioridad.

Establecer variables de entorno personalizadas en la


lista ENV
Puede establecer variables de entorno personalizadas en la lista ENV de la pestaña Run (Ejecutar).

Para probar este comportamiento, haga lo siguiente:

1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a continuación,
elija Shell script (Script de shell).
3. Elija ENV y luego escriba MY_ENV_VAR en Name (Nombre) y ENV list en Value (Valor).
4. En Command (Comando), escriba ./script.sh.
5. Elija el botón Run (Ejecutar). La pestaña del ejecutor muestra ENV list. (En este caso, se da por
hecho que ha creado el archivo script.sh tal y como se ha descrito anteriormente).

Si establece la misma variable de entorno personalizada en el archivo ~/.bash_profile con el comando


export en el archivo ~/.bashrc y en la lista ENV, cuando intente obtener el valor de la variable de
entorno personalizada, el ajuste del archivo ~/.bash_profile tendrá prioridad, seguido del ajuste del
comando export , el ajuste del archivo ~/.bashrc y el ajuste de la lista ENV.
Note

La lista ENV es el único enfoque para obtener y configurar variables de entorno personalizadas
mediante código, de manera independiente de un script de shell.

Trabajar con la configuración de los proyectos en


el entorno de desarrollo integrado (IDE) de AWS
Cloud9
Los valores de Project settings (Configuración de proyecto) que se aplican únicamente al entorno de
desarrollo de AWS Cloud9 actual, incluyen los siguientes valores de configuración:

188
AWS Cloud9 Guía del usuario
Ver o cambiar la configuración de proyectos

• Comportamientos del editor de código, por ejemplo, si debe utilizar tabuladores y nuevo final de línea de
archivo
• Tipos de archivo que se ignoran
• Los tipos de sugerencias y advertencias que se muestran o suprimen
• Comportamientos del formato y el código de lenguajes de programación como JavaScript, PHP, Python
y Go
• Tipos de configuraciones que se usan cuando se ejecuta y compila código

Aunque la configuración de proyectos se aplica a un único entorno, puede aplicar la configuración de un


entorno a cualquier otro.

• Ver o cambiar la configuración de proyectos (p. 189)


• Aplicar la configuración del proyecto actual de un entorno a otro (p. 189)
• Project Setting Changes You Can Make (p. 189)

Ver o cambiar la configuración de proyectos


1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).
2. Para ver la configuración del proyecto del entorno actual, en la pestaña Preferences (Preferencias), en
el panel de navegación lateral, elija Project Settings (Configuración de proyecto).
3. Para cambiar la configuración del proyecto del entorno, hágalo en el panel Project Settings.
(Configuración de proyecto).

Consulte Project Setting Changes You Can Make (p. 189)

Aplicar la configuración del proyecto actual de un


entorno a otro
1. En los entornos de origen y de destino, en la barra de menús del IDE de AWS Cloud9, elija AWS
Cloud9, Open Your User Project (AWS Cloud9, Abrir la configuración del proyecto).
2. En el entorno fuente, copie el contenido de la pestaña project.settings que se muestra.
3. En el entorno de destino, sobrescriba el contenido de la pestaña project.settings por el contenido
copiado del entorno fuente.
4. En el entorno de destino, guarde la pestaña project.settings.

Valor de configuración del proyecto que puede


cambiar
En estas secciones se describen los valores de configuración de proyecto que puede cambiar en la
pestaña Preferences (Preferencias) del panel Project Settings (Configuración de proyecto).

• Instancia EC2 (p. 190)


• Editor de código (Ace) (p. 190)
• Buscar en archivos (p. 190)
• Consejos y advertencias (p. 191)

189
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar

• Soporte de JavaScript (p. 191)


• Compilación (p. 192)
• Ejecución y depuración (p. 192)
• Run Configurations (Configuraciones de ejecución (p. 192)
• Formateadores de código (p. 192)
• Soporte de TypeScript (p. 194)
• Soporte de PHP (p. 194)
• Soporte de Python (p. 194)
• Soporte de Go (p. 195)

Instancia EC2
Stop my environment (Detener mi entorno

Elija cuándo detener automáticamente la instancia de Amazon EC2 del entorno (si se utiliza) después
de cerrar todas las instancias del navegador web que estén conectadas al IDE para ese entorno.
Puede elegir un rango de períodos de tiempo de una semana a 30 minutos. También puede elegir que
nunca se detenga automáticamente la instancia de Amazon EC2 después de salir del IDE de AWS
Cloud9.

Si desea detener la instancia incluso antes de 30 minutos después de terminar con el IDE, puede
detenerlo manualmente mediante la interfaz de la consola (p. 195).

Editor de código (Ace)


Soft Tabs (Tabuladores suaves

Si se selecciona, se inserta el número especificado de espacios en lugar de un tabulador cada vez que
pulse Tab.
Autodetect Tab Size on Load (Detectar automáticamente el tamaño de la pestaña al cargar

Si se selecciona, AWS Cloud9 intenta adivinar el tamaño de la pestaña.


New File Line Ending (Nuevo final de línea de archivos

El tipo de finales de línea que se va a utilizar en los archivos nuevos.

Entre las opciones válidas se incluyen:


• Windows (CRLF) para finalizar las líneas con un retorno de carro y un salto de línea.
• Unix (LF) para finalizar líneas con un salto de línea únicamente.
On Save, Strip Whitespace (Quitar espacios al guardar

Si se selecciona, AWS Cloud9 intenta quitar lo que considera tabuladores y espacios innecesarios de
un archivo cada vez que ese archivo se guarda.

Buscar en archivos
Ignore these Files (Ignorar estos archivos

Cuando se buscan archivos, los tipos de archivos que AWS Cloud9 ignorará.

190
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar

Maximum number of files to search (in 1000) [Número máximo de archivos para buscar (en 1000)

Cuando se buscan archivos, el número máximo de archivos, en múltiplos de 1.000, que AWS Cloud9
encontrará en el ámbito actual.

Consejos y advertencias
Nivel de advertencia

El nivel mínimo de los mensajes que se van a habilitar.

Los valores válidos son:


• Info (Información) para habilitar mensajes de error informativos y de advertencia.
• Warning (Aviso) para habilitar solo mensajes de error y de advertencia.
• Error para permitir solo los mensajes de error.
Mark Missing Opcional Semicolons (Marcar punto y coma opcionales que faltan

Si está habilitada, AWS Cloud9 marca en archivo cada vez que se detecta un punto y coma que puede
utilizarse en el código, pero que no se utiliza.
Mark Undeclared Variables (Marcar variables no declaradas

Si está habilitada, AWS Cloud9 marca en un archivo cada vez que se detecta una variable no
declarada en el código.
Mark Unused Function Arguments (Marcar argumentos de función no usados

Si está habilitada, AWS Cloud9 marca en un archivo cada vez que se detecta un argumento no
utilizado en una función.
Ignore Messages Matching Regex (Omitir mensajes que coinciden con Regex

AWS Cloud9 no mostrará ningún mensaje que coincida con la expresión regular especificada.
Para obtener más información, consulte Writing a regular expression pattern en JavaScript Regular
Expressions en Mozilla Developer Network.

Soporte de JavaScript
Customize JavaScript Warnings With .eslintrc (Personalizar advertencias de JavaScript con .eslintrc

Si está habilitada, AWS Cloud9 utiliza un archivo .eslintrc con el fin de determinar qué
advertencias de JavaScript se habilitan o deshabilitan. Para obtener más información, consulte
Configuration File Formats en el sitio web de ESLint.
Bibliotecas JavaScript Finalización de código

Las bibliotecas de JavaScript que AWS Cloud9 utiliza para intentar sugerir o finalizar el código de
forma automática.
Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta formatear el código en un archivo JavaScript cada vez que ese
archivo se guarda.
Use Builtin JSBeautify as Code Formatter (Usar Builtin JSBeautify como formateador de código

Si está habilitada, AWS Cloud9 utiliza su implementación interna de JSBeautify para intentar aumentar
la legibilidad del código en los archivos.

191
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar

Custom Code Formatter (Formateador de código personalizado

El comando de AWS Cloud9 que se intentar ejecutar al formatear código en un archivo JavaScript.

Compilación
Builder Path in environment (Ruta del compilador en el entorno

La ruta a cualquier configuración de compilación personalizada.

Ejecución y depuración
Runner Path in Environment (Ruta de ejecutor en entorno

La ruta a configuraciones de ejecución personalizadas.


Preview URL (URL de vista previa

La dirección URL que se debe utilizar para obtener una vista previa de aplicaciones para el entorno.

Run Configurations (Configuraciones de ejecución)


Las configuraciones de ejecución personalizadas para este entorno.

Remove Selected Configs (Eliminar configuraciones seleccionadas

Elimina las configuraciones de ejecución seleccionadas.


Add New Config (Agregar nueva configuración

Crea una nueva configuración de ejecución.


Set As Default (Establecer como predeterminado

Establece la configuración de ejecución seleccionada como la predeterminada.

Formateadores de código
JSBeautify settings (Configuración JSBeautify

Configuración para aumentar la legibilidad del código en los archivos.


Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta aplicar la configuración JSBeautify cada vez que se
guardan los archivos de código.
Use JSBeautify for JavaScript (Usar JSBeautify para JavaScript

Si está habilitada, AWS Cloud9 intenta aplicar la configuración JSBeautify cada vez que se
guardan los archivos JavaScript.
Preserve Empty Lines (Mantener líneas vacías

Si está habilitada, AWS Cloud9 no elimina líneas vacías en el código.


Keep Array Indentation (Mantener sangría en matrices

Si está habilitada, AWS Cloud9 conserva la sangría en las declaraciones de elementos en


matrices en los archivos de código.

192
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar

JSLint Strict Whitespace (Espacio en blanco de JSLint

Si está habilitada, AWS Cloud9 intenta aplicar las reglas sobre espacios en blanco de JSLint en
los archivos de código. Para obtener más información, consulte "Espacios en blanco" en JSLint
Help.
Braces (Llaves

Especifica la alineación de las llaves en el código.

Los valores válidos son:


• Braces with control statement (Llaves con declaración de control) para mover cada llave de
inicio y final y alinearla con su declaración de control relacionada, según sea necesario.

Por ejemplo, este código:

for (var i = 0; i < 10; i++) { if (i == 5) { console.log("Halfway done.") }}

se convierte en este código cuando se guarda el archivo:

for (var i = 0; i < 10; i++) {


if (i == 5) {
console.log("Halfway done.")
}
}

• Braces on own line (Llaves en línea propia) para mover cada llave a su línea, según sea
necesario.

Por ejemplo, este código:

for (var i = 0; i < 10; i++) { if (i == 5) { console.log("Halfway done.") }}

se convierte en este código cuando se guarda el archivo:

for (var i = 0; i < 10; i++) {if (i == 5)


{
console.log("Halfway done.")
}
}

• End braces on own line (Terminar llaves en línea propia) para mover cada llave de cierre a su
línea, según sea necesario.

Por ejemplo, este código:

for (var i = 0; i < 10; i++) {


if (i == 5) { console.log("Halfway done.") }
}

se convierte en este código cuando se guarda el archivo:

for (var i = 0; i < 10; i++) {


if (i == 5) {
console.log("Halfway done.")
}
}

193
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar

Conservar bloques en línea

Si está habilitada, AWS Cloud9 no intenta mover las llaves de apertura y cierre de los bloques en
línea a líneas separadas, si estas llaves están en la misma línea.
Space Before Conditionals (Espacio antes de condicional

Si está habilitada, AWS Cloud9 añade un espacio antes de cada declaración condicional, según
sea necesario.
Unescape Strings (Cadenas sin escape

Si está habilitada, AWS Cloud9 convierte las cadenas de escape en sus equivalentes sin escape.
Por ejemplo, convierte \n en un carácter de nueva línea y convierte \r en un retorno de carro.
Indent Inner Html (Aplicar sangría HTML

Si está habilitada, AWS Cloud9 aplica sangría a las secciones <head> y <body> en código
HTML.

Soporte de TypeScript
Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta dar formato al código TypeScript cada vez que se guardan los
archivos TypeScript.
Custom Code Formatter (Formateador de código personalizado

La ruta de cualquier configuración de código personalizada para código TypeScript.

Soporte de PHP
Enable PHP code Completion (Habilitar completar código PHP

Si está habilitada, AWS Cloud9 intenta completar el código PHP.


PHP Completion Include Paths (Rutas completar código PHP

Ubicaciones que AWS Cloud9 utiliza para intentar ayudar a completar el código de PHP. Por ejemplo,
si tiene archivos PHP personalizados que desea que AWS Cloud9 use para la finalización y se
encuentran en algún lugar del directorio ~/environment, añada ~/environment a esta ruta.
Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta dar formato al código PHP cada vez que se guardan los
archivos PHP.
Custom Code Formatter (Formateador de código personalizado

La ruta de cualquier configuración de código personalizada para código PHP.

Soporte de Python
Enable Python code completion (Habilitar completar código Python

Si está habilitada, AWS Cloud9 intenta completar el código Python. Para definir las rutas que AWS
Cloud9 va a utilizar para completar el código Python, utilice la configuración PYTHONPATH.
Python Version (Versión de Python

Especifica la versión de Python que se va a utilizar.

194
AWS Cloud9 Guía del usuario
Detener manualmente la instancia EC2 del entorno

Opciones de la línea de comandos de Pylint

Opciones que AWS Cloud9 va a utilizar para Pylint con código de Python. Para obtener más
información, consulte el manual del usuario de Pylint en el sitio web de Pylint.
PYTHONPATH

Las rutas de las bibliotecas y los paquetes de Python que AWS Cloud9 va a utilizar. Por ejemplo, si
tiene bibliotecas y paquetes de Python personalizados en el directorio ~/environment, añada ~/
environment a esta ruta.
Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta dar formato al código Python cada vez que se guardan los
archivos Python.
Custom Code Formatter (Formateador de código personalizado

La ruta de cualquier configuración de código personalizada para código Python.

Soporte de Go
Habilitar completar código Go

Si está habilitada, AWS Cloud9 intenta completar el código Go.


Format Code on Save (Formatear código al guardar

Si está habilitada, AWS Cloud9 intenta dar formato al código Go cada vez que se guardan los archivos
Go.
Custom Code Formatter (Formateador de código personalizado

La ruta de cualquier configuración de código personalizada para código Go.

Detener manualmente la instancia EC2 del entorno


La opción EC2 Instance (p. 190) (Instancia EC2) le permite detener automáticamente la instancia
de Amazon EC2 del entorno tan rápido como 30 minutos después de cerrar todas las instancias del
navegador web conectadas al IDE.

No obstante, también puede detener manualmente la instancia inmediatamente usando la consola.

Para detener manualmente la instancia EC2 de un entorno

1. Después de cerrar todas las instancias del navegador web conectadas al IDE, elija Your environments
(Sus entornos) en la consola de AWS Cloud9.
2. Elija el botón situado en la parte superior derecha del panel que muestra los detalles del entorno que
estaba utilizando y elija View details (Ver detalles).
3. En Environment details (Detalles del entorno), en EC2 Instance (Instancia EC2), elija Go To Instance
(Ir a la instancia).
4. En la consola de Amazon EC2, en Instance state (Estado de la instancia), elija la casilla de verificación
para seleccionar la instancia de su entorno (Instance state [Estado de la instancia] puede indicar que
todavía se está ejecutando la instancia).
5. Elija la instancia y seleccione Instance state (Estado de la instancia) y Stop instance (Detener
instancia).
6. Cuando se le pida que confirme, elija Stop. Puede que transcurran unos minutos hasta que la
instancia se detenga.

195
AWS Cloud9 Guía del usuario
Trabajo con la configuración de usuario

Trabajo con la configuración de usuario en el IDE


de AWS Cloud9
Las opciones de configuración de usuario son las que se aplican en cada uno de los entornos de desarrollo
de AWS Cloud9 asociados al usuario de AWS Identity and Access Management (IAM). Incluyen los
siguientes tipos de configuraciones:

• Comportamientos generales de la interfaz de usuario, como habilitar animaciones y marcar pestañas


cambiadas
• Comportamientos de navegación del sistema de archivos
• Comportamientos de búsqueda de archivos
• Esquemas de color para las sesiones de terminal y salida
• Comportamientos adicionales del editor de código como, por ejemplo, plegado de código, selección de
líneas completas, desplazamiento de animaciones y tamaños de fuente

A medida que modifica la configuración de usuario, AWS Cloud9 envía esos cambios a la nube y los
asocia a su usuario de IAM. AWS Cloud9 también examina constantemente la nube para comprobar si hay
cambios en la configuración de usuario asociada a su usuario de IAM y aplica esta configuración al entorno
actual. Este comportamiento le permite disfrutar del mismo aspecto independientemente del entorno de
AWS Cloud9 en el que trabaja.
Note
AWS Cloud9 utiliza las API internas GetUserSettings y UpdateUserSettings para
almacenar y recuperar la configuración del IDE.

Puede compartir la configuración de usuario con otros usuarios de la siguiente manera:

• Visualización o cambio de la configuración de usuario (p. 196)


• Cómo compartir la configuración de usuario con otro usuario (p. 196)
• User Setting Changes You Can Make (p. 197)

Visualización o cambio de la configuración de usuario


1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).
2. Para ver la configuración de usuario de cada uno de los entornos, en la pestaña Preferences
(Preferencias), en el panel de navegación lateral, seleccione User Settings (Configuración de usuario).
3. En el panel User Settings (Configuración de usuario), cambie la configuración de usuario de cada uno
de los entornos.
4. Para aplicar los cambios a otro de los entornos, solo tiene que abrir el entorno. Si el entorno en cuestión
ya está abierto, actualice la pestaña del navegador web para ese entorno.

Para obtener más información, consulte el tema sobre cambios de la configuración de usuario que puede
realizar (p. 197).

Cómo compartir la configuración de usuario con otro


usuario
1. En los entornos de origen y de destino, en la barra de menús del IDE de AWS Cloud9, elija AWS
Cloud9, Open Your User Project (AWS Cloud9, Abrir su configuración de usuario).

196
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

2. En el entorno fuente, copie el contenido de la pestaña user.settings que se muestra.


3. En el entorno de destino, sobrescriba el contenido de la pestaña user.settings por el contenido copiado
del entorno fuente.
4. En el entorno de destino, guarde la pestaña user.settings.

Cambios de la configuración de usuario que puede


realizar
En estas secciones se describen los tipos de configuración de usuario que puede cambiar en el panel User
Settings (Configuración de usuario) de la pestaña Preferences (Preferencias):

• Generales (p. 197)


• Interfaz de usuario (p. 197)
• Colaboración (p. 198)
• Panel Tree y Go (p. 198)
• Buscar en archivos (p. 199)
• Metadatos (p. 199)
• Monitores (p. 199)
• Terminal (p. 200)
• Salida (p. 200)
• Editor de código (Ace) (p. 200)
• Input (p. 202)
• Consejos y advertencias (p. 203)
• Ejecución y depuración (p. 203)
• Vista previa (p. 203)
• Compilación (p. 204)

Generales
Reset to Factory Settings (Restablecer la configuración de fábrica

Si selecciona el botón Reset to Default (Restablecer configuración predeterminada), AWS Cloud9


restablece todas las configuraciones de usuario a la configuración de usuario predeterminada de AWS
Cloud9. Para confirmarlo, elija Reset settings (Restablecer configuración).
Warning

Esta acción no se puede deshacer.


Warn Before Exiting (Avisar antes de salir

Cada vez que intente salir de IDE, AWS Cloud9 le pedirá que confirme si desea salir.

Interfaz de usuario
Enable UI Animations (Habilitar animaciones de IU

AWS Cloud9 utiliza animaciones en IDE.

197
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

Use an Asterisk (*) to Mark Changed Tabs (Utilizar un asterisco (*) para marcar las pestañas cambiadas

AWS Cloud9 añade un asterisco (*) a las pestañas que tienen cambios, pero en las que aún no se ha
guardado el contenido.
Display Title of Active Tab as Browser Title (Mostrar título de pestaña activa como título del navegador

AWS Cloud9 cambia el título de la pestaña del navegador web asociada por el título de la pestaña
activa (por ejemplo, Untitled1 (Sintítulo1), hello.js, Terminal, Preferences (Preferencias), etc.).
Automatically Close Empty Panes (Cerrar automáticamente los paneles vacíos

Siempre que recargue un entorno, AWS Cloud9 cerrará automáticamente cualquier panel que
considere que está vacío.
Environment Files Icon and Selection Style (Icono de archivos de entorno y estilo de selección

El icono que utiliza AWS Cloud9 para los archivos del entorno y los comportamientos de selección de
archivos que utiliza AWS Cloud9.

Los valores válidos son:


• Default (Predeterminado) para que AWS Cloud9 utilice iconos y comportamientos de selección de
archivos predeterminados.
• Alternative (Alternativos) para que AWS Cloud9 utilice iconos y comportamientos de selección de
archivos alternativos.

Colaboración
Show Notification Bubbles (Mostrar burbujas de notificación

AWS Cloud9 muestra notificaciones si el entorno es un entorno compartido en el que varios usuarios
colaboran activamente.
Disable collaboration security warning (Deshabilitar advertencia de seguridad de colaboración

Cuando se agrega un miembro de lectura/escritura a un entorno, AWS Cloud9 no muestra el cuadro


de diálogo de advertencia de seguridad.
Show Authorship Info (Mostrar información de autor

AWS Cloud9 subraya el texto ingresado por otros miembros del entorno con resaltados relacionados
en el margen interno.

Panel Tree y Go
Ámbito de Go to Anything (Ir a cualquier punto) a Favoritos

Go to File (Ir a archivo) en la ventana Go (Ir) muestra solo los resultados de Favorites (Favoritos) en la
ventana Environment (Entorno).
Habilitar Vista previa en Go to Anything (Ir a cualquier punto

Go to File (Ir a archivo) en la ventana Go (Ir) muestra el contenido del archivo que coincide a medida
que escribe.
Enable Preview on Tree Selection (Habilitar vista previa al seleccionar árbol

AWS Cloud9 muestra el archivo elegido con un solo clic en lugar de con un doble clic.
Hidden File Pattern (Patrón de archivos ocultos

Los tipos de archivos que AWS Cloud9 va a tratar como ocultos.

198
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

Reveal Active File in Project Tree (Revelar archivo activo en árbol de proyecto

AWS Cloud9 resalta el archivo activo en la ventana Environment (Entorno).


Download Files As (Descargar archivos como

El comportamiento que debe utilizar AWS Cloud9 para descargar archivos.

Los valores válidos son:


• auto: AWS Cloud9 descarga archivos sin realizar modificaciones.
• tar.gz: AWS Cloud9 descarga archivos como archivos TAR comprimidos.
• zip: AWS Cloud9 descarga archivos en formato .zip.

Buscar en archivos
Search In This Path When 'Project' Is Selected (Buscar en esta ruta cuando el "Proyecto" está
seleccionado

En la barra de búsqueda en los archivos, cuando Project (Proyecto) está seleccionado en el ámbito de
búsqueda, la ruta en la que se debe buscar.
Show Full Path in Results (Mostrar ruta completa en los resultados

Muestra la ruta completa a cada archivo coincidente en la pestaña Search Results (Resultados de
búsqueda).
Clear Results Before Each Search (Borrar resultados antes de cada búsqueda

Borra la pestaña Search Results (Resultados de búsqueda) de los resultados de las búsquedas
anteriores antes de que empiece la búsqueda actual.
Scroll Down as Search Results Come In (Desplazarse hacia abajo a medida que se muestran los
resultados de la búsqueda

Desplaza la pestaña Search Results (Resultados de búsqueda) hasta la parte inferior de la lista de
resultados a medida que se identifican los resultados de la búsqueda.
Open Files when Navigating Results with (Up and Down) (Abrir archivos al navegar por los resultados con
(Arriba y Abajo)

Al presionar las teclas de flecha arriba y abajo en la pestaña Search Results (Resultados de
búsqueda), en la lista de resultados, se abre cada archivo coincidente.

Metadatos
Maximum of Undo Stack Items in Meta Data (Número máximo de elementos de la pila de deshacer en
metadatos

El número máximo de elementos que AWS Cloud9 mantiene en su lista de acciones que se pueden
deshacer.

Monitores
Auto-Merge Files When a Conflict Occurs (Fusionar archivos automáticamente cuando se produce un
conflicto

AWS Cloud9 intenta fusionar automáticamente los archivos siempre que se produce un conflicto de
fusión.

199
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

Terminal
Color del texto

El color del texto en las pestañas Terminal.


Background Color (Color de fondo

El color de fondo en las pestañas Terminal.


Selection Color (Color de selección

El color del texto seleccionado en las pestañas Terminal.


Font Family (Familia de fuentes

El estilo de fuente en las pestañas Terminal.


Tamaño de fuente

El tamaño del texto en las pestañas Terminal.


Antialiased Fonts (Fuentes suavizadas

AWS Cloud9 intenta suavizar la visualización de texto en las pestañas Terminal.


Blinking Cursor (Cursor parpadeante

AWS Cloud9 hace parpadear continuamente el cursor en las pestañas Terminal.


Scrollback (Desplazamiento hacia atrás

El número de líneas que puede desplazarse hacia delante o hacia atrás en las pestañas Terminal.
Use AWS Cloud9 as the Default Editor (Utilizar Cloud9 como editor predeterminado

Utiliza AWS Cloud9 como el editor de texto predeterminado.

Salida
Color del texto

El color del texto de las pestañas que muestra la salida.


Background Color (Color de fondo

El color de fondo del texto de las pestañas que muestra la salida.


Selection Color (Color de selección

El color del texto seleccionado de las pestañas que muestra la salida.


Warn Before Closing Unnamed Configuration (Avisar antes de cerrar una configuración sin nombre

AWS Cloud9 le pedirá que guarde cualquier pestaña de configuración que no esté guardada antes de
que se cierre.
Preserve log between runs (Conservar registro entre ejecuciones

AWS Cloud9 mantiene un registro de todos los intentos de ejecución.

Editor de código (Ace)


Auto-pair Brackets, Quotes, etc. (Emparejamiento automático de corchetes o comillas.

AWS Cloud9 intenta añadir un carácter de cierre que coincida a cada carácter de inicio relacionado
que se escriba en las pestañas del editor, como, por ejemplo, para corchetes, comillas y llaves.

200
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

Wrap Selection with Brackets, Quote, etc. (Incluir selección entre corchetes, comillas, etc.

AWS Cloud9 intenta insertar un carácter de cierre que coincida al final del texto en las pestañas del
editor después de que se seleccione el texto y se escriba un carácter relacionado con el inicial, como,
por ejemplo, para corchetes, comillas y llaves.
Code Folding (Plegado de código

AWS Cloud9 intenta mostrar, expandir, ocultar o contraer secciones de código en las pestañas del
editor de acuerdo con las reglas de sintaxis del código relacionado.
Fade Fold Widgets (Widgets de pliegue de desvanecimiento

AWS Cloud9 muestra los controles de plegado del código en el margen interior siempre que el ratón
se detenga sobre esos controles en las pestañas del editor.
Full Line Selection (Selección de línea completa

AWS Cloud9 selecciona una línea completa a la que se hace triple clic en las pestañas del editor.
Highlight Active Line (Resaltar línea activa

AWS Cloud9 resalta toda la línea activa en las pestañas del editor.
Highlight Gutter Line (Resaltar línea de margen interior

AWS Cloud9 resalta la ubicación del margen interior junto a la línea activa en las pestañas del editor.
Show Invisible Characters (Mostrar caracteres invisibles

AWS Cloud9 muestra lo que considera que son caracteres invisibles en las pestañas del editor; por
ejemplo, retornos de carro y saltos de línea, espacios y tabulaciones.
Show Gutter (Mostrar margen interior

AWS Cloud9 muestra el margen interior.


Show Line Numbers (Mostrar números de línea

El comportamiento para mostrar números de líneas en el margen interior.

Los valores válidos son:


• Normal: muestra números de línea.
• Relative (Relativo): muestra números de línea en relación con la línea activa.
• None (Ninguno): oculta los números de línea.
Show Indent Guides (Mostrar guías de sangrado

AWS Cloud9 muestra guías para visualizar más fácilmente el texto con sangría en las pestañas del
editor.
Highlight Selected Word (Resaltar palabra seleccionada

AWS Cloud9 selecciona una palabra completa en la que se hace doble clic en una pestaña del editor.
Scroll Past the End of the Document (Desplazarse hasta después del final del documento

El comportamiento para permitir que el usuario se desplace más allá del final del archivo actual en las
pestañas del editor.

Los valores válidos son:


• Off (Desactivado): no permite ningún desplazamiento más allá del final del archivo actual.
• Half Editor Height (Mitad de altura del editor): permite el desplazamiento más allá del final del
archivo actual hasta la mitad de la altura de la pantalla del editor.

201
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

• Full Editor Height (Altura del editor completa): permite el desplazamiento más allá del final del
archivo actual hasta la altura completa de la pantalla del editor.
Animate Scrolling (Animar desplazamiento

AWS Cloud9 aplica comportamientos de animación durante las acciones de desplazamiento en las
pestañas del editor.
Font Family (Familia de fuentes

El estilo de la fuente que se va a utilizar en las pestañas del editor.


Tamaño de fuente

El tamaño de la fuente que se va a utilizar en las pestañas del editor.


Antialiased Fonts (Fuentes suavizadas

AWS Cloud9 intenta suavizar la visualización de texto en las pestañas del editor.
Show Print Margin (Mostrar margen de impresión

Mostrar una línea vertical en las pestañas del editor después de la posición especificada del carácter.
Mouse Scroll Speed (Velocidad de desplazamiento del ratón

La velocidad relativa del desplazamiento del ratón en las pestañas del editor. Los valores más altos
producen un desplazamiento más rápido.
Cursor Style (Estilo del cursor

El estilo y el comportamiento del cursor en las pestañas del editor.

Los valores válidos son:


• Ace (As): muestra el cursor como una barra vertical que es relativamente más ancha que Slim
(Fina).
• Slim (Fina): muestra el cursor como una barra vertical relativamente fina.
• Smooth (Suave): muestra el cursor como una barra vertical que es relativamente más ancha que
Slim (Fina) y que parpadea más suavemente que la de Slim (Fina).
• Smooth and Slim (Suave y fina): muestra el cursor como una barra vertical que es relativamente fina
y que parpadea más suavemente que la de Slim (Fina).
• Wide (Ancha): muestra el cursor como una barra vertical relativamente ancha.

Merge Undo Deltas (Combinar deltas de deshacer

• Always (Siempre): permite que se reviertan los conflictos de fusiones.


• Never (Nunca): nunca permite que se reviertan los conflictos de fusiones.
• Timed (Con tiempo): permite que los conflictos de fusiones se reviertan después de un periodo
determinado.

Enable Wrapping For New Documents (Habilitar el ajuste de documentos nuevos

AWS Cloud9 ajusta el código en los archivos nuevos.

Input
Complete As You Type (Completar al escribir

AWS Cloud9 intenta completar el texto si es posible a medida que lo escribe.

202
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar

Complete On Enter (Completar al pulsar Intro

AWS Cloud9 intenta completar el texto a medida que lo escribe después de presionar Enter (Intro).
Highlight Variable Under Cursor (Resaltar variable bajo cursor

AWS Cloud9 resalta todas las referencias en el código a la variable seleccionada.


Use Cmd-Click for Jump to Definition (Utilizar Cmd-clic para ir a definición

AWS Cloud9 va a cualquier definición original de código en la que se haga clic mientras se mantiene
pulsada la tecla Command en Mac o Ctrl en Windows.

Consejos y advertencias
Enable Hints and Warnings (Habilitar consejos y advertencias

AWS Cloud9 muestra mensajes de consejos y advertencias aplicables.


Ignore Messages Matching Regex (Omitir mensajes que coinciden con Regex

AWS Cloud9 no muestra ningún mensaje que coincida con la expresión regular especificada. Para
obtener más información, consulte Writing a regular expression pattern en JavaScript Regular
Expressions en Mozilla Developer Network.

Ejecución y depuración
Save All Unsaved Tabs Before Running (Guardar todas las pestañas no guardadas antes de ejecutar

Antes de ejecutar el código asociado, AWS Cloud9 intenta guardar todos los archivos sin guardar con
pestañas abiertas.

Vista previa
Preview Running Apps (Vista previa de aplicaciones en ejecución

AWS Cloud9 intenta mostrar una vista previa de la salida del código en la pestaña activa cuando se
selecciona el botón Preview (Vista previa).
Default Previewer (Visor de vista previa predeterminado

El formato que utiliza AWS Cloud9 para obtener una vista previa de la salida de código.

Los valores válidos son:


• Raw (Sin formato): permite intentar ver la salida del código en un formato plano.
• Browser (Navegador): permite intentar ver la salida del código en un formato que es el preferido de
los navegadores web.
When Saving Reload Previewer (Recargar el visor de vista previa al guardar

El comportamiento que utiliza AWS Cloud9 para la vista previa de la salida de código cuando se
guarda un archivo de código.

Los valores válidos son:


• Only on Ctrl-Enter (Solo con Ctrl-Intro): permite intentar obtener una vista previa de la salida del
código cada vez que se presiona Ctrl+Intro para la pestaña de código actual.
• Always (Siempre): permite intentar obtener una vista previa de la salida de código cuando se guarda
un archivo de código.

203
AWS Cloud9 Guía del usuario
Trabajar con la configuración de
usuarios y de proyectos de AWS

Compilación
Automatically Build Supported Files (Compilar automáticamente archivos compatibles

AWS Cloud9 intenta compilar automáticamente el código actual si se activa una acción de compilación
y el código está en un formato compatible.

Trabajar con la configuración de usuarios y de


proyectos de AWS en el entorno de desarrollo
integrado (IDE) de AWS Cloud9
La configuración de los servicios de AWS, ubicada en el panel AWS Settings (Configuración de AWS) de la
pestaña Preferences (Preferencias), incluye los siguientes tipos de configuración:

• Qué región de AWS utilizar en la ventana AWS Resources (Recursos de AWS)


• Si se van a usar credenciales temporales administradas por AWS
• Si se va a mostrar el editor de plantillas del modelo de aplicaciones sin servidor de AWS (AWS SAM) en
el modo visual o de texto sin formato

Para ver o cambiar esta configuración, elija AWS Cloud9, Preferences (AWS Cloud9, Preferencias) en la
barra de menús de un IDE para un entorno.

En la siguiente lista, la configuración de nivel de proyecto se aplica únicamente al entorno de desarrollo de


AWS Cloud9 actual, mientras que la configuración de nivel de usuario se aplica a cada entorno asociado
con su usuario de IAM. Para obtener más información, consulte Aplicar la configuración del proyecto actual
de un entorno a otro (p. 189) y Compartir la configuración de usuario con otro usuario (p. 196).

• Configuración de nivel de proyecto (p. 204)


• Configuración de nivel de usuario (p. 204)

Configuración de nivel de proyecto


AWS Región de

Qué región de AWS se va a utilizar en la sección Lambda de la ventana AWS Resources (Recursos
de AWS).
AWS Credenciales temporales administradas por

Si la opción está activada, se usan las credenciales temporales administradas por AWS al llamar a los
servicios de AWS desde AWS CLI, aws-shell o el código de AWS SDK de un entorno. Para obtener
más información, consulte Credenciales temporales administradas de AWS (p. 569).

Configuración de nivel de usuario


Uso del editor visual AWS SAM

Si está opción está activada, muestra el editor de plantillas de AWS Serverless Application Model
(AWS SAM) en el modo visual al utilizar la sección Lambda de la ventana AWS Resources (Recursos
de AWS). Si está desactivada, muestra el editor en modo de texto.

204
AWS Cloud9 Guía del usuario
Trabajo con enlaces de teclado

Trabajo con enlaces de teclado en el entorno de


desarrollo integrado (IDE) de AWS Cloud9
Los enlaces de teclado definen sus combinaciones de teclas de acceso directo. Los enlaces de teclado se
aplican en todos los entornos de desarrollo de AWS Cloud9 asociados a su usuario de IAM. A medida que
realiza cambios en los enlaces de teclado, AWS Cloud9 los envía a la nube y los asocia con su usuario
de IAM. AWS Cloud9 también examina constantemente la nube para comprobar si hay cambios en los
enlaces de teclado asociados a su usuario de IAM y aplica estos cambios en el entorno actual.

Puede compartir sus enlaces de teclado con otros usuarios.

• Visualización o cambio de los enlaces de teclado (p. 205)


• Uso compartido de sus enlaces de teclado con otro usuario (p. 205)
• Cambio del modo de teclado (p. 206)
• Cambio de los enlaces de teclado de su sistema operativo (p. 206)
• Cambio de enlaces de teclado específicos (p. 206)
• Eliminación de todos los enlaces de teclado personalizados (p. 207)

Visualización o cambio de los enlaces de teclado


1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).
2. Para ver los enlaces de teclado en todos sus entornos, en la pestaña Preferences (Preferencias), en el
panel de navegación lateral, elija Keybindings (Enlaces de teclado).
3. Para cambiar sus enlaces de teclado en todos sus entornos, en el panel Keybindings (Enlaces de
teclado), cambie la configuración que desee.
4. Para aplicar los cambios a cualquier entorno, solo tiene que abrir el entorno. Si el entorno en cuestión ya
está abierto, actualice la pestaña del navegador web para ese entorno.

Para obtener más información, consulte los siguientes:

• Referencia de enlaces de teclado predeterminados para MacOS (p. 209)


• Referencia de enlaces de teclado Vim para MacOS (p. 221)
• Referencia de enlaces de teclado Emacs para MacOS (p. 232)
• Referencia de enlaces de teclado Sublime para MacOS (p. 243)
• Referencia de enlaces de teclado predeterminados para Windows/Linux (p. 256)
• Referencia de enlaces de teclado Vim para Windows/Linux (p. 267)
• Referencia de enlaces de teclado Emacs para Windows/Linux (p. 278)
• Referencia de enlaces de teclado Sublime para Windows/Linux (p. 290)

Uso compartido de sus enlaces de teclado con otro


usuario
1. En los entornos de origen y de destino, en la barra de menús del IDE de AWS Cloud9, elija AWS
Cloud9, Open Your Keymap (AWS Cloud9, Abrir su Keymap).
2. En el entorno fuente, copie el contenido de la pestaña keybindings.settings que se muestra.
3. En el entorno de destino, sobrescriba el contenido de la pestaña keybindings.settings por el contenido
copiado del entorno fuente.

205
AWS Cloud9 Guía del usuario
Cambio del modo de teclado

4. En el entorno de destino, guarde la pestaña keybindings.settings.

Cambio del modo de teclado


Puede cambiar el modo de teclado que utiliza el IDE de AWS Cloud9 para interactuar con el texto en el
editor en todos los entornos asociados a su usuario de IAM.

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En el panel de navegación lateral, en la pestaña Preferences (Preferencias), elija Keybindings (Enlaces
de teclado).
3. En Keyboard Mode (Modo de teclado), elija uno de los siguientes modos de teclado:
• Default (Predeterminado) para utilizar un conjunto de enlaces de teclado predeterminados.
• Vim para utilizar el modo Vim. Para obtener más información, consulte el sitio web de archivos de
ayuda de Vim.
• Emacs, para utilizar el modo Emacs. Para obtener más información, consulte The Emacs Editor en el
sitio web del sistema operativo GNU.
• Sublime para utilizar el modo Sublime. Para obtener más información, consulte el sitio web de la
documentación de texto Sublime.

Cambio de los enlaces de teclado de su sistema


operativo
Puede cambiar el conjunto de enlaces de teclado del sistema operativo que el IDE de AWS Cloud9
reconoce en todos los entornos asociados a su usuario de IAM.

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En el panel de navegación lateral, en la pestaña Preferences (Preferencias), elija Keybindings (Enlaces
de teclado).
3. En Operating System (Sistema operativo), elija uno de los siguientes sistemas operativos:
• Auto (Automático) para que el IDE de AWS Cloud9 intente detectar qué conjunto de enlaces de
teclado del sistema operativo se va a utilizar.
• MacOS para que el IDE de AWS Cloud9 utilice los enlaces de teclado enumerados con formato de
Mac.
• Windows/Linux para que el IDE de AWS Cloud9 utilice los enlaces de teclado enumerados con
formatos de Windows y Linux.

Cambio de enlaces de teclado específicos


Puede cambiar los enlaces de teclado individuales en todos los entornos asociados a su usuario de IAM.

Para cambiar los enlaces de teclado de uno en uno

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En el panel de navegación lateral, en la pestaña Preferences (Preferencias), elija Keybindings
(Enlaces de teclado).
3. En la lista de enlaces de teclado, haga doble clic en el enlace de teclado de la columna Keystroke
(Combinación de teclas) que desea cambiar.
4. Utilice el teclado para especificar la combinación de teclas de sustitución y, a continuación, pulse
Enter.

206
AWS Cloud9 Guía del usuario
Eliminación de todos los enlaces de teclado personalizados

Note

Para eliminar completamente la combinación de teclas actual, pulse Backspace para


Windows o Linux o pulse Delete para Mac.

Para cambiar varios enlaces de teclado a la vez

1. En la barra de menús, elija AWS Cloud9 y, a continuación, Open Your Keymap (Abrir su Keymap).
2. En el archivo keybindings.settings, defina los enlaces de teclado que desea cambiar, por
ejemplo:

[
{
"command": "addfavorite",
"keys": {
"win": ["Ctrl-Alt-F"],
"mac": ["Ctrl-Option-F"]
}
},
{
"command": "copyFilePath",
"keys": {
"win": ["Ctrl-Shift-F"],
"mac": ["Alt-Shift-F"]
}
}
]

En el ejemplo, addFavorite y copyFilePath son los nombres de los enlaces de teclado incluidos
en la columna Keystroke (Combinación de teclas) del panel Keybindings (Enlaces de teclado) en la
pestaña Preferences (Preferencias). Los enlaces de teclado le que interesan son win y mac para
Windows o Linux y Mac, respectivamente.

Para aplicar los cambios, guarde el archivo keybindings.settings. Los cambios deberían
aparecer en el panel Keybindings (Enlaces de teclado) tras un breve retraso.

Eliminación de todos los enlaces de teclado


personalizados
Puede eliminar todos los enlaces de teclado personalizados y restaurarlos a sus valores predeterminados,
en todos los entornos asociados a su usuario de IAM.
Warning

Esta acción no se puede deshacer.

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En el panel de navegación lateral, en la pestaña Preferences (Preferencias), elija Keybindings (Enlaces
de teclado).
3. Elija Reset to Defaults (Restablecer valores predeterminados).

207
AWS Cloud9 Guía del usuario
Trabajar con temas

Trabajar con temas en el entorno de desarrollo


integrado (IDE) de AWS Cloud9
Un tema define los colores generales del IDE. Esto se aplica en todos los entornos de desarrollo de AWS
Cloud9 asociados a su usuario de IAM. A medida que realiza cambios en el tema, AWS Cloud9 los envía
a la nube y los asocia con su usuario de IAM. AWS Cloud9 también examina constantemente la nube para
comprobar si hay cambios en el tema asociado a su usuario de IAM y aplica estos cambios en el entorno
actual.

• Ver o cambiar el tema (p. 208)


• Valores generales de configuración de temas que puede cambiar (p. 208)
• Anulaciones de tema (p. 208)

Ver o cambiar el tema


1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).
2. Para ver los temas de todos sus entornos, en la pestaña Preferences (Preferencias), en el panel de
navegación lateral, elija Themes (Temas).
3. Para cambiar los temas en todos sus entornos, en el panel Themes (Temas), cambie la configuración
que desee. Para cambiar partes del tema mediante código, elija el enlace de la hoja de estilos.
4. Para aplicar los cambios en cualquiera de sus entornos, solo tiene que abrir el entorno. Si el entorno en
cuestión ya está abierto, actualice la pestaña del navegador web para ese entorno.

Valores generales de configuración de temas que


puede cambiar
Puede cambiar los siguientes tipos generales de configuración de temas en la pestaña Preferences
(Preferencias) del panel Themes (Temas).

Tema flat

Aplica el tema flat integrado en todo el IDE de AWS Cloud9.


Tema classic

Aplica el tema classic integrado en todo el IDE de AWS Cloud9.


Tema Syntax

Aplica el tema seleccionado a los archivos de código de todo el IDE de AWS Cloud9.

Anulaciones de tema
Important

AWS Cloud9 ya no es compatible con la característica que permitía a los usuarios anular los
temas del IDE mediante la actualización del archivo styles.css. Los usuarios pueden seguir
viendo, editando y guardando el archivo styles.css mediante el editor, pero las anulaciones de
tema no se aplican cuando se carga el IDE de AWS Cloud9.
Si AWS Cloud9 detecta que el archivo styles.css se ha modificado, se muestra el siguiente
mensaje en el IDE:

208
AWS Cloud9 Guía del usuario
Administración de scripts de inicialización

Se ha interrumpido la asistencia para las anulaciones de tema. El contenido de este archivo


styles.css ya no se aplicará al cargar el IDE de AWS Cloud9.
Si necesita usar hojas de estilo para definir temas para el IDE, póngase en contacto no nosotros
directamente.

Administrar scripts de inicialización en el entorno de


desarrollo integrado (IDE) de AWS Cloud9
Important

AWS Cloud9 ya no es compatible con la característica experimental que permitía a los usuarios
personalizar un script de inicialización que se ejecutaba automáticamente en el IDE. Los usuarios
pueden seguir viendo, editando y guardando el archivo init.js mediante el editor, pero
los scripts de inicialización personalizados ya no pueden ejecutarse y no pueden modificar el
comportamiento del IDE.
Si AWS Cloud9 detecta que el archivo init.js se ha modificado, se muestra el siguiente
mensaje en el IDE:
Se ha interrumpido la asistencia para los scripts de inicialización. El contenido de este archivo
init.js ya no se ejecutará al cargar el IDE de AWS Cloud9.
Si necesita ejecutar un script de inicialización personalizado para el IDE, contacte con nosotros
directamente.

Un script de inicialización define el código de inicialización personalizado que se ejecutará en su IDE


después de que se carguen todos los complementos. Esto se aplica a todos los entornos de desarrollo de
AWS Cloud9 asociados a su usuario de IAM. AWS Cloud9 también examina continuamente si se producen
cambios en el script de inicialización y alerta a los usuarios si se produce una modificación.

Abrir el script de inicialización


Para abrir el script de inicialización, en la barra de menús, elija AWS Cloud9, Open Your Init Script (Abrir
script de inicialización).
Important

Puede editar y guardar el archivo init.js mediante el editor, pero su script personalizado no
podrá ejecutarse en el IDE.

Referencia de enlaces de teclado predeterminados


para MacOS para el entorno de desarrollo integrado
(IDE) de AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado predeterminado para los
sistemas operativos MacOS en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Default (Predeterminado).
4. En Operating System (Sistema operativo), elija MacOS.

209
AWS Cloud9 Guía del usuario
Generales

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 210)


• Pestañas (p. 212)
• Paneles (p. 214)
• Editor de código (p. 214)
• emmet (p. 219)
• Terminal (p. 220)
• Ejecución y depuración (p. 220)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Command-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Control-Space | Option- complete


finalización de un código Space

Completar el código y luego Control-Shift-Space | completeoverwrite


sobrescribir Option-Shift-Space

Copiar la selección en el Command-C copy


portapapeles

Cortar la selección en el Command-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Command-F find


reemplazar en el documento
actual

Seleccionar todas las Control-Option-G findAll


coincidencias en el documento
actual

Ir a la siguiente coincidencia Command-G findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Command-Shift-G findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de

210
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando


inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Command-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Command-L gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Command-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
pruebe a cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Control-N newfile

Mostrar la pestaña Preferences Command-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Command-Option-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Command-V paste


portapapeles en el cursor

Mostrar sugerencias para Command-F3 quickfix


corregir errores

Rehacer la última acción Command-Shift-Z | Command- redo


Y

Actualizar el panel de vista previa Command-Enter reloadpreview

Iniciar una refactorización de Option-Command-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Option-Command-F replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(Reemplazar por)

211
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Volver a ejecutar el script de Command-Enter rerunInitScript


inicialización

Reiniciar el entorno Command-R restartc9

Restablecer la última versión Control-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Option-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Command-S save


disco

Guardar el archivo actual en el Command-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Shift-Command-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Command-Option-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Command-Z undo

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Option-Control-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Option-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Command-Control-W closepane

Cerrar la pestaña actual Option-W closetab

Bajar un panel Control-Command-Down gotopanedown

Ir un panel a la izquierda Control-Command-Left gotopaneleft

Ir un panel a la derecha Control-Command-Right gotopaneright

Ir un panel hacia arriba Control-Command-Up gottopaneup

Ir una pestaña a la izquierda Command-[ gototableft

Ir una pestaña a la derecha Command-] gototabright

Mover la pestaña actual un panel Command-Option-Shift- movetabdown


hacia abajo o, si la pestaña ya Down
está en la parte inferior, crear allí
una pestaña dividida

212
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Mover la pestaña actual a la Command-Option-Shift- movetableft


izquierda o, si la pestaña ya está Left
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetabright


derecha o, si la pestaña ya está Right
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Command-Option-Shift-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Option-Esc nextpane

Ir a la siguiente pestaña Option-Tab nexttab

Ir al panel anterior Option-Shift-Esc previouspane

Ir a la pestaña anterior Option-Shift-Tab previoustab

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Option-Shift-T reopenLastTab

Mostrar la pestaña actual en el Command-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Command-0 tab0

Ir a la primera pestaña Command-1 tab1

Ir a la segunda pestaña Command-2 tab2

Ir a la tercera pestaña Command-3 tab3

Ir a la cuarta pestaña Command-4 tab4

Ir a la quinta pestaña Command-5 tab5

Ir a la sexta pestaña Command-6 tab6

Ir a la séptima pestaña Command-7 tab7

Ir a la octava pestaña Command-8 tab8

Ir a la novena pestaña Command tab9

213
AWS Cloud9 Guía del usuario
Paneles

Paneles
Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-E|Command-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Command-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Command-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Command-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Command-Shift-E outline


(Esquema)

Mostrar la ventana Console Control-Esc toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Command-U toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código
Descripción Enlace de teclado Comando

Añadir un cursor una línea por Control-Option-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Control-Option-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Control-Option-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Control-Option-Shift- addCursorBelowSkipCurrent


línea por debajo del cursor Down
activo, o si ya se ha añadido
un segundo cursor, mover el

214
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando


segundo cursor una línea por
debajo

Mover todos los cursores al Control-Option-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Control-Backspace backspace


| Shift-Backspace |
Backspace

Aplicar sangría de un tabulador a Control-] blockindent


la selección

Quitar la sangría de la selección Control-[ blockoutdent


un tabulador

Controlar si el foco se puede Command-Z | Command- cancelBrowserUndoInAce


cambiar desde el editor a otra Shift-Z | Command-Y
parte en el IDE

Centrarse en la selección Control-L centerselection

Copiar el contenido de la línea y Command-Option-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Command-Option-Up copylinesup


pegarlo una línea por encima

Eliminar un espacio Delete | Control-Delete del


| Shift-Delete

Copiar el contenido de la Command-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Command-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Control-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado o, Command-Option-L | fold


si hay seleccionada una unidad Command-F1
plegada, desplegarla

Plegar todos los elementos Control-Command-Option-0 foldall


plegables

Plegar todos los elementos Command-Option-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down | Control-N golinedown

Subir una línea Up | Control-P golineup

215
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Ir al final del archivo Command-End | Command- gotoend


Down

Ir un espacio a la izquierda Left | Control-B gotoleft

Ir al final de la línea actual Command-Right | End | gotolineend


Control-E

Ir al comienzo de la línea actual Command-Left | Home | gotolinestart


Control-A

Ir al siguiente error F4 goToNextError

Bajar una página Page Down | Control-V gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Shift-F4 goToPreviousError

Ir un espacio a la derecha Right | Control-F gotoright

Ir al principio del archivo Command-Home | Command- gotostart


Up

Ir una palabra a la izquierda Option-Left gotowordleft

Ir una palabra a la derecha Option-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Control-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Command-+ | Command-= largerfont

Reducir el número a la izquierda Option-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Option-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Option-Down movelinesdown


hacia abajo

Mover la selección una línea Option-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Bajar una página Option-Page Down pagedown

Subir una página Option-Page Up pageup

216
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Eliminar la línea actual Command-D removeline

Eliminar desde el cursor hasta el Control-K removetolineend


final de la línea actual

Eliminar desde el comienzo de la Command-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Option-Backspace | removewordleft


izquierda del cursor Control-Option-Backspace

Eliminar la palabra situada a la Option-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Command-Shift-E replaymacro


teclado previamente registradas

Seleccionar todo el contenido Command-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down | Control- selectdown


la selección Shift-N

Incluir el siguiente espacio a Shift-Left | Control- selectleft


la izquierda del cursor en la Shift-B
selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Control-Option-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Control-Option-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextAfter


coincidente que está después de Right
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextBefore


coincidente que está antes de la Left
selección

Seleccionar o buscar la siguiente Control-G selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Control-Shift-G selectOrFindPrevious


coincidente anterior

217
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Command-Shift-End | selecttoend


el final del archivo actual en la Command-Shift-Down
selección

Incluir desde el cursor hasta Command-Shift-Right | selecttolineend


el final de la línea actual en la Shift-End | Control-
selección Shift-E

Incluir desde el comienzo de la Command-Shift-Left | selecttolinestart


línea actual hasta el cursor en la Control-Shift-A
selección

Incluir desde el cursor hasta el Control-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Command-Shift-Home | selecttostart


comienzo del archivo actual en la Command-Shift-Up
selección

Incluir la línea siguiente arriba en Shift-Up | Control- selectup


la selección Shift-Up

Incluir la siguiente palabra a Option-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Option-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Command-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Command-- smallerfont

Si se seleccionan varias líneas, Command-Option-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Control-Option-L splitIntoLines


línea actual

218
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Mover el contenido del cursor Control-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Command-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Command-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Option-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Command-Option-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Control-W toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Control-Shift-U tolowercase


minúsculas

Poner la selección completa en Control-U touppercase


mayúsculas

Transponer la selección Control-T transposeletters

Desplegar el código Command-Option-Shift-L | unfold


seleccionado Command-Shift-F1

Desplegar el plegado de código Command-Option-Shift-0 unfoldall


en todo el archivo

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Command-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Control-Option-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

219
AWS Cloud9 Guía del usuario
Terminal

Descripción Enlace de teclado Comando

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Command-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Command-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Control-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal
Descripción Enlace de teclado Comando

Abrir una nueva pestaña Option-T openterminal


Terminal

Cambiar entre el editor y la Option-S switchterminal


pestaña Terminal

Ejecución y depuración
Descripción Enlace de teclado Comando

Compilar el archivo actual Command-B build

Reanudar el proceso actual en F8 | Command-\ resume


pausa

Ejecutar o depurar la aplicación Option-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 | Command-; stepinto


a la pila

Salir del ámbito de la función Shift-F11 | Command- stepout


actual Shift-'

Saltar la expresión actual en la F10 | Command-' stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

220
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado Vim para MacOS

Descripción Enlace de teclado Comando

Detener la compilación del Control-Shift-C stopbuild


archivo actual

Referencia de enlaces de teclado Vim para MacOS


para el entorno de desarrollo integrado (IDE) de
AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado Vim para los sistemas
operativos MacOS en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Vim.
4. En Operating System (Sistema operativo), elija MacOS.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 221)


• Pestañas (p. 224)
• Paneles (p. 225)
• Editor de código (p. 226)
• emmet (p. 231)
• Terminal (p. 231)
• Ejecución y depuración (p. 231)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Command-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Control-Space | Option- complete


finalización de un código Space

Completar el código y luego Control-Shift-Space | completeoverwrite


sobrescribir Option-Shift-Space

Copiar la selección en el Command-C copy


portapapeles

221
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Cortar la selección en el Command-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Command-F find


reemplazar en el documento
actual

Seleccionar todas las Control-Option-G findAll


coincidencias en el documento
actual

Ir a la siguiente coincidencia Command-G findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Command-Shift-G findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Command-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Command-L gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Command-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Control-N newfile

Mostrar la pestaña Preferences Command-, openpreferences


(Preferencias)

222
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Abrir una pestaña Terminal Command-Option-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Command-V paste


portapapeles en el cursor

Mostrar sugerencias para Command-F3 quickfix


corregir errores

Rehacer la última acción Command-Shift-Z | Command- redo


Y

Actualizar el panel de vista previa Command-Enter reloadpreview

Iniciar una refactorización de Option-Command-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Option-Command-F replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Volver a ejecutar el script de Command-Enter rerunInitScript


inicialización

Reiniciar el entorno Command-R restartc9

Restablecer la última versión Control-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Option-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Command-S save


disco

Guardar el archivo actual en el Command-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Shift-Command-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Command-Option-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Command-Z undo

223
AWS Cloud9 Guía del usuario
Pestañas

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Option-Control-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Option-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Command-Control-W closepane

Cerrar la pestaña actual Option-W closetab

Bajar un panel Control-Command-Down gotopanedown

Ir un panel a la izquierda Control-Command-Left gotopaneleft

Ir un panel a la derecha Control-Command-Right gotopaneright

Ir un panel hacia arriba Control-Command-Up gottopaneup

Ir una pestaña a la izquierda Command-[ gototableft

Ir una pestaña a la derecha Command-] gototabright

Mover la pestaña actual un panel Command-Option-Shift- movetabdown


hacia abajo o, si la pestaña ya Down
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetableft


izquierda o, si la pestaña ya está Left
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetabright


derecha o, si la pestaña ya está Right
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Command-Option-Shift-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Option-Esc nextpane

Ir a la siguiente pestaña Option-Tab nexttab

Ir al panel anterior Option-Shift-Esc previouspane

Ir a la pestaña anterior Option-Shift-Tab previoustab

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Option-Shift-T reopenLastTab

224
AWS Cloud9 Guía del usuario
Paneles

Descripción Enlace de teclado Comando

Mostrar la pestaña actual en el Command-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Command-0 tab0

Ir a la primera pestaña Command-1 tab1

Ir a la segunda pestaña Command-2 tab2

Ir a la tercera pestaña Command-3 tab3

Ir a la cuarta pestaña Command-4 tab4

Ir a la quinta pestaña Command-5 tab5

Ir a la sexta pestaña Command-6 tab6

Ir a la séptima pestaña Command-7 tab7

Ir a la octava pestaña Command-8 tab8

Ir a la novena pestaña Command tab9

Paneles

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-E|Command-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Command-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Command-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Command-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Command-Shift-E outline


(Esquema)

Mostrar la ventana Console Control-Esc toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Command-U toggletree


(Entorno) si está oculta u
ocultarla si se muestra

225
AWS Cloud9 Guía del usuario
Editor de código

Editor de código
Descripción Enlace de teclado Comando

Añadir un cursor una línea por Control-Option-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Control-Option-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Control-Option-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Control-Option-Shift- addCursorBelowSkipCurrent


línea por debajo del cursor Down
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
debajo

Mover todos los cursores al Control-Option-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Control-Backspace backspace


| Shift-Backspace |
Backspace

Sangrar la selección un tabulador Control-] blockindent

Quitar la sangría de la selección Control-[ blockoutdent


un tabulador

Controlar si el foco se puede Command-Z | Command- cancelBrowserUndoInAce


cambiar desde el editor a otra Shift-Z | Command-Y
parte en el IDE

Centrarse en la selección Control-L centerselection

Copiar el contenido de la línea y Command-Option-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Command-Option-Up copylinesup


pegarlo una línea por encima

Eliminar un espacio Delete | Control-Delete del


| Shift-Delete

Copiar el contenido de la Command-Shift-D duplicateSelection


selección y pegar el contenido

226
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando


copiado inmediatamente
después de la selección

Incluir el contenido de la línea Command-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Control-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado o, Command-Option-L | fold


si hay seleccionada una unidad Command-F1
plegada, desplegarla

Plegar todos los elementos Control-Command-Option-0 foldall


plegables

Plegar todos los elementos Command-Option-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down | Control-N golinedown

Subir una línea Up | Control-P golineup

Ir al final del archivo Command-End | Command- gotoend


Down

Ir un espacio a la izquierda Left | Control-B gotoleft

Ir al final de la línea actual Command-Right | End | gotolineend


Control-E

Ir al comienzo de la línea actual Command-Left | Home | gotolinestart


Control-A

Ir al siguiente error F4 goToNextError

Bajar una página Page Down | Control-V gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Shift-F4 goToPreviousError

Ir un espacio a la derecha Right | Control-F gotoright

Ir al principio del archivo Command-Home | Command- gotostart


Up

Ir una palabra a la izquierda Option-Left gotowordleft

Ir una palabra a la derecha Option-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Control-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Command-+ | Command-= largerfont

227
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Reducir el número a la izquierda Option-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Option-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Option-Down movelinesdown


hacia abajo

Mover la selección una línea Option-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Bajar una página Option-Page Down pagedown

Subir una página Option-Page Up pageup

Eliminar la línea actual Command-D removeline

Eliminar desde el cursor hasta el Control-K removetolineend


final de la línea actual

Eliminar desde el comienzo de la Command-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Option-Backspace | removewordleft


izquierda del cursor Control-Option-Backspace

Eliminar la palabra situada a la Option-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Command-Shift-E replaymacro


teclado previamente registradas

Seleccionar todo el contenido Command-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down | Control- selectdown


la selección Shift-N

Incluir el siguiente espacio a Shift-Left | Control- selectleft


la izquierda del cursor en la Shift-B
selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

228
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir más selecciones Control-Option-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Control-Option-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextAfter


coincidente que está después de Right
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextBefore


coincidente que está antes de la Left
selección

Seleccionar o buscar la siguiente Control-G selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Control-Shift-G selectOrFindPrevious


coincidente anterior

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Command-Shift-End | selecttoend


el final del archivo actual en la Command-Shift-Down
selección

Incluir desde el cursor hasta Command-Shift-Right | selecttolineend


el final de la línea actual en la Shift-End | Control-
selección Shift-E

Incluir desde el comienzo de la Command-Shift-Left | selecttolinestart


línea actual hasta el cursor en la Control-Shift-A
selección

Incluir desde el cursor hasta el Control-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Command-Shift-Home | selecttostart


comienzo del archivo actual en la Command-Shift-Up
selección

Incluir la línea siguiente arriba en Shift-Up | Control- selectup


la selección Shift-P

229
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir la siguiente palabra a Option-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Option-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Command-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Command-- smallerfont

Si se seleccionan varias líneas, Command-Option-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Control-Option-L splitIntoLines


línea actual

Mover el contenido del cursor Control-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Command-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Command-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Option-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Command-Option-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Control-W toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Control-Shift-U tolowercase


minúsculas

Poner la selección completa en Control-U touppercase


mayúsculas

Transponer la selección Control-T transposeletters

230
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Desplegar el código Command-Option-Shift-L | unfold


seleccionado Command-Shift-F1

Desplegar el plegado de código Command-Option-Shift-0 unfoldall


en todo el archivo

emmet
Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Command-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Control-Option-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Command-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Command-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Control-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal
Descripción Enlace de teclado Comando

Abrir una nueva pestaña Option-T openterminal


Terminal

Cambiar entre el editor y la Option-S switchterminal


pestaña Terminal

Ejecución y depuración
Descripción Enlace de teclado Comando

Compilar el archivo actual Command-B build

231
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado Emacs para MacOS

Descripción Enlace de teclado Comando

Reanudar el proceso actual en F8 | Command-\ resume


pausa

Ejecutar o depurar la aplicación Option-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 | Command-; stepinto


a la pila

Salir del ámbito de la función Shift-F11 | Command- stepout


actual Shift-'

Saltar la expresión actual en la F10 | Command-' stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Control-Shift-C stopbuild


archivo actual

Referencia de enlaces de teclado Emacs para


MacOS para el entorno de desarrollo integrado
(IDE) de AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado Emacs para los sistemas
operativos MacOS en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Emacs.
4. En Operating System (Sistema operativo), elija MacOS.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 233)


• Pestañas (p. 235)
• Paneles (p. 236)
• Editor de código (p. 237)
• emmet (p. 242)
• Terminal (p. 243)
• Ejecución y depuración (p. 243)

232
AWS Cloud9 Guía del usuario
Generales

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Command-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Control-Space | Option- complete


finalización de un código Space

Completar el código y luego Control-Shift-Space | completeoverwrite


sobrescribir Option-Shift-Space

Copiar la selección en el Command-C copy


portapapeles

Cortar la selección en el Command-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Command-F find


reemplazar en el documento
actual

Seleccionar todas las Control-Option-G findAll


coincidencias en el documento
actual

Ir a la siguiente coincidencia Command-G findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Command-Shift-G findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Command-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Command-L gotoline


línea)

233
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Command-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Control-N newfile

Mostrar la pestaña Preferences Command-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Command-Option-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Command-V paste


portapapeles en el cursor

Mostrar sugerencias para Command-F3 quickfix


corregir errores

Rehacer la última acción Command-Shift-Z | Command- redo


Y

Actualizar el panel de vista previa Command-Enter reloadpreview

Iniciar una refactorización de Option-Command-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Option-Command-F replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Volver a ejecutar el script de Command-Enter rerunInitScript


inicialización

Reiniciar el entorno Command-R restartc9

Restablecer la última versión Control-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Option-Shift-Q reverttosavedall


de cada archivo abierto

234
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Guardar el archivo actual en el Command-S save


disco

Guardar el archivo actual en el Command-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Shift-Command-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Command-Option-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Command-Z undo

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Option-Control-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Option-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Command-Control-W closepane

Cerrar la pestaña actual Option-W closetab

Bajar un panel Control-Command-Down gotopanedown

Ir un panel a la izquierda Control-Command-Left gotopaneleft

Ir un panel a la derecha Control-Command-Right gotopaneright

Ir un panel hacia arriba Control-Command-Up gottopaneup

Ir una pestaña a la izquierda Command-[ gototableft

Ir una pestaña a la derecha Command-] gototabright

Mover la pestaña actual un panel Command-Option-Shift- movetabdown


hacia abajo o, si la pestaña ya Down
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetableft


izquierda o, si la pestaña ya está Left
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetabright


derecha o, si la pestaña ya está Right
en la parte derecha, crear allí una
pestaña dividida

235
AWS Cloud9 Guía del usuario
Paneles

Descripción Enlace de teclado Comando

Mover la pestaña actual un panel Command-Option-Shift-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Option-Esc nextpane

Ir a la siguiente pestaña Option-Tab nexttab

Ir al panel anterior Option-Shift-Esc previouspane

Ir a la pestaña anterior Option-Shift-Tab previoustab

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Option-Shift-T reopenLastTab

Mostrar la pestaña actual en el Command-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Command-0 tab0

Ir a la primera pestaña Command-1 tab1

Ir a la segunda pestaña Command-2 tab2

Ir a la tercera pestaña Command-3 tab3

Ir a la cuarta pestaña Command-4 tab4

Ir a la quinta pestaña Command-5 tab5

Ir a la sexta pestaña Command-6 tab6

Ir a la séptima pestaña Command-7 tab7

Ir a la octava pestaña Command-8 tab8

Ir a la novena pestaña Command tab9

Paneles

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-E|Command-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Command-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Command-O gotofile


modo Go to File (Ir a archivo).

236
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Command-Shift-E outline


(Esquema)

Mostrar la ventana Console Control-Esc toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Command-U toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código

Descripción Enlace de teclado Comando

Añadir un cursor una línea por Control-Option-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Control-Option-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Control-Option-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Control-Option-Shift- addCursorBelowSkipCurrent


línea por debajo del cursor Down
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
debajo

Mover todos los cursores al Control-Option-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Control-Backspace backspace


| Shift-Backspace |
Backspace

Sangrar la selección un tabulador Control-] blockindent

237
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Quitar la sangría de la selección Control-[ blockoutdent


un tabulador

Controlar si el foco se puede Command-Z | Command- cancelBrowserUndoInAce


cambiar desde el editor a otra Shift-Z | Command-Y
parte en el IDE

Centrarse en la selección Control-L centerselection

Copiar el contenido de la línea y Command-Option-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Command-Option-Up copylinesup


pegarlo una línea por encima

Eliminar un espacio Delete | Control-Delete del


| Shift-Delete

Copiar el contenido de la Command-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Command-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Control-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Command-Option-L | fold


si hay seleccionada una unidad Command-F1
plegada, desplegarla

Plegar todos los elementos Control-Command-Option-0 foldall


plegables

Plegar todos los elementos Command-Option-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down | Control-N golinedown

Subir una línea Up | Control-P golineup

Ir al final del archivo Command-End | Command- gotoend


Down

Ir un espacio a la izquierda Left | Control-B gotoleft

Ir al final de la línea actual Command-Right | End | gotolineend


Control-E

Ir al comienzo de la línea actual Command-Left | Home | gotolinestart


Control-A

Ir al siguiente error F4 goToNextError

Bajar una página Page Down | Control-V gotopagedown

238
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Subir una página Page Up gotopageup

Ir al error anterior Shift-F4 goToPreviousError

Ir un espacio a la derecha Right | Control-F gotoright

Ir al principio del archivo Command-Home | Command- gotostart


Up

Ir una palabra a la izquierda Option-Left gotowordleft

Ir una palabra a la derecha Option-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Control-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Command-+ | Command-= largerfont

Reducir el número a la izquierda Option-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Option-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Option-Down movelinesdown


hacia abajo

Mover la selección una línea Option-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Bajar una página Option-Page Down pagedown

Subir una página Option-Page Up pageup

Eliminar la línea actual Command-D removeline

Eliminar desde el cursor hasta el Control-K removetolineend


final de la línea actual

Eliminar desde el comienzo de la Command-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Option-Backspace | removewordleft


izquierda del cursor Control-Option-Backspace

Eliminar la palabra situada a la Option-Delete removewordright


derecha del cursor

239
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Reproducir pulsaciones del Command-Shift-E replaymacro


teclado previamente registradas

Seleccionar todo el contenido Command-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down | Control- selectdown


la selección Shift-N

Incluir el siguiente espacio a Shift-Left | Control- selectleft


la izquierda del cursor en la Shift-B
selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Control-Option-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Control-Option-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextAfter


coincidente que está después de Right
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextBefore


coincidente que está antes de la Left
selección

Seleccionar o buscar la siguiente Control-G selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Control-Shift-G selectOrFindPrevious


coincidente anterior

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Command-Shift-End | selecttoend


el final del archivo actual en la Command-Shift-Down
selección

240
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta Command-Shift-Right | selecttolineend


el final de la línea actual en la Shift-End | Control-
selección Shift-E

Incluir desde el comienzo de la Command-Shift-Left | selecttolinestart


línea actual hasta el cursor en la Control-Shift-A
selección

Incluir desde el cursor hasta el Control-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Command-Shift-Home | selecttostart


comienzo del archivo actual en la Command-Shift-Up
selección

Incluir la línea siguiente arriba en Shift-Up | Control- selectup


la selección Shift-Up

Incluir la siguiente palabra a Option-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Option-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Command-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Command-- smallerfont

Si se seleccionan varias líneas, Command-Option-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Control-Option-L splitIntoLines


línea actual

Mover el contenido del cursor Control-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Command-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Command-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

241
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Plegar código principal o quitar el Option-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Command-Option-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Control-W toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner toda la selección en Control-Shift-U tolowercase


minúsculas

Poner toda la selección en Control-U touppercase


mayúsculas

Transponer selección Control-T transposeletters

Desplegar el código Command-Option-Shift-L | unfold


seleccionado Command-Shift-F1

Desplegar el plegado de código Command-Option-Shift-0 unfoldall


en todo el archivo

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Command-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Control-Option-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Command-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Command-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Control-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

242
AWS Cloud9 Guía del usuario
Terminal

Terminal
Descripción Enlace de teclado Comando

Abrir una nueva pestaña Option-T openterminal


Terminal

Cambiar entre el editor y la Option-S switchterminal


pestaña Terminal

Ejecución y depuración
Descripción Enlace de teclado Comando

Compilar el archivo actual Command-B build

Reanudar el proceso actual en F8 | Command-\ resume


pausa

Ejecutar o depurar la aplicación Option-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 | Command-; stepinto


a la pila

Salir del ámbito de la función Shift-F11 | Command- stepout


actual Shift-'

Saltar la expresión actual en la F10 | Command-' stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Control-Shift-C stopbuild


archivo actual

Referencia de enlaces de teclado Sublime para


MacOS para el entorno de desarrollo integrado
(IDE) de AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado Sublime para los
sistemas operativos MacOS en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).

243
AWS Cloud9 Guía del usuario
Generales

2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).


3. En Keyboard Mode (Modo de teclado), elija Sublime.
4. En Operating System (Sistema operativo), elija MacOS.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 244)


• Pestañas (p. 247)
• Paneles (p. 248)
• Editor de código (p. 249)
• emmet (p. 254)
• Terminal (p. 255)
• Ejecución y depuración (p. 255)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Command-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Control-Space | Option- complete


finalización de un código Space

Completar el código y luego Control-Shift-Space | completeoverwrite


sobrescribir Option-Shift-Space

Copiar la selección en el Command-C copy


portapapeles

Cortar la selección en el Command-X cut


portapapeles

Eliminar desde el cursor hasta el Command-K Command- delete_to_hard_bol


inicio de la línea Backspace | Command-
Backspace

Eliminar desde el cursor hasta el Command-K Command- delete_to_hard_eol


final de la línea K | Command-Delete |
Control-K

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Command-F find


reemplazar en el documento
actual

Resaltar todas las coincidencias Control-Command-G find_all_under


de la selección

244
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Resaltar la siguiente coincidencia Option-Command-G find_under


de la selección

Resaltar alrededor del cursor y Command-D find_under_expand


todas las correspondencias del
resaltado

Resaltar alrededor del cursor y Command-K Command-D find_under_expand_skip


crear un contorno de todas las
correspondencias del resaltado

Resaltar la correspondencia Shift-Option-Command-G find_under_previous


anterior de la selección

Seleccionar todas las Control-Option-G findAll


coincidencias en el documento
actual

Ir a la siguiente coincidencia Command-G findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Shift-Command-G findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Control-Option-F formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Control-G gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F12 | Command-Option- jumptodef


función en el cursor Down

Si hay una función de Lambda Command-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Ir al final de la palabra actual Option-Right moveToWordEndRight

245
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Ir al comienzo de la palabra Option-Left moveToWordStartLeft


actual

Crear un archivo nuevo Control-N newfile

Mostrar la pestaña Preferences Command-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Command-Option-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Command-V paste


portapapeles en el cursor

Mostrar sugerencias para Command-F3 quickfix


corregir errores

Rehacer la última acción Command-Shift-Z | Command- redo


Y

Actualizar el panel de vista previa Command-Enter reloadpreview

Iniciar una refactorización de Option-Command-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Command-Option-F replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Reemplazar todas las Control-Option-Enter replaceall


coincidencias de expresiones
encontradas por la expresión
indicada en la barra de buscar y
reemplazar

Reemplazar la siguiente Command-Option-E replacenext


coincidencia de expresión de
búsqueda por la expresión
indicada en la barra de buscar y
reemplazar

Volver a ejecutar el script de Command-Enter rerunInitScript


inicialización

Reiniciar el entorno Command-R restartc9

Restablecer la última versión Control-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Option-Shift-Q reverttosavedall


de cada archivo abierto

246
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Guardar el archivo actual en el Command-S save


disco

Guardar el archivo actual en el Command-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Command-Shift-F searchinfiles


reemplazar para varios archivos

Incluir desde el cursor hasta el Option-Shift-Right selectToWordEndRight


final de la palabra en la selección

Incluir desde el cursor hasta Option-Shift-Left selectToWordStartLeft


el principio de la palabra en la
selección

Mostrar el cuadro de diálogo Command-Option-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Command-Z undo

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Option-Control-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Option-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Command-Control-W closepane

Cerrar la pestaña actual Option-W closetab

Bajar un panel Control-Command-Down gotopanedown

Ir un panel a la izquierda Control-Command-Left gotopaneleft

Ir un panel a la derecha Control-Command-Right gotopaneright

Ir un panel hacia arriba Control-Command-Up gottopaneup

Ir una pestaña a la izquierda Command-Shift-[ | gototableft


Command-Option-Left

Ir una pestaña a la derecha Command-Shift-] | gototabright


Command-Option-Right

Mover la pestaña actual un panel Command-Option-Shift- movetabdown


hacia abajo o, si la pestaña ya Down
está en la parte inferior, crear allí
una pestaña dividida

247
AWS Cloud9 Guía del usuario
Paneles

Descripción Enlace de teclado Comando

Mover la pestaña actual a la Command-Option-Shift- movetableft


izquierda o, si la pestaña ya está Left
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Command-Option-Shift- movetabright


derecha o, si la pestaña ya está Right
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Command-Option-Shift-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir a la siguiente pestaña Control-Tab nexttab

Ir al panel anterior Option-Shift-Esc previouspane

Ir a la pestaña anterior Control-Shift-Tab previoustab

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Command-Shift-T reopenLastTab

Mostrar la pestaña actual en el Command-E revealtab


árbol de archivos

Ir a la décima pestaña Command-0 tab0

Ir a la primera pestaña Command-1 tab1

Ir a la segunda pestaña Command-2 tab2

Ir a la tercera pestaña Command-3 tab3

Ir a la cuarta pestaña Command-4 tab4

Ir a la quinta pestaña Command-5 tab5

Ir a la sexta pestaña Command-6 tab6

Ir a la séptima pestaña Command-7 tab7

Ir a la octava pestaña Command-8 tab8

Ir a la novena pestaña Command tab9

Paneles

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-E|Command-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

248
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Command-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Command-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Command-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Command-Shift-R outline


(Esquema)

Mostrar la ventana Console Control-` toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Command-K Command-B toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código

Descripción Enlace de teclado Comando

Añadir un cursor una línea por Control-Shift-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Control-Option-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Control-Shift-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Control-Option-Shift- addCursorBelowSkipCurrent


línea por debajo del cursor Down
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
debajo

Mover todos los cursores al Control-Option-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

249
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Retroceder un espacio Control-Backspace backspace


| Shift-Backspace |
Backspace

Aplicar sangría de un tabulador a Control-] blockindent


la selección

Quitar la sangría de la selección Control-[ blockoutdent


un tabulador

Controlar si el foco se puede Command-Z | Command- cancelBrowserUndoInAce


cambiar desde el editor a otra Shift-Z | Command-Y
parte en el IDE

Centrarse en la selección Command-K Command-C | centerselection


Control-L

Copiar el contenido de la línea y Command-Option-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Command-Option-Up copylinesup


pegarlo una línea por encima

Eliminar un espacio Delete | Control-Delete del


| Shift-Delete

Copiar el contenido de la Command-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Command-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Control-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Command-Option-L | fold


si hay seleccionada una unidad Command-F1
plegada, desplegarla

Plegar todos los elementos Control-Command-Option-0 foldall


plegables

Plegar todos los elementos Command-K Command-1 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down | Control-N golinedown

Subir una línea Up | Control-P golineup

Ir al final del archivo Command-End | Command- gotoend


Down

Ir un espacio a la izquierda Left | Control-B gotoleft

250
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Ir al final de la línea actual Command-Right | End | gotolineend


Control-E

Ir al comienzo de la línea actual Command-Left | Home | gotolinestart


Control-A

Ir al siguiente error Control-F6 goToNextError

Bajar una página Page Down | Control-V gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Control-Shift-F6 goToPreviousError

Ir un espacio a la derecha Right | Control-F gotoright

Ir al principio del archivo Command-Home | Command- gotostart


Up

Ir una palabra a la izquierda Option-Left gotowordleft

Ir una palabra a la derecha Option-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Combinar las líneas Command-J joinlines


seleccionadas en una sola línea

Ir al símbolo coincidente en el Control-M jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Command-= | Command-+ largerfont

Reducir el número a la izquierda Option-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Option-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Control-Command-Down movelinesdown


hacia abajo

Mover la selección una línea Control-Command-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Bajar una página Option-Page Down pagedown

Subir una página Option-Page Up pageup

251
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Eliminar el contenido de la línea Control-Shift-K removeline


actual

Eliminar desde el cursor hasta el Control-K removetolineend


final de la línea actual

Eliminar desde el comienzo de la Command-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Option-Backspace | removewordleft


izquierda del cursor Control-Option-Backspace

Eliminar la palabra situada a la Option-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Control-Shift-Q replaymacro


teclado previamente registradas

Seleccionar todo el contenido Command-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down | Control- selectdown


la selección Shift-N

Incluir el siguiente espacio a Shift-Left | Control- selectleft


la izquierda del cursor en la Shift-B
selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Control-Option-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Control-Option-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextAfter


coincidente que está después de Right
la selección

Incluir la siguiente selección Control-Option-Shift- selectNextBefore


coincidente que está antes de la Left
selección

Seleccionar o buscar la siguiente Control-G selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Control-Shift-G selectOrFindPrevious


coincidente anterior

252
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Command-Shift-End | selecttoend


el final del archivo actual en la Command-Shift-Down
selección

Incluir desde el cursor hasta Command-Shift-Right | selecttolineend


el final de la línea actual en la Shift-End | Control-
selección Shift-E

Incluir desde el comienzo de la Command-Shift-Left | selecttolinestart


línea actual hasta el cursor en la Control-Shift-A
selección

Incluir desde el cursor hasta el Control-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Command-Shift-Home | selecttostart


comienzo del archivo actual en la Command-Shift-Up
selección

Incluir la línea siguiente arriba en Shift-Up | Control- selectup


la selección Shift-P

Incluir la siguiente palabra a Option-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Option-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Command-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Command-- smallerfont

Si se seleccionan varias líneas, F5 sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Command-Shift-L splitIntoLines


línea actual

253
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Mover el contenido del cursor Control-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Command-Option-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Command-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado Command-Option-[ toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Option-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Control-Q togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Control-W toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Command-K Command-L tolowercase


minúsculas

Poner la selección completa en Command-K Command-U touppercase


mayúsculas

Transponer la selección Control-T transposeletters

Desplegar el código Command-Option-] unfold


seleccionado

Desplegar el plegado de código Command-K Command-0 | unfoldall


en todo el archivo Command-K Command-J

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Command-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Control-Option-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

254
AWS Cloud9 Guía del usuario
Terminal

Descripción Enlace de teclado Comando

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Command-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Command-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Control-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal
Descripción Enlace de teclado Comando

Abrir una nueva pestaña Option-T openterminal


Terminal

Cambiar entre el editor y la Option-S switchterminal


pestaña Terminal

Ejecución y depuración
Descripción Enlace de teclado Comando

Compilar el archivo actual F7 | Command-B build

Reanudar el proceso actual en F8 | Command-\ resume


pausa

Ejecutar o depurar la aplicación Command-Shift-B run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 | Command-; stepinto


a la pila

Salir del ámbito de la función Shift-F11 | Command- stepout


actual Shift-'

Saltar la expresión actual en la F10 | Command-' stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

255
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado
predeterminados para Windows/Linux

Descripción Enlace de teclado Comando

Detener la compilación del Control-Break stopbuild


archivo actual

Referencia de enlaces de teclado predeterminados


para Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado predeterminado para los
sistemas operativos Windows/Linux en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Default (Predeterminado).
4. En Operating System (Sistema operativo), elija Windows / Linux.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 256)


• Pestañas (p. 259)
• Paneles (p. 260)
• Editor de código (p. 261)
• emmet (p. 266)
• Terminal (p. 266)
• Ejecución y depuración (p. 267)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Ctrl-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Ctrl-Space | Alt-Space complete


finalización de un código

Completar el código y luego Ctrl-Shift-Space | Alt- completeoverwrite


sobrescribir Shift-Space

Copiar la selección en el Ctrl-C copy


portapapeles

256
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Cortar la selección en el Ctrl-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Ctrl-F find


reemplazar en el documento
actual

Seleccionar todas las Ctrl-Alt-K findall


coincidencias en el documento
actual

Ir a la siguiente coincidencia Ctrl-K findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Ctrl-Shift-K findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Ctrl-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Ctrl-G gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Ctrl-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Alt-N newfile

Mostrar la pestaña Preferences Ctrl-, openpreferences


(Preferencias)

257
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Abrir una pestaña Terminal Alt-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Ctrl-V paste


portapapeles en el cursor

Mostrar sugerencias para Ctrl-F3 quickfix


corregir errores

Rehacer la última acción Ctrl-Shift-Z | Ctrl-Y redo

Actualizar el panel de vista previa Ctrl-Enter reloadpreview

Iniciar una refactorización de Ctrl-Alt-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Alt-Shift-F | Ctrl-H replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(Reemplazar por)

Volver a ejecutar el script de Ctrl-Enter rerunInitScript


inicialización

Reiniciar el entorno Ctrl-R restartc9

Restablecer la última versión Ctrl-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Alt-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Ctrl-S save


disco

Guardar el archivo actual en el Ctrl-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Ctrl-Shift-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Ctrl-Alt-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Ctrl-Z undo

258
AWS Cloud9 Guía del usuario
Pestañas

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Ctrl-Alt-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Alt-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Ctrl-W closepane

Cerrar la pestaña actual Alt-W closetab

Bajar un panel Ctrl-Meta-Down gotopanedown

Ir un panel a la izquierda Ctrl-Meta-Left gotopaneleft

Ir un panel a la derecha Ctrl-Meta-Right gotopaneright

Ir un panel hacia arriba Ctrl-Meta-Up gottopaneup

Ir una pestaña a la izquierda Ctrl-[ gototableft

Ir una pestaña a la derecha Ctrl-] gototabright

Mover la pestaña actual un panel Ctrl-Meta-Down movetabdown


hacia abajo o, si la pestaña ya
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Left movetableft


izquierda o, si la pestaña ya está
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Right movetabright


derecha o, si la pestaña ya está
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Ctrl-Meta-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Ctrl-` nextpane

Ir a la siguiente pestaña Ctrl-Tab | Alt-` nexttab

Ir al panel anterior Ctrl-Shift-` previouspane

Ir a la pestaña anterior Ctrl-Shift-Tab | Alt- previoustab


Shift-`

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Alt-Shift-T reopenLastTab

259
AWS Cloud9 Guía del usuario
Paneles

Descripción Enlace de teclado Comando

Mostrar la pestaña actual en el Ctrl-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Ctrl-0 tab0

Ir a la primera pestaña Ctrl-1 tab1

Ir a la segunda pestaña Ctrl-2 tab2

Ir a la tercera pestaña Ctrl-3 tab3

Ir a la cuarta pestaña Ctrl-4 tab4

Ir a la quinta pestaña Ctrl-5 tab5

Ir a la sexta pestaña Ctrl-6 tab6

Ir a la séptima pestaña Ctrl-7 tab7

Ir a la octava pestaña Ctrl-8 tab8

Ir a la novena pestaña Ctrl-9 tab9

Paneles

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Ctrl-E|Ctrl-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir)en Ctrl-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Ctrl-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Ctrl-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Ctrl-Shift-E outline


(Esquema)

Mostrar la ventana Console F6 toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Ctrl-I toggletree


(Entorno) si está oculta u
ocultarla si se muestra

260
AWS Cloud9 Guía del usuario
Editor de código

Editor de código

Descripción Enlace de teclado Comando

Añadir un cursor una línea por Ctrl-Alt-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Ctrl-Alt-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Down addCursorBelowSkipCurrent


línea por debajo del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
debajo

Mover todos los cursores al Ctrl-Alt-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Shift-Backspace | backspace


Backspace

Aplicar sangría de un tabulador a Ctrl-] blockindent


la selección

Quitar la sangría de la selección Ctrl-[ blockoutdent


un tabulador

Controlar si el foco se puede Ctrl-Z | Ctrl-Shift-Z | cancelBrowserUndoInAce


cambiar desde el editor a otra Ctrl-Y
parte en el IDE

Centrarse en la selección Ctrl-L centerselection

Copiar el contenido de la línea y Alt-Shift-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Alt-Shift-Up copylinesup


pegarlo una línea por encima

Cortar la selección, o si no hay Shift-Delete cut_or_delete


ninguna selección, eliminar un
espacio

261
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Eliminar un espacio Delete del

Copiar el contenido de la Ctrl-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Ctrl-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Ctrl-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Alt-L | Ctrl-F1 fold


si hay seleccionada una unidad
plegada, desplegarla

Plegar todos los elementos Ctrl-Command-Option-0 foldall


plegables

Plegar todos los elementos Alt-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down golinedown

Subir una línea Up golineup

Ir al final del archivo Ctrl-End gotoend

Ir un espacio a la izquierda Left gotoleft

Ir al final de la línea actual Alt-Right | End gotolineend

Ir al comienzo de la línea actual Alt-Left | Home gotolinestart

Ir al siguiente error Alt-E goToNextError

Bajar una página Page Down gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Alt-Shift-E goToPreviousError

Ir un espacio a la derecha Right gotoright

Ir al principio del archivo Ctrl-Home gotostart

Ir una palabra a la izquierda Ctrl-Left gotowordleft

Ir una palabra a la derecha Ctrl-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Ctrl-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Ctrl-+ | Ctrl-= largerfont

262
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Reducir el número a la izquierda Ctrl-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Ctrl-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Alt-Down movelinesdown


hacia abajo

Mover la selección una línea Alt-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Bajar una página Option-Page Down pagedown

Subir una página Option-Page Up pageup

Eliminar el contenido de la línea Ctrl-D removeline


actual

Eliminar desde el cursor hasta el Alt-Delete removetolineend


final de la línea actual

Eliminar desde el comienzo de la Alt-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Ctrl-Backspace removewordleft


izquierda del cursor

Eliminar la palabra situada a la Ctrl-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Ctrl-Shift-E replaymacro


teclado previamente registradas

Desplazarse hacia abajo en el Ctrl-Down scrolldown


archivo actual una línea

Desplazarse hacia arriba en el Ctrl-Up scrollup


archivo actual una línea

Seleccionar todo el contenido Ctrl-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down selectdown


la selección

Incluir el siguiente espacio a Shift-Left selectleft


la izquierda del cursor en la
selección

263
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Ctrl-Alt-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Ctrl-Alt-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Right selectNextAfter


coincidente que está después de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Left selectNextBefore


coincidente que está antes de la
selección

Seleccionar o buscar la siguiente Alt-K selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Alt-Shift-K selectOrFindPrevious


coincidente anterior

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Ctrl-Shift-End selecttoend


el final del archivo actual en la
selección

Incluir desde el cursor hasta Alt-Shift-Right selecttolineend


el final de la línea actual en la
selección

Incluir desde el comienzo de la Alt-Shift-Left selecttolinestart


línea actual hasta el cursor en la
selección

Incluir desde el cursor hasta el Ctrl-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

264
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta el Ctrl-Shift-Home selecttostart


comienzo del archivo actual en la
selección

Incluir la línea siguiente arriba en Shift-Up selectup


la selección

Incluir la siguiente palabra a Ctrl-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Ctrl-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Ctrl-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Ctrl-- smallerfont

Si se seleccionan varias líneas, Ctrl-Alt-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Ctrl-Alt-L splitIntoLines


línea actual

Mover el contenido del cursor Ctrl-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Ctrl-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Ctrl-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Alt-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Ctrl-Alt-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Ctrl-Q toggleWordWrap


ajuste de palabras si ya se están
ajustando

265
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Poner la selección completa en Ctrl-Shift-U tolowercase


minúsculas

Poner la selección completa en Ctrl-U touppercase


mayúsculas

Transponer la selección Alt-X transposeletters

Desplegar el código Alt-Shift-L | Ctrl- unfold


seleccionado Shift-F1

Desplegar el plegado de código Alt-Shift-0 unfoldall


en todo el archivo

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Ctrl-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Ctrl-Alt-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Ctrl-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Ctrl-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Ctrl-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal

Descripción Enlace de teclado Comando

Abrir una nueva pestaña Alt-T openterminal


Terminal

Cambiar entre el editor y la Alt-S switchterminal


pestaña Terminal

266
AWS Cloud9 Guía del usuario
Ejecución y depuración

Ejecución y depuración

Descripción Enlace de teclado Comando

Compilar el archivo actual Ctrl-B build

Reanudar el proceso actual en F8 resume


pausa

Ejecutar o depurar la aplicación Alt-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 stepinto


a la pila

Salir del ámbito de la función Shift-F11 stepout


actual

Saltar la expresión actual en la F10 stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Ctrl-Shift-C stopbuild


archivo actual

Referencia de enlaces de teclado Vim para


Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9
A continuación se ofrece una lista de los enlaces de teclado del modo de teclado Vim para los sistemas
operativos Windows/Linux en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Vim.
4. En Operating System (Sistema operativo), elija Windows / Linux.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 268)


• Pestañas (p. 270)
• Paneles (p. 271)

267
AWS Cloud9 Guía del usuario
Generales

• Editor de código (p. 272)


• emmet (p. 277)
• Terminal (p. 278)
• Ejecución y depuración (p. 278)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Ctrl-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Ctrl-Space | Alt-Space complete


finalización de un código

Completar el código y luego Ctrl-Shift-Space | Alt- completeoverwrite


sobrescribir Shift-Space

Copiar la selección en el Ctrl-C copy


portapapeles

Cortar la selección en el Ctrl-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Ctrl-F find


reemplazar en el documento
actual

Seleccionar todas las Ctrl-Alt-K findall


coincidencias en el documento
actual

Ir a la siguiente coincidencia Ctrl-K findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Ctrl-Shift-K findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

268
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Volver a formatear el código Ctrl-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Ctrl-G gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Ctrl-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Alt-N newfile

Mostrar la pestaña Preferences Ctrl-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Alt-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Ctrl-V paste


portapapeles en el cursor

Mostrar sugerencias para Ctrl-F3 quickfix


corregir errores

Rehacer la última acción Ctrl-Shift-Z | Ctrl-Y redo

Actualizar el panel de vista previa Ctrl-Enter reloadpreview

Iniciar una refactorización de Ctrl-Alt-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Alt-Shift-F | Ctrl-H replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Volver a ejecutar el script de Ctrl-Enter rerunInitScript


inicialización

Reiniciar el entorno Ctrl-R restartc9

Restablecer la última versión Ctrl-Shift-Q reverttosaved


guardada del archivo actual

269
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Restablecer la versión guardada Alt-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Ctrl-S save


disco

Guardar el archivo actual en el Ctrl-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Ctrl-Shift-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Ctrl-Alt-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Ctrl-Z undo

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Ctrl-Alt-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Alt-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Ctrl-W closepane

Cerrar la pestaña actual Alt-W closetab

Bajar un panel Ctrl-Meta-Down gotopanedown

Ir un panel a la izquierda Ctrl-Meta-Left gotopaneleft

Ir un panel a la derecha Ctrl-Meta-Right gotopaneright

Ir un panel hacia arriba Ctrl-Meta-Up gottopaneup

Ir una pestaña a la izquierda Ctrl-[ gototableft

Ir una pestaña a la derecha Ctrl-] gototabright

Mover la pestaña actual un panel Ctrl-Meta-Down movetabdown


hacia abajo o, si la pestaña ya
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Left movetableft


izquierda o, si la pestaña ya está
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Right movetabright


derecha o, si la pestaña ya está

270
AWS Cloud9 Guía del usuario
Paneles

Descripción Enlace de teclado Comando


en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Ctrl-Meta-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Ctrl-` nextpane

Ir a la siguiente pestaña Ctrl-Tab | Alt-` nexttab

Ir al panel anterior Ctrl-Shift-` previouspane

Ir a la pestaña anterior Ctrl-Shift-Tab | Alt- previoustab


Shift-`

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Alt-Shift-T reopenLastTab

Mostrar la pestaña actual en el Ctrl-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Ctrl-0 tab0

Ir a la primera pestaña Ctrl-1 tab1

Ir a la segunda pestaña Ctrl-2 tab2

Ir a la tercera pestaña Ctrl-3 tab3

Ir a la cuarta pestaña Ctrl-4 tab4

Ir a la quinta pestaña Ctrl-5 tab5

Ir a la sexta pestaña Ctrl-6 tab6

Ir a la séptima pestaña Ctrl-7 tab7

Ir a la octava pestaña Ctrl-8 tab8

Ir a la novena pestaña Ctrl-9 tab9

Paneles

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Ctrl-E|Ctrl-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Ctrl-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

271
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en el Ctrl-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Ctrl-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Ctrl-Shift-E outline


(Esquema)

Mostrar la ventana Console F6 toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Ctrl-I toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código

Descripción Enlace de teclado Comando

Añadir un cursor una línea por Ctrl-Alt-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Ctrl-Alt-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Down addCursorBelowSkipCurrent


línea por debajo del cursor
activo, o, si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
debajo

Mover todos los cursores al Ctrl-Alt-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Shift-Backspace | backspace


Backspace

272
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Aplicar sangría de un tabulador a Ctrl-] blockindent


la selección

Quitar la sangría de la selección Ctrl-[ blockoutdent


un tabulador

Controlar si el foco se puede Ctrl-Z | Ctrl-Shift-Z | cancelBrowserUndoInAce


cambiar desde el editor a otra Ctrl-Y
parte en el IDE

Copiar el contenido de la línea y Alt-Shift-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Alt-Shift-Up copylinesup


pegarlo una línea por encima

Corte la selección. Si no hay Shift-Delete cut_or_delete


ninguna selección, elimine un
espacio

Eliminar un espacio Delete del

Copiar el contenido de la Ctrl-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Ctrl-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Ctrl-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Alt-L | Ctrl-F1 fold


si hay seleccionada una unidad
plegada, desplegarla

Plegar todos los elementos Alt-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down golinedown

Subir una línea Up golineup

Ir al final del archivo Ctrl-End gotoend

Ir un espacio a la izquierda Left gotoleft

Ir al final de la línea actual Alt-Right | End gotolineend

Ir al comienzo de la línea actual Alt-Left | Home gotolinestart

Ir al siguiente error Alt-E goToNextError

Bajar una página Page Down gotopagedown

Subir una página Page Up gotopageup

273
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Ir al error anterior Alt-Shift-E goToPreviousError

Ir un espacio a la derecha Right gotoright

Ir al principio del archivo Ctrl-Home gotostart

Ir una palabra a la izquierda Ctrl-Left gotowordleft

Ir una palabra a la derecha Ctrl-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Ctrl-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Ctrl-+ | Ctrl-= largerfont

Reducir el número a la izquierda Ctrl-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Ctrl-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Alt-Down movelinesdown


hacia abajo

Mover la selección una línea Alt-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Eliminar el contenido de la línea Ctrl-D removeline


actual

Eliminar desde el cursor hasta el Alt-Delete removetolineend


final de la línea actual

Eliminar desde el comienzo de la Alt-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Ctrl-Backspace removewordleft


izquierda del cursor

Eliminar la palabra situada a la Ctrl-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Ctrl-Shift-E replaymacro


teclado previamente registradas

Desplazarse hacia abajo en el Ctrl-Down scrolldown


archivo actual una línea

274
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Desplazarse hacia arriba en el Ctrl-Up scrollup


archivo actual una línea

Seleccionar todo el contenido Ctrl-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down selectdown


la selección

Incluir el siguiente espacio a Shift-Left selectleft


la izquierda del cursor en la
selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Ctrl-Alt-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Ctrl-Alt-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Right selectNextAfter


coincidente que está después de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Left selectNextBefore


coincidente que está antes de la
selección

Seleccionar o buscar la siguiente Alt-K selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Alt-Shift-K selectOrFindPrevious


coincidente anterior

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Ctrl-Shift-End selecttoend


el final del archivo actual en la
selección

275
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta Alt-Shift-Right selecttolineend


el final de la línea actual en la
selección

Incluir desde el comienzo de la Alt-Shift-Left selecttolinestart


línea actual hasta el cursor en la
selección

Incluir desde el cursor hasta el Ctrl-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Ctrl-Shift-Home selecttostart


comienzo del archivo actual en la
selección

Incluir la línea siguiente arriba en Shift-Up selectup


la selección

Incluir la siguiente palabra a Ctrl-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Ctrl-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Ctrl-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Ctrl-- smallerfont

Si se seleccionan varias líneas, Ctrl-Alt-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Ctrl-Alt-L splitIntoLines


línea actual

Rodear la selección con Ctrl-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Ctrl-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Alt-F2 toggleParentFoldWidget


plegado si lo está

276
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Comenzar la grabación de la Ctrl-Alt-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Ctrl-Q toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Ctrl-Shift-U tolowercase


minúsculas

Poner la selección completa en Ctrl-U touppercase


mayúsculas

Transponer la selección Alt-X transposeletters

Desplegar el código Alt-Shift-L | Ctrl- unfold


seleccionado Shift-F1

Desplegar el plegado de código Alt-Shift-0 unfoldall


en todo el archivo

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Ctrl-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Ctrl-Alt-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Ctrl-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Ctrl-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Ctrl-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

277
AWS Cloud9 Guía del usuario
Terminal

Terminal
Descripción Enlace de teclado Comando

Abrir una nueva pestaña Alt-T openterminal


Terminal

Cambiar entre el editor y la Alt-S switchterminal


pestaña Terminal

Ejecución y depuración
Descripción Enlace de teclado Comando

Compilar el archivo actual Ctrl-B build

Reanudar el proceso actual en F8 resume


pausa

Ejecutar o depurar la aplicación Alt-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 stepinto


a la pila

Salir del ámbito de la función Shift-F11 stepout


actual

Saltar la expresión actual en la F10 stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Ctrl-Shift-C stopbuild


archivo actual

Referencia de enlaces de teclado Emacs para


Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9
A continuación se ofrece una lista de los enlaces de teclado del modo de teclado Emacs para los sistemas
operativos Windows/Linux en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).

278
AWS Cloud9 Guía del usuario
Generales

2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).


3. En Keyboard Mode (Modo de teclado), elija Emacs.
4. En Operating System (Sistema operativo), elija Windows / Linux.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 279)


• Pestañas (p. 281)
• Paneles (p. 283)
• Editor de código (p. 283)
• emmet (p. 288)
• Terminal (p. 289)
• Ejecución y depuración (p. 289)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Ctrl-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Ctrl-Space | Alt-Space complete


finalización de un código

Completar el código y luego Ctrl-Shift-Space | Alt- completeoverwrite


sobrescribir Shift-Space

Copiar la selección en el Ctrl-C copy


portapapeles

Cortar la selección en el Ctrl-X cut


portapapeles

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Ctrl-F find


reemplazar en el documento
actual

Seleccionar todas las Ctrl-Alt-K findall


coincidencias en el documento
actual

Ir a la siguiente coincidencia Ctrl-K findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Ctrl-Shift-K findprevious


en el documento actual de la

279
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando


consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Ctrl-Shift-B formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Ctrl-G gotoline


línea)

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F3 jumptodef


función en el cursor

Si hay una función de Lambda Ctrl-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Crear un archivo nuevo Alt-N newfile

Mostrar la pestaña Preferences Ctrl-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Alt-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Ctrl-V paste


portapapeles en el cursor

Mostrar sugerencias para Ctrl-F3 quickfix


corregir errores

Rehacer la última acción Ctrl-Shift-Z | Ctrl-Y redo

Actualizar el panel de vista previa Ctrl-Enter reloadpreview

Iniciar una refactorización de Ctrl-Alt-R renameVar


cambio de nombre para la
selección

280
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Abrir la barra de búsqueda y Alt-Shift-F | Ctrl-H replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Volver a ejecutar el script de Ctrl-Enter rerunInitScript


inicialización

Reiniciar el entorno Ctrl-R restartc9

Restablecer la última versión Ctrl-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Alt-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Ctrl-S save


disco

Guardar el archivo actual en el Ctrl-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Ctrl-Shift-F searchinfiles


reemplazar para varios archivos

Mostrar el cuadro de diálogo Ctrl-Alt-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Ctrl-Z undo

Pestañas

Descripción Enlace de teclado Comando

Cerrar todas las pestañas Ctrl-Alt-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Alt-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Ctrl-W closepane

Cerrar la pestaña actual Alt-W closetab

Bajar un panel Ctrl-Meta-Down gotopanedown

Ir un panel a la izquierda Ctrl-Meta-Left gotopaneleft

Ir un panel a la derecha Ctrl-Meta-Right gotopaneright

Ir un panel hacia arriba Ctrl-Meta-Up gottopaneup

Ir una pestaña a la izquierda Ctrl-[ gototableft

281
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Ir una pestaña a la derecha Ctrl-] gototabright

Mover la pestaña actual un panel Ctrl-Meta-Down movetabdown


hacia abajo o, si la pestaña ya
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Left movetableft


izquierda o, si la pestaña ya está
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Right movetabright


derecha o, si la pestaña ya está
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Ctrl-Meta-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir al siguiente panel Ctrl-` nextpane

Ir a la siguiente pestaña Ctrl-Tab | Alt-` nexttab

Ir al panel anterior Ctrl-Shift-` previouspane

Ir a la pestaña anterior Ctrl-Shift-Tab | Alt- previoustab


Shift-`

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Alt-Shift-T reopenLastTab

Mostrar la pestaña actual en el Ctrl-Shift-L revealtab


árbol de archivos

Ir a la décima pestaña Ctrl-0 tab0

Ir a la primera pestaña Ctrl-1 tab1

Ir a la segunda pestaña Ctrl-2 tab2

Ir a la tercera pestaña Ctrl-3 tab3

Ir a la cuarta pestaña Ctrl-4 tab4

Ir a la quinta pestaña Ctrl-5 tab5

Ir a la sexta pestaña Ctrl-6 tab6

Ir a la séptima pestaña Ctrl-7 tab7

Ir a la octava pestaña Ctrl-8 tab8

Ir a la novena pestaña Ctrl-9 tab9

282
AWS Cloud9 Guía del usuario
Paneles

Paneles
Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Ctrl-E|Ctrl-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Ctrl-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Ctrl-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Ctrl-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Ctrl-Shift-E outline


(Esquema)

Mostrar la ventana Console F6 toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Ctrl-I toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código
Descripción Enlace de teclado Comando

Añadir un cursor una línea por Ctrl-Alt-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Ctrl-Alt-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Down addCursorBelowSkipCurrent


línea por debajo del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el

283
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando


segundo cursor una línea por
debajo

Mover todos los cursores al Ctrl-Alt-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Shift-Backspace | backspace


Backspace

Aplicar sangría de un tabulador a Ctrl-] blockindent


la selección

Quitar la sangría de la selección Ctrl-[ blockoutdent


un tabulador

Controlar si el foco se puede Ctrl-Z | Ctrl-Shift-Z | cancelBrowserUndoInAce


cambiar desde el editor a otra Ctrl-Y
parte en el IDE

Copiar el contenido de la línea y Alt-Shift-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Alt-Shift-Up copylinesup


pegarlo una línea por encima

Cortar la selección, o si no hay Shift-Delete cut_or_delete


ninguna selección, eliminar un
espacio

Eliminar un espacio Delete del

Copiar el contenido de la Ctrl-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Ctrl-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Ctrl-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Alt-L | Ctrl-F1 fold


si hay seleccionada una unidad
plegada, desplegarla

Plegar todos los elementos Alt-0 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down golinedown

Subir una línea Up golineup

Ir al final del archivo Ctrl-End gotoend

Ir un espacio a la izquierda Left gotoleft

284
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Ir al final de la línea actual Alt-Right | End gotolineend

Ir al comienzo de la línea actual Alt-Left | Home gotolinestart

Ir al siguiente error Alt-E goToNextError

Bajar una página Page Down gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Alt-Shift-E goToPreviousError

Ir un espacio a la derecha Right gotoright

Ir al principio del archivo Ctrl-Home gotostart

Ir una palabra a la izquierda Ctrl-Left gotowordleft

Ir una palabra a la derecha Ctrl-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Ir al símbolo coincidente en el Ctrl-P jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Ctrl-+ | Ctrl-= largerfont

Reducir el número a la izquierda Ctrl-Shift-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Ctrl-Shift-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Alt-Down movelinesdown


hacia abajo

Mover la selección una línea Alt-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Eliminar el contenido de la línea Ctrl-D removeline


actual

Eliminar desde el cursor hasta el Alt-Delete removetolineend


final de la línea actual

Eliminar desde el comienzo de la Alt-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Ctrl-Backspace removewordleft


izquierda del cursor

285
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Eliminar la palabra situada a la Ctrl-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Ctrl-Shift-E replaymacro


teclado previamente registradas

Desplazarse hacia abajo en el Ctrl-Down scrolldown


archivo actual una línea

Desplazarse hacia arriba en el Ctrl-Up scrollup


archivo actual una línea

Seleccionar todo el contenido Ctrl-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down selectdown


la selección

Incluir el siguiente espacio a la Shift-Left selectleft


izquierda en la selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Ctrl-Alt-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Ctrl-Alt-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Right selectNextAfter


coincidente que está después de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Left selectNextBefore


coincidente que está antes de la
selección

Seleccionar o buscar la siguiente Alt-K selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Alt-Shift-K selectOrFindPrevious


coincidente anterior

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

286
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Ctrl-Shift-End selecttoend


el final del archivo actual en la
selección

Incluir desde el cursor hasta Alt-Shift-Right selecttolineend


el final de la línea actual en la
selección

Incluir desde el comienzo de la Alt-Shift-Left selecttolinestart


línea actual hasta el cursor en la
selección

Incluir desde el cursor hasta el Ctrl-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Ctrl-Shift-Home selecttostart


comienzo del archivo actual en la
selección

Incluir la línea siguiente arriba en Shift-Up selectup


la selección

Incluir la siguiente palabra a Ctrl-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Ctrl-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Ctrl-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Ctrl-- smallerfont

Si se seleccionan varias líneas, Ctrl-Alt-S sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Ctrl-Alt-L splitIntoLines


línea actual

Mover el contenido del cursor Ctrl-O splitline


al final de la línea, a una línea
propia

Rodear la selección con Ctrl-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

287
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Añadir caracteres de comentario Ctrl-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado F2 toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Alt-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Ctrl-Alt-E togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Ctrl-Q toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Ctrl-Shift-U tolowercase


minúsculas

Poner la selección completa en Ctrl-U touppercase


mayúsculas

Transponer la selección Alt-X transposeletters

Desplegar el código Alt-Shift-L | Ctrl- unfold


seleccionado Shift-F1

Desplegar el plegado de código Alt-Shift-0 unfoldall


en todo el archivo

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Ctrl-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Ctrl-Alt-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

Ir a la siguiente parte del código Shift-Ctrl-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Ctrl-, emmet_select_previous_item


anterior

288
AWS Cloud9 Guía del usuario
Terminal

Descripción Enlace de teclado Comando

Expandir una abreviatura y, a Shift-Ctrl-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal

Descripción Enlace de teclado Comando

Abrir una nueva pestaña Alt-T openterminal


Terminal

Cambiar entre el editor y la Alt-S switchterminal


pestaña Terminal

Ejecución y depuración

Descripción Enlace de teclado Comando

Compilar el archivo actual Ctrl-B build

Reanudar el proceso actual en F8 resume


pausa

Ejecutar o depurar la aplicación Alt-F5 run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 stepinto


a la pila

Salir del ámbito de la función Shift-F11 stepout


actual

Saltar la expresión actual en la F10 stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Ctrl-Shift-C stopbuild


archivo actual

289
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado
Sublime para Windows/Linux

Referencia de enlaces de teclado Sublime para


Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9
A continuación, se ofrece una lista de los enlaces de teclado del modo de teclado Sublime para los
sistemas operativos Windows/Linux en el IDE de AWS Cloud9.

Para obtener más información, en el IDE de AWS Cloud9:

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), elija Keybindings (Enlaces de teclado).
3. En Keyboard Mode (Modo de teclado), elija Sublime.
4. En Operating System (Sistema operativo), elija Windows / Linux.

Consulte también Trabajo con enlaces de teclado (p. 205).

• Generales (p. 290)


• Pestañas (p. 293)
• Paneles (p. 295)
• Editor de código (p. 295)
• emmet (p. 300)
• Terminal (p. 301)
• Ejecución y depuración (p. 301)

Generales

Descripción Enlace de teclado Comando

Añadir la selección como una Ctrl-Shift-C addwatchfromselection


expresión de inspección

Eliminar la selección de corte del Esc clearcut


portapapeles

Mostrar el menú contextual de Ctrl-Space complete


finalización de un código

Completar el código y luego Ctrl-Shift-Space | Alt- completeoverwrite


sobrescribir Shift-Space

Copiar la selección en el Ctrl-C copy


portapapeles

Cortar la selección en el Ctrl-X cut


portapapeles

Eliminar desde el cursor hasta el Ctrl-Shift-Backspace | delete_to_hard_bol


inicio de la línea Ctrl-K Ctrl-Backspace

290
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Eliminar desde el cursor hasta el Ctrl-Shift-Delete | delete_to_hard_eol


final de la línea Ctrl-K Ctrl-K

Expandir el código siempre que Tab expandSnippet


sea necesario

Mostrar la barra para buscar y Ctrl-F find


reemplazar en el documento
actual

Resaltar todas las coincidencias Alt-F3 find_all_under


de la selección

Resaltar la siguiente coincidencia Ctrl-F3 find_under


de la selección

Resaltar alrededor del cursor y Ctrl-D find_under_expand


todas las correspondencias para
el resaltado

Resaltar alrededor del Ctrl-K Ctrl-D find_under_expand_skip


cursor y marcar todas las
correspondencias para el
resaltado

Resaltar la coincidencia anterior Ctrl-Shift-F3 find_under_prev


de la selección

Seleccionar todas las Ctrl-Alt-K findAll


coincidencias en el documento
actual

Ir a la siguiente coincidencia F3 findnext


en el documento actual de
la consulta de búsqueda
introducida en último lugar

Ir a la coincidencia anterior Shift-F3 findprevious


en el documento actual de la
consulta de búsqueda que se ha
introducido en último lugar

Mostrar todas las referencias al Shift-F3 findReferences


símbolo conocidas en el punto de
inserción en el archivo activo en
el editor

Abrir la ventana Environment Shift-Esc focusTree


(Entorno) y, a continuación, crear
la lista de los archivos activos

Volver a formatear el código Ctrl-Alt-F formatcode


JavaScript seleccionado

Abrir el recuadro go to line (ir a Ctrl-G gotoline


línea)

291
AWS Cloud9 Guía del usuario
Generales

Descripción Enlace de teclado Comando

Ocultar la barra de buscar y Esc hidesearchreplace


reemplazar, si se muestra

Ir a la definición de la variable o F12 jumptodef


función en el cursor

Si hay una función de Lambda Ctrl-Shift-U lambdaUploadFunction


local seleccionada en la sección
Lambda de la ventana AWS
Resources (Recursos de AWS),
intenta cargar la función en
Lambda como una función
remota

Ir al final de la palabra actual Ctrl-Right moveToWordEndRight

Ir al comienzo de la palabra Ctrl-Left moveToWordStartLeft


actual

Crear un archivo nuevo Alt-N newfile

Mostrar la pestaña Preferences Ctrl-, openpreferences


(Preferencias)

Abrir una pestaña Terminal Alt-L opentermhere


y, a continuación, ir a la
carpeta principal del archivo
seleccionado en la lista de
archivos

Pegar el contenido actual del Ctrl-V paste


portapapeles en el cursor

Mostrar sugerencias para Ctrl-F3 quickfix


corregir errores

Rehacer la última acción Ctrl-Shift-Z | Ctrl-Y redo

Actualizar el panel de vista previa Ctrl-Enter reloadpreview

Iniciar una refactorización de Ctrl-Alt-R renameVar


cambio de nombre para la
selección

Abrir la barra de búsqueda y Ctrl-H replace


reemplazo en el documento
actual centrándose en la
expresión replace with
(reemplazar por)

Reemplazar todas las Ctrl-Alt-Enter replaceall


coincidencias de expresiones
encontradas por la expresión
indicada en la barra de buscar y
reemplazar

292
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Reemplazar la siguiente Ctrl-Shift-H replacenext


coincidencia de expresión de
búsqueda por la expresión
indicada en la barra de buscar y
reemplazar

Volver a ejecutar el script de Ctrl-Enter rerunInitScript


inicialización

Reiniciar el entorno Ctrl-R restartc9

Restablecer la última versión Ctrl-Shift-Q reverttosaved


guardada del archivo actual

Restablecer la versión guardada Alt-Shift-Q reverttosavedall


de cada archivo abierto

Guardar el archivo actual en el Ctrl-S save


disco

Guardar el archivo actual en el Ctrl-Shift-S saveas


disco con otro nombre

Mostrar la barra de buscar y Ctrl-Shift-F searchinfiles


reemplazar para varios archivos

Incluir desde el cursor hasta el Ctrl-Shift-Right selectToWordEndRight


final de la palabra en la selección

Incluir desde el cursor hasta Ctrl-Shift-Left selectToWordStartLeft


el principio de la palabra en la
selección

Mostrar el cuadro de diálogo Ctrl-Alt-P showprocesslist


Process List (Lista de procesos)

Deshacer la última acción Ctrl-Z undo

Pestañas
Descripción Enlace de teclado Comando

Cerrar todas las pestañas Ctrl-Alt-W closeallbutme


abiertas en el panel actual,
excepto la pestaña actual

Cerrar todas las pestañas Alt-Shift-W closealltabs


abiertas en todos los paneles

Cerrar el panel actual Ctrl-W closepane

Cerrar la pestaña actual Alt-W closetab

Bajar un panel Ctrl-Meta-Down gotopanedown

Ir un panel a la izquierda Ctrl-Meta-Left gotopaneleft

293
AWS Cloud9 Guía del usuario
Pestañas

Descripción Enlace de teclado Comando

Ir un panel a la derecha Ctrl-Meta-Right gotopaneright

Ir un panel hacia arriba Ctrl-Meta-Up gottopaneup

Ir una pestaña a la izquierda Ctrl-Page Up gototableft

Ir una pestaña a la derecha Ctrl-Page Down gototabright

Mover la pestaña actual un panel Ctrl-Meta-Down movetabdown


hacia abajo o, si la pestaña ya
está en la parte inferior, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Left movetableft


izquierda o, si la pestaña ya está
en la parte izquierda, crear allí
una pestaña dividida

Mover la pestaña actual a la Ctrl-Meta-Right movetabright


derecha o, si la pestaña ya está
en la parte derecha, crear allí una
pestaña dividida

Mover la pestaña actual un panel Ctrl-Meta-Up movetabup


hacia arriba o, si la pestaña ya
está en la parte superior, crear
allí una pestaña dividida

Ir a la siguiente pestaña Ctrl-Tab nexttab

Ir al panel anterior Ctrl-Shift-` previouspane

Ir a la pestaña anterior Ctrl-Shift-Tab previoustab

Volver a la última pestaña Esc refocusTab

Abrir de nuevo la última pestaña Ctrl-Shift-T reopenLastTab

Mostrar la pestaña actual en el Ctrl-E revealtab


árbol de archivos

Ir a la décima pestaña Ctrl-0 tab0

Ir a la primera pestaña Ctrl-1 tab1

Ir a la segunda pestaña Ctrl-2 tab2

Ir a la tercera pestaña Ctrl-3 tab3

Ir a la cuarta pestaña Ctrl-4 tab4

Ir a la quinta pestaña Ctrl-5 tab5

Ir a la sexta pestaña Ctrl-6 tab6

Ir a la séptima pestaña Ctrl-7 tab7

Ir a la octava pestaña Ctrl-8 tab8

Ir a la novena pestaña Ctrl-9 tab9

294
AWS Cloud9 Guía del usuario
Paneles

Paneles
Descripción Enlace de teclado Comando

Mostrar la ventana Go (Ir) en Ctrl-E|Ctrl-P gotoanything


el modo Go to Anything (Ir a
cualquier punto)

Mostrar la ventana Go (Ir) en Ctrl-.|F1 gotocommand


el modo Go to Command (Ir a
comando)

Mostrar la ventana Go (Ir) en el Ctrl-O gotofile


modo Go to File (Ir a archivo).

Mostrar la ventana Go (Ir) en Ctrl-Shift-O gotosymbol


el modo Go to Symbol (Ir a
símbolo).

Mostrar la ventana Outline Ctrl-R|Ctrl-Shift-R outline


(Esquema)

Mostrar la ventana Console Ctrl-` toggleconsole


(Consola) si está oculta u
ocultarla si se muestra

Mostrar la ventana Environment Ctrl-K Ctrl-B toggletree


(Entorno) si está oculta u
ocultarla si se muestra

Editor de código
Descripción Enlace de teclado Comando

Añadir un cursor una línea por Ctrl-Alt-Up addCursorAbove


encima del cursor activo, o si ya
se ha añadido un cursor, agregar
otro cursor por encima de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Up addCursorAboveSkipCurrent


línea por encima del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el
segundo cursor una línea por
encima

Añadir un cursor una línea por Ctrl-Alt-Down addCursorBelow


debajo del cursor activo, o si ya
se ha añadido un cursor, añadir
otro cursor por debajo de ese

Añadir un segundo cursor una Ctrl-Alt-Shift-Down addCursorBelowSkipCurrent


línea por debajo del cursor
activo, o si ya se ha añadido
un segundo cursor, mover el

295
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando


segundo cursor una línea por
debajo

Mover todos los cursores al Ctrl-Alt-A alignCursors


mismo espacio que el cursor
activo en cada una de sus líneas
si no están alineados

Retroceder un espacio Shift-Backspace | backspace


Backspace

Aplicar sangría de un tabulador a Ctrl-] blockindent


la selección

Quitar la sangría de la selección Ctrl-[ blockoutdent


un tabulador

Controlar si el foco se puede Ctrl-Z | Ctrl-Shift-Z | cancelBrowserUndoInAce


cambiar desde el editor a otra Ctrl-Y
parte en el IDE

Centrarse en la selección Ctrl-K Ctrl-C centerselection

Copiar el contenido de la línea y Alt-Shift-Down copylinesdown


pegarlo una línea por debajo

Copiar el contenido de la línea y Alt-Shift-Up copylinesup


pegarlo una línea por encima

Cortar la selección, o si no hay Shift-Delete cut_or_delete


ninguna selección, eliminar un
espacio

Eliminar un espacio Delete del

Copiar el contenido de la Ctrl-Shift-D duplicateSelection


selección y pegar el contenido
copiado inmediatamente
después de la selección

Incluir el contenido de la línea Ctrl-Shift-L expandtoline


actual en la selección

Incluir hasta el siguiente símbolo Ctrl-Shift-M expandToMatching


coincidente en la selección

Plegar el código seleccionado; Alt-L | Ctrl-F1 fold


si hay seleccionada una unidad
plegada, desplegarla

Plegar todos los elementos Ctrl-K Ctrl-1 foldOther


plegables, excepto el ámbito
actual de selección

Bajar una línea Down golinedown

Subir una línea Up golineup

Ir al final del archivo Ctrl-End gotoend

296
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Ir un espacio a la izquierda Left gotoleft

Ir al final de la línea actual Alt-Right | End gotolineend

Ir al comienzo de la línea actual Alt-Left | Home gotolinestart

Ir al siguiente error Ctrl-F6 goToNextError

Bajar una página Page Down gotopagedown

Subir una página Page Up gotopageup

Ir al error anterior Ctrl-Shift-F6 goToPreviousError

Ir un espacio a la derecha Right gotoright

Ir al principio del archivo Ctrl-Home gotostart

Ir una palabra a la izquierda Ctrl-Left gotowordleft

Ir una palabra a la derecha Ctrl-Right gotowordright

Aplicar sangría de un tabulador a Tab indent


la selección

Incluir desde el cursor hasta Ctrl-J joinlines


el principio de la palabra en la
selección

Ir al símbolo coincidente en el Ctrl-M jumptomatching


ámbito actual

Aumentar el tamaño de la fuente Ctrl-- | Ctrl-= | Ctrl-+ largerfont

Reducir el número a la izquierda Alt-Down modifyNumberDown


del cursor en 1, si se trata de un
número

Aumentar el número a la Alt-Up modifyNumberUp


izquierda del cursor en 1, si se
trata de un número

Mover la selección una línea Ctrl-Shift-Down movelinesdown


hacia abajo

Mover la selección una línea Ctrl-Shift-Up movelinesup


hacia arriba

Quitar la sangría de la selección Shift-Tab outdent


un tabulador

Activar el modo de sobrescritura Insert overwrite


o desactivarlo si está activado

Eliminar el contenido de la línea Ctrl-Shift-K removeline


actual

Eliminar desde el cursor hasta el Alt-Delete removetolineend


final de la línea actual

297
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Eliminar desde el comienzo de la Alt-Backspace removetolinestart


línea actual hasta el cursor

Eliminar la palabra situada a la Ctrl-Backspace removewordleft


izquierda del cursor

Eliminar la palabra situada a la Ctrl-Delete removewordright


derecha del cursor

Reproducir pulsaciones del Ctrl-Shift-Q replaymacro


teclado previamente registradas

Desplazarse hacia abajo en el Ctrl-Down scrolldown


archivo actual una línea

Desplazarse hacia arriba en el Ctrl-Up scrollup


archivo actual una línea

Seleccionar todo el contenido Ctrl-A selectall


seleccionable

Incluir la línea siguiente abajo en Shift-Down selectdown


la selección

Incluir el siguiente espacio a la Shift-Left selectleft


izquierda en la selección

Incluir el resto de la línea actual Shift-End selectlineend


en la selección, comenzando
desde el cursor

Incluir desde el comienzo de la Shift-Home selectlinestart


línea actual en la selección hasta
el cursor

Incluir más selecciones Ctrl-Alt-Right selectMoreAfter


coincidentes que están después
de la selección

Incluir más selecciones Ctrl-Alt-Left selectMoreBefore


coincidentes que están antes de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Right selectNextAfter


coincidente que está después de
la selección

Incluir la siguiente selección Ctrl-Alt-Shift-Left selectNextBefore


coincidente que está antes de la
selección

Seleccionar o buscar la siguiente Alt-K selectOrFindNext


selección coincidente

Seleccionar o buscar la selección Alt-Shift-K selectOrFindPrevious


coincidente anterior

298
AWS Cloud9 Guía del usuario
Editor de código

Descripción Enlace de teclado Comando

Incluir desde el cursor hasta el Shift-Page Down selectpagedown


final de la página actual en la
selección

Incluir desde el cursor hasta el Shift-Page Up selectpageup


comienzo de la página actual en
la selección

Incluir el siguiente espacio a Shift-Right selectright


la derecha del cursor en la
selección

Incluir desde el cursor hasta Ctrl-Shift-End selecttoend


el final del archivo actual en la
selección

Incluir desde el cursor hasta Alt-Shift-Right selecttolineend


el final de la línea actual en la
selección

Incluir desde el comienzo de la Alt-Shift-Left selecttolinestart


línea actual hasta el cursor en la
selección

Incluir desde el cursor hasta el Ctrl-Shift-P selecttomatching


siguiente símbolo coincidente en
el ámbito actual

Incluir desde el cursor hasta el Ctrl-Shift-Home selecttostart


comienzo del archivo actual en la
selección

Incluir la línea siguiente arriba en Shift-Up selectup


la selección

Incluir la siguiente palabra a Ctrl-Shift-Left selectwordleft


la izquierda del cursor en la
selección

Incluir la siguiente palabra a Ctrl-Shift-Right selectwordright


la derecha del cursor en la
selección

Mostrar la pestaña Preferences Ctrl-, showSettingsMenu


(Preferencias)

Borrar todas las selecciones Esc singleSelection


anteriores

Disminuir el tamaño de la fuente Ctrl-- | Ctrl-Shift-= | smallerfont


Ctrl-Shift-+

Si se seleccionan varias líneas, F9 sortlines


reorganizarlas de una forma
ordenada

Añadir un cursor al final de la Ctrl-Shift-L splitIntoLines


línea actual

299
AWS Cloud9 Guía del usuario
emmet

Descripción Enlace de teclado Comando

Rodear la selección con Ctrl-Shift-/ toggleBlockComment


caracteres de comentario
de bloques o, si los hubiese,
eliminarlos

Añadir caracteres de comentario Ctrl-/ togglecomment


de línea al principio de cada línea
seleccionada o eliminarlos si ya
están

Plegar código o quitar el plegado Ctrl-Shift-[ toggleFoldWidget


de código si está plegado

Plegar código principal o quitar el Alt-F2 toggleParentFoldWidget


plegado si lo está

Comenzar la grabación de la Ctrl-Q togglerecording


combinación de teclas o detener
si ya se está grabando

Ajustar las palabras o detener el Ctrl-Q toggleWordWrap


ajuste de palabras si ya se están
ajustando

Poner la selección completa en Ctrl-K Ctrl-L tolowercase


minúsculas

Poner la selección completa en Ctrl-K Ctrl-U touppercase


mayúsculas

Transponer la selección Alt-X transposeletters

Desplegar el código Ctrl-Shift-] unfold


seleccionado

Desplegar el plegado de código Ctrl-K Ctrl-0 | Ctrl-K unfoldall


en todo el archivo Ctrl-J

emmet

Descripción Enlace de teclado Comando

Evaluar una expresión Shift-Ctrl-Y emmet_evaluate_math_expression


matemática simple (como 2*4 o
10/2) y mostrar su resultado

Expandir abreviaturas de tipo Ctrl-Alt-E emmet_expand_abbreviation


CSS en el código HTML, XML o
CSS, en función de la sintaxis del
archivo actual

Atravesar las abreviaturas de tipo Tab emmet_expand_abbreviation_with_tab


CSS expandidas, deteniéndose
con el tabulador

300
AWS Cloud9 Guía del usuario
Terminal

Descripción Enlace de teclado Comando

Ir a la siguiente parte del código Shift-Ctrl-. emmet_select_next_item


editable

Ir a la parte del código editable Shift-Ctrl-, emmet_select_previous_item


anterior

Expandir una abreviatura y, a Shift-Ctrl-A emmet_wrap_with_abbreviation


continuación, colocar la selección
actual en el último elemento del
fragmento generado

Terminal

Descripción Enlace de teclado Comando

Abrir una nueva pestaña Alt-T openterminal


Terminal

Cambiar entre el editor y la Alt-S switchterminal


pestaña Terminal

Ejecución y depuración

Descripción Enlace de teclado Comando

Compilar el archivo actual F7 | Ctrl-B build

Reanudar el proceso actual en F8 resume


pausa

Ejecutar o depurar la aplicación Ctrl-Shift-B run


actual

Ejecutar o depurar el último F5 runlast


archivo ejecutado

Pasar a la función que está junto F11 stepinto


a la pila

Salir del ámbito de la función Shift-F11 stepout


actual

Saltar la expresión actual en la F10 stepover


pila

Parar la ejecución o la Shift-F5 stop


depuración de la aplicación
actual

Detener la compilación del Ctrl-Break stopbuild


archivo actual

301
AWS Cloud9 Guía del usuario
Referencia de comandos

Referencia de comandos del entorno de desarrollo


integrado (IDE) de AWS Cloud9
Para ejecutar un comando en el IDE de AWS Cloud9:

1. Para mostrar la ventana Go (Ir), seleccione el botón Go (Ir) (el icono de lupa). Si la ventana Go (Ir) no
está visible, elija Window, Go (Ventana, Ir) en la barra de menús.
2. En el cuadro Go to Anything (Ir a cualquier punto), comience a escribir el nombre de un grupo de
comandos (Editor de código, por ejemplo). Un grupo contiene varios comandos organizados en torno a
una característica del IDE o un tema común.
3. En el encabezado Commands (Comandos), elija un comando específico del grupo para ejecutarlo.

Grupos de comandos disponibles

Grupo de comandos Description (Descripción)

AWS Comandos para AWS Toolkit (p. 338)

Clipboard Comandos para copiar y pegar contenido

Code Editor Comandos para navegar por la interfaz del editor


de código e interactuar con el contenido del editor

Emmet Comandos para trabajar con el kit de herramientas


Emmet que se utiliza para contenido HTML y CSS

General Varios comandos para administrar la configuración


del IDE y los archivos de proyecto

Panels Comandos para administrar la visualización de


paneles en la interfaz del IDE

Run & Debug Comandos para ejecutar y depurar proyectos en


AWS Cloud9

Tabs Comandos para administrar la visualización y la


navegación de pestañas en la interfaz del IDE

Terminal Comandos para administrar el terminal de la línea


de comandos

Window Comandos para administrar el diseño de los


paneles en la ventana del IDE

302
AWS Cloud9 Guía del usuario
Trabajo con instancias de Amazon Lightsail

Trabajar con otros servicios de AWS


Si utiliza AWS Cloud9, puede trabajar estrechamente con Amazon Lightsail, AWS CodeStar y AWS
CodePipeline. En los temas de esta sección se explica cómo hacerlo.
Important

La característica AWS Toolkit proporciona una práctica interfaz visual para trabajar con los
principales servicios de AWS, como AWS Lambda, AWS Serverless Application Model y Amazon
S3. Para obtener más información, consulte AWS Toolkit (p. 338).

Temas
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Trabajo con AWS CodePipeline en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 312)

Trabajo con instancias de Amazon Lightsail en


el entorno de desarrollo integrado (IDE) de AWS
Cloud9
Puede utilizar el IDE de AWS Cloud9 para trabajar con instancias de Amazon Lightsail preconfiguradas
con aplicaciones y marcos populares, como WordPress, LAMP (Linux, Apache, MySQL y PHP), Node.js,
Nginx, Drupal y Joomla, así como con distribuciones Linux como Amazon Linux, Ubuntu, Debian, FreeBSD
y openSUSE.

Lightsail es la manera más sencilla de dar los primeros pasos en AWS para desarrolladores, pequeños
negocios, estudiantes y otros usuarios que necesitan una solución de servidor privado virtual (VPS)
sencilla. Lightsail proporciona a los desarrolladores capacidad informática, almacenamiento y red, así
como funciones para implementar y administrar sitios y aplicaciones web en la nube. Lightsail incluye todo
lo que necesita para lanzar rápidamente su proyecto —una máquina virtual, almacenamiento basado en
SSD, transferencia de datos, administración de DNS y una dirección IP estática—, a un precio mensual
bajo y predecible. Para obtener más información, consulte Características de Amazon Lightsail.

En este tema va a crear y configurar una instancia de Lightsail basada en Linux que sea compatible con
AWS Cloud9. A continuación creará un entorno de desarrollo de SSH de AWS Cloud9 y lo conectará a la
instancia de Lightsail.
Note

El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Lightsail. Para obtener más información, consulte
Precios de Amazon Lightsail.
Para crear y configurar una solución más avanzada que incluya una cadena de herramientas con
el IDE de AWS Cloud9, control de fuentes, compilación, implementación, servidores virtuales o
recursos sin servidor, y mucho más, omita el resto de este tema y consulte Trabajo con proyectos
de AWS CodeStar (p. 310) en su lugar.
Para utilizar el IDE de AWS Cloud9 y trabajar con una instancia de Amazon EC2 que se ejecute
en Amazon Linux o Ubuntu Server y que no contenga código de muestra, omita el resto de este
tema y consulte Introducción: tutoriales básicos (p. 32) en su lugar.

303
AWS Cloud9 Guía del usuario
Paso 1: Crear una instancia de Lightsail basada en Linux

• Paso 1: Crear una instancia de Lightsail basada en Linux (p. 304)


• Paso 2: Configurar la instancia para utilizarla con AWS Cloud9 (p. 305)
• Paso 3: Crear un entorno de desarrollo SSH de AWS Cloud9 y conectarse a este (p. 307)
• Paso 4: Utilizar el IDE de AWS Cloud9 para cambiar el código en la instancia (p. 310)

Paso 1: Crear una instancia de Lightsail basada en


Linux
En este paso va a utilizar la consola de Lightsail para crear una instancia de Amazon EC2 que ejecuta una
aplicación en una distribución basada en Linux. Esta instancia automáticamente incluye:

• Una dirección IP pública y privada. (Puede crear una IP pública estática más adelante).
• Acceso a la instancia mediante SSH a través del puerto 22, HTTP a través del puerto 80 y HTTPS a
través del puerto 443. (Puede cambiar estos valores).
• Un disco de almacenamiento en bloque. (Puede adjuntar discos adicionales más adelante).
• Informes de sistema integrados.

La consola de Lightsail le permite realizar copias de seguridad, reiniciar, detener o eliminar la instancia con
posterioridad.

1. Abra la consola de Lightsail e inicie sesión en esta en https://lightsail.aws.amazon.com.

Se recomienda iniciar sesión con las credenciales de un usuario administrador de IAM en su cuenta de
AWS. Si no puede iniciar sesión como usuario administrador de IAM, consulte con el administrador de
su cuenta de AWS.
2. Si se le solicita, elija el idioma que desea utilizar en la consola y, a continuación, seleccione Save
(Guardar).
3. Si se le solicita, elija Let's get started (Comencemos).
4. En la página de inicio, con la pestaña Instances (Instancias) ya seleccionada, elija Create instance
(Crear instancia).

5. En Instance location (Ubicación de la instancia), asegúrese de que la ubicación coincida con una región
de AWS en la que desee crear la instancia donde AWS Cloud9 esté disponible. Para obtener más
información, consulte AWS Cloud9 en Referencia general de Amazon Web Services. Para cambiar
la región de AWS, la zona de disponibilidad o ambas, elija Change AWS Region and Availability
Zone (Cambiar región de AWS y zona de disponibilidad) y, a continuación, siga las instrucciones que
aparecen en pantalla.
6. En Pick your instance image (Elija su imagen de instancia), una vez que haya elegido Linux/Unix para
Select a platform (Seleccione una plataforma) y Apps + OS (Aplicaciones + SO) para Select a blueprint
(Seleccione un proyecto), seleccione un proyecto.

304
AWS Cloud9 Guía del usuario
Paso 2: Configurar la instancia
para utilizarla con AWS Cloud9

Note

Si desea crear una instancia sin aplicación, elija OS Only (Solo SO) en lugar de Apps + OS
(Aplicaciones + SO) y, a continuación, seleccione una distribución.
Para obtener más información acerca de las opciones disponibles, consulte la sección
relacionada con la selección de una imagen de instancia de Amazon Lightsail en el sitio web de
Lightsail.
7. En Choose your instance plan (Seleccione su plan de instancia), elija un plan o deje el plan
seleccionado de manera predeterminada.
8. En Name your instance (Asignar nombre a la instancia), escriba un nombre para la instancia o deje el
nombre propuesto de manera predeterminada.
9. Para el número de instancias, escriba el número de instancias que desea crear o deje el valor
predeterminado de una sola instancia (x 1).
10.Seleccione Create (Crear OpsItem).

Paso 2: Configurar la instancia para utilizarla con AWS


Cloud9
En este paso se conectará a la instancia en ejecución y, a continuación, la configurará para que AWS
Cloud9 pueda utilizarla más adelante.

305
AWS Cloud9 Guía del usuario
Paso 2: Configurar la instancia
para utilizarla con AWS Cloud9

Note

En las siguientes instrucciones se presupone que ha elegido Apps + OS (Aplicaciones + SO) en


el paso anterior. Si ha elegido OS Only (Solo SO) y una distribución distinta de Ubuntu, es posible
que tenga que adaptar las siguientes instrucciones según corresponda.

1. Con la consola de Lightsail abierta del paso anterior, en la pestaña Instances (Instancias), en la tarjeta
de la instancia, elija el nombre de la instancia.

2. En la pestaña Connect (Conectar), en Connect using your own SSH client (Conectarse a través de su
propio cliente SSH), apunte los valores de Public IP (IP pública) y User name (Nombre de usuario),
puesto que los necesitará más adelante.

3. Elija Conectarse a través de SSH.


4. Asegúrese de que la instancia incluya las últimas actualizaciones del sistema. Para ello, en la sesión de
terminal que aparece, ejecute el comando sudo apt update.

306
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este

5. Compruebe si se ha instalado Python y, si es así, asegúrese de que la versión sea la 2.7. Para
comprobar la versión, ejecute el comando python --version y anote el número de versión que
aparece. Si no aparece ningún número de versión o si la versión no es 2.7, instale Python 2.7 en la
instancia ejecutando el comando sudo apt install -y python-minimal.
6. Compruebe si se ha instalado Node.js y, si es así, compruebe que la versión sea 0.6.16 o una versión
posterior. Para comprobar la versión, ejecute el comando node --version y anote el número de
versión que aparece. Si no aparece ningún número de versión o si la versión no es 0.6.16 o posterior, le
recomendamos que utilice Node Version Manager (nvm) para instalar Node.js en la instancia.

Para ello, ejecute los siguientes comandos de uno en uno, en el orden que se indica a continuación,
para actualizar la instancia, instale Node Version Manager (nvm) en la instancia, active nvm en la
instancia y, a continuación, instale la versión más reciente de Node.js en la instancia.

sudo apt update


curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
. ~/.bashrc
nvm install node

7. Ejecute el comando which node y anote el valor que aparece. La necesitará más adelante.
Note

Si el resultado del comando which node se parece a /usr/sbin/node, AWS Cloud9 no


podrá encontrar Node.js en esa ruta. En su lugar, utilice nvm para instalar Node.js, tal y como
se describe en el paso anterior de este procedimiento. A continuación, ejecute de nuevo el
comando which node y anote el nuevo valor que aparece.
8. Descargue y ejecute el instalador de AWS Cloud9 en la instancia (p. 518).

Paso 3: Crear un entorno de desarrollo SSH de AWS


Cloud9 y conectarse a este
En este paso utilizará la consola de AWS Cloud9 y el terminal de la instancia para crear un entorno de
SSH y, a continuación, conectará el entorno a la instancia en ejecución.

1. Con la sesión de terminal abierta desde el paso anterior, inicie sesión en la consola de AWS Cloud9,
como sigue:
• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
Note

En este paso trabajará con dos servicios de AWS diferentes al mismo tiempo. Si inició sesión
en la consola de Lightsail como usuario administrador de IAM, pero desea que otra entidad sea
la propietaria del nuevo entorno de SSH, le sugerimos que abra otro navegador web e inicie
sesión en la consola de AWS Cloud9 como dicha entidad.
2. En la consola de AWS Cloud9, elija la región de AWS que coincida con la región en la que ha creado la
instancia.

307
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este

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

O bien:

4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
5. Para agregar una descripción del entorno, escríbala en Description (Descripción).
6. Elija Next Step (Paso siguiente).
7. En la página Configure settings (Configurar ajustes), en Environment type (Tipo de entorno), elija
Connect and run in remote server (SSH) (Conectar y ejecutar en servidor remoto [SSH]).
8. En User (Usuario), escriba el valor de User name (Nombre de usuario) que había anotado antes.
9. En Host, escriba el valor de Public IP (IP pública) que había anotado antes.
10.En Port (Puerto), deje el valor predeterminado, 22.
11.Amplíe Advanced settings (Configuración avanzada).
12.En Environment path (Ruta del entorno), escriba la ruta desde la que AWS Cloud9 empezará después
de iniciar sesión, que es ~/ (la raíz del directorio de inicio del usuario).

308
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este

13.En Node.js binary path (Ruta binaria de Node.js), escriba el valor del comando which node que había
anotado antes.
14.Deje SSH jump host (Host de salto de SSH) en blanco.
15.Almacene la clave SSH pública que crea AWS Cloud9 para este entorno en el portapapeles del sistema.
Para ello, elija Copy key to clipboard (Copiar clave en portapapeles).
Note

Para ver el valor de la clave SSH pública que se ha copiado, amplíe View public SSH key (Ver
clave pública SSH).
16.Guarde el valor de la clave SSH pública que acaba de copiar en la instancia. Para ello, utilice vi, un
conocido editor de texto que ya está instalado en la instancia:
a. En la sesión de terminal de la instancia, ejecute el comando vi ~/.ssh/authorized_keys.
b. En el editor vi que aparece, vaya al final del archivo y cambie al modo de inserción. Para ello, pulse G
y, a continuación, A. (- INSERT: aparece en la parte inferior del editor vi.)
c. Añada dos retornos de carro al final del archivo pulsando Enter dos veces.
d. Pegue el contenido del portapapeles del sistema, que contiene el valor de la clave SSH pública que
acaba de copiar, en el portapapeles de la sesión de terminal. Para ello, en la esquina inferior de la
ventana de la sesión de terminal, elija el botón de portapapeles y, a continuación, pegue el contenido
del portapapeles del sistema en el cuadro.

e. Pegue el contenido del portapapeles de la sesión de terminal en el editor vi. Para ello, en el punto de
inserción del editor vi, pulse Ctrl + Shift + V.
f. Guarde el archivo. Para ello, pulse Esc para entrar en modo de comando. (-- INSERT -- desaparece
de la parte inferior del editor vi). Escriba :wq (para write (escribir) el archivo y, a continuación, quit
para salir del editor vi); a continuación, pulse Enter.
17.En la consola de AWS Cloud9, elija Next step (Paso siguiente).
18.En la página Review choices (Revisar opciones), elija Create environment (Crear entorno). Espere
mientras AWS Cloud9 crea su entorno. A continuación, se muestra el IDE de AWS Cloud9 para el
entorno. Esto puede tardar varios minutos.

Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.

Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para ver posibles soluciones, consulte No se puede abrir un entorno (p. 582) en Solución de problemas.

309
AWS Cloud9 Guía del usuario
Paso 4: Utilizar el IDE de AWS Cloud9
para cambiar el código en la instancia

Paso 4: Utilizar el IDE de AWS Cloud9 para cambiar el


código en la instancia
Ahora que se muestra el IDE para el nuevo entorno, puede utilizar la sesión de terminal en el IDE en
lugar de la sesión de terminal de Lightsail. El IDE ofrece una rica experiencia de edición de código, con
compatibilidad para varios lenguajes de programación y depuradores de tiempo de ejecución, así como
temas de color, enlaces de teclado, colores de sintaxis específicos para los lenguajes de programación,
formato de código, etc.

Para obtener información sobre cómo utilizar el IDE, consulte Recorrido del IDE de AWS Cloud9 (p. 116).

Para obtener información sobre cómo cambiar el código en la instancia, le recomendamos los siguientes
recursos.

• La sección completa Obtención de la contraseña de aplicación para la imagen de Lightsail "basada en


Bitnami" del sitio web de Lightsail
• Drupal: Bitnami Drupal For AWS Cloud en el sitio web de Bitnami y Tutorials and site recipes en el sitio
web de Drupal.
• GitLab CE: Bitnami GitLab CE for AWS Cloud en el sitio web de Bitnami y GitLab Documentation en el
sitio web de GitLab.
• Joomla: Bitnami Joomla! For AWS Cloud en el sitio web de Bitnami y Getting Started with Joomla! en el
sitio web de Joomla!
• LAMP Stack: Bitnami LAMP for AWS Cloud en el sitio web de Bitnami.
• Magento: Bitnami Magento For AWS Cloud en el sitio web de Bitnami y la Guía del usuario de Magento
en el sitio web de Magento.
• MEAN: Bitnami MEAN For AWS Cloud en el sitio web de Bitnami.
• Nginx: Bitnami Nginx For AWS Cloud en el sitio web de Bitnami y NGINX Wiki en el sitio web de NGINX.
• Node.js: Bitnami Node.Js For AWS Cloud en el sitio web de Bitnami y la Guía de introducción en el sitio
web de Node.js.
• Plesk Hosting Stack on Ubuntu: Instalar y configurar Plesk en Amazon Lightsail.
• Redmine: Bitnami Redmine For AWS Cloud en el sitio web de Bitnami y Getting Started en el sitio web
de Redmine.
• WordPress: Introducción al uso de WordPress desde la instancia de Amazon Lightsail en el sitio web de
Lightsail y Bitnami WordPress For AWS Cloud en el sitio web de Bitnami.

Trabajo con proyectos de AWS CodeStar en el


entorno de Desarrollo Integrado (IDE) de AWS
Cloud9
Puede utilizar el IDE de AWS Cloud9 para trabajar con código en los proyectos de AWS CodeStar.

AWS CodeStar es un servicio basado en la nube para crear, administrar y trabajar con proyectos de
desarrollo de software en AWS. Puede desarrollar, compilar e implementar aplicaciones rápidamente en
AWS con un proyecto de AWS CodeStar. Los proyectos de AWS CodeStar crean e integran los servicios
de AWS para sus cadenas de herramientas de proyecto. Según la plantilla de proyecto de AWS CodeStar
que elija, esa cadena de herramientas puede incluir control de código fuente, compilación, implementación,
servidores virtuales o recursos sin servidor, y mucho más. Para obtener más información, consulte la Guía
del usuario de AWS CodeStar.

310
AWS Cloud9 Guía del usuario
Paso 1: Prepararse para trabajar
con proyectos de AWS CodeStar

Note

El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Amazon EC2, AWS CodeStar y los servicios de AWS
compatibles con AWS CodeStar. Para obtener más información, consulte Precios de Amazon
EC2, Precios de AWS CodeStar y los precios de los servicios en la nube.
Para utilizar el IDE de AWS Cloud9 para trabajar con una instancia de Amazon EC2 recién
lanzada que se haya preconfigurado con una aplicación o un marco muy conocidos, como
WordPress, MySQL, PHP, Node.js, Nginx, Drupal o Joomla, así como con una distribución Linux
como Ubuntu, Debian, FreeBSD u openSUSE, puede usar Amazon Lightsail junto con AWS
Cloud9. Para ello, omita el resto de este tema y consulte Trabajo con instancias de Amazon
Lightsail (p. 303).
Para utilizar el IDE de AWS Cloud9 para trabajar con una instancia de Amazon EC2 recién
lanzada que ejecute Amazon Linux y no contenga código de muestra, omita el resto de este tema
y consulte Introducción: tutoriales básicos (p. 32) en su lugar.

• Paso 1: Prepararse para trabajar con proyectos de AWS CodeStar (p. 311)
• Paso 2: Crear un proyecto en AWS CodeStar (p. 311)
• Paso 3: Crear un entorno de desarrollo de AWS Cloud9 y conectarlo con el proyecto (p. 311)

Paso 1: Prepararse para trabajar con proyectos de


AWS CodeStar
En este paso va a crear una función de servicio de AWS CodeStar y un par de claves de Amazon EC2
para poder comenzar a crear proyectos de AWS CodeStar y trabajar con ellos.

Si ha utilizado AWS CodeStar antes, vaya a Paso 2: Crear un proyecto en AWS CodeStar (p. 311).

En este paso, siga las instrucciones que se describen en Configuración de AWS CodeStar en la Guía del
usuario de AWS CodeStar. No cree una cuenta de AWS, un usuario de IAM ni un grupo de IAM nuevo
siguiendo esas instrucciones. Utilice los que haya creado o identificado en Configuración de equipos para
AWS Cloud9 (p. 9). Cuando termine de seguir esas instrucciones, vuelva a este tema.

Paso 2: Crear un proyecto en AWS CodeStar


En este paso, creará un proyecto en AWS CodeStar.

Si ya tiene un proyecto en AWS CodeStar que desee utilizar, vaya a Paso 3: Crear un entorno de
desarrollo de AWS Cloud9 y conectarlo al proyecto (p. 311).

En este paso, siga las instrucciones que se describen en Crear un proyecto en AWS CodeStar de la Guía
del usuario de AWS CodeStar. En el asistente para crear proyectos de AWS CodeStar, cuando acceda a
las páginas Set up tools (Configurar herramientas) o Connect to your source repository (Conectarse a su
repositorio de código fuente), elija Skip (Omitir) y, a continuación, vuelva a este tema.

Paso 3: Crear un entorno de desarrollo de AWS


Cloud9 y conectarlo con el proyecto
En este paso, creará un entorno de desarrollo de AWS Cloud9 en la consola de AWS CodeStar o AWS
Cloud9. A continuación, conectará un nuevo entorno a un proyecto de AWS CodeStar.

En este paso, utilice uno de los siguientes conjuntos de instrucciones, en función del tipo de entorno de
desarrollo de AWS Cloud9 que desee utilizar y el tipo de repositorio donde el proyecto de AWS CodeStar
almacene su código.

311
AWS Cloud9 Guía del usuario
Trabajo con AWS CodePipeline

Tipo de entorno Repository type Instrucciones

Entorno de EC2 CodeCommit Crear un entorno de AWS Cloud9


para un proyecto en la Guía del
usuario de AWS CodeStar

Entorno de SSH CodeCommit AWS CodeCommit Ejemplo


de (p. 394)

Entorno de EC2 o SSH GitHub Usar GitHub con AWS Cloud9


en la Guía del usuario de AWS
CodeStar

Trabajo con AWS CodePipeline en el entorno de


desarrollo integrado (IDE) de AWS Cloud9
Puede utilizar el IDE de AWS Cloud9 para trabajar con código fuente en los repositorios que son
compatibles con AWS CodePipeline.

CodePipeline es un servicio de entrega continua que puede utilizar para modelar, visualizar y automatizar
los pasos necesarios para lanzar su software y los cambios continuos que realice. Puede utilizar
CodePipeline para modelar y configurar rápidamente las diferentes etapas de un proceso de lanzamiento
de software. Para obtener más información, consulte la Guía del usuario de AWS CodePipeline.
Note
El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Amazon EC2, CodePipeline, Amazon S3 y servicios
de AWS compatibles con CodePipeline. Para obtener más información, consulte Precios de
Amazon EC2, Precios de AWS CodePipeline, Precios de Amazon S3 y Precios de los servicios en
la nube.
AWS CodeStar proporciona características adicionales junto con las canalizaciones, como,
por ejemplo, plantillas de proyecto, paneles y equipos. Para utilizar AWS CodeStar en lugar
de CodePipeline, omita el resto de este tema y consulte Trabajo con proyectos de AWS
CodeCommit (p. 310) en su lugar.

• Paso 1: Crear o identificar el repositorio del código fuente (p. 312)


• Paso 2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y cargar el
código (p. 313)
• Paso 3: Prepararse para trabajar con AWS CodePipeline (p. 314)
• Paso 4: Crear una canalización en AWS CodePipeline (p. 314)

Paso 1: Crear o identificar el repositorio del código


fuente
En este paso, se crea o identifica un repositorio de código fuente que es compatible con CodePipeline.

Más adelante en este tema, cargará el código fuente del software ese repositorio. CodePipeline compilará,
probará e implementará el código fuente cargado en ese repositorio utilizando canalizaciones relacionadas
que también creará usted.

El repositorio de código fuente debe ser uno de los siguientes tipos de repositorio que admite
CodePipeline:

312
AWS Cloud9 Guía del usuario
Paso 2: Crear un entorno de desarrollo de AWS Cloud9,
conectarlo al repositorio de código y cargar el código

• AWS CodeCommit. Si ya tiene un repositorio en CodeCommit que desea utilizar, vaya directamente al
Paso 2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y cargar el
código (p. 313). De lo contrario, para utilizar CodeCommit, siga estas instrucciones en el Ejemplo de
AWS CodeCommit, en este orden y, a continuación, vuelva a este tema:
• Paso 1: Configurar el grupo de IAM con los permisos de acceso necesarios (p. 394)
• Paso 2: Crear un repositorio en AWS CodeCommit (p. 396)
• Amazon S3. Si ya tiene un bucket en Amazon S3 que desea utilizar, vaya directamente al Paso
2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y cargar el
código (p. 313). De lo contrario, para utilizar Amazon S3, siga estas instrucciones de la Guía del
usuario de Amazon Simple Storage Service en este orden y, a continuación, vuelva a este tema:
• Inscribirse en Amazon S3
• Crear un bucket
• GitHub. Si ya tiene un repositorio en GitHub, puede clonarlo y crear una copia local en su entorno de
desarrollo mediante la interfaz del panel de Git (p. 315). Si aún no tiene una cuenta o un repositorio
configurado en GitHub, consulte la documentación relacionada para obtener instrucciones.

Paso 2: Crear un entorno de desarrollo de AWS


Cloud9, conectarlo al repositorio de código y cargar el
código
En este paso, creará un entorno de desarrollo de AWS Cloud9 en la consola de AWS Cloud9. A
continuación, conectará el entorno al repositorio que se utilizará en CodePipeline. Por último, utilizará el
IDE de AWS Cloud9 para que el entorno cargue el código fuente en el repositorio.

Para crear el entorno, siga las instrucciones del tema Creación de un entorno (p. 53) y, a continuación,
vuelva a este tema. (Si ya tiene un entorno, puede utilizarlo. No es necesario que cree uno nuevo).

Para conectar el entorno al repositorio y, a continuación, cargar el código fuente en el repositorio si aún no
está allí, utilice uno de los siguientes conjuntos de instrucciones. El conjunto que elija dependerá del tipo
de repositorio que almacene el código fuente.

Repository type Instrucciones

CodeCommit Siga estas instrucciones en la Muestra de AWS


CodeCommit:

• Paso 3: Conectar el entorno con un repositorio


remoto (p. 396)
• Paso 4: Clonar el repositorio remoto en su
entorno (p. 398)
• Paso 5: Añadir archivos al repositorio (p. 398),
sustituyendo su propio código fuente para este
paso

Amazon S3 • Instale y configure AWS CLI o aws-shell en el


entorno, tal y como se describe en Muestra de
AWS CLI y aws-shell (p. 390).
• Para cargar el código fuente en el bucket, utilice
AWS CLI o aws-shell en el entorno para ejecutar
el comando aws s3 cp. (Para el aws-shell, puede
eliminar aws del comando).

313
AWS Cloud9 Guía del usuario
Paso 3: Prepararse para trabajar con AWS CodePipeline

Repository type Instrucciones

GitHub Puede clonar un repositorio alojado en GitHub e


interactuar con este mediante la interfaz del panel
de Git (p. 315).

Después de conectar el entorno al repositorio, siempre que envíe los cambios en el código fuente desde
el IDE de AWS Cloud9 al repositorio, CodePipeline enviará automáticamente esos cambios a través de
las canalizaciones relacionadas que se van a compilar, probar e implementar. Creará una canalización
relacionada más adelante en este tema.

Paso 3: Prepararse para trabajar con AWS


CodePipeline
En este paso, se adjunta una política administrada por AWS específica al grupo de IAM que ha creado o
identificado en Configuración de equipos (p. 9). De este modo, los usuarios del grupo pueden comenzar a
crear y utilizar canalizaciones en CodePipeline.

Si ya ha utilizado antes CodePipeline, vaya directamente al Paso 4: Crear una canalización en AWS
CodePipeline (p. 314).

En este paso, siga las instrucciones del Paso 3: Usar una política administrada de IAM para asignar
permisos de AWS CodePipeline al usuario de IAM en la Guía del usuario de AWS CodePipeline y, a
continuación, vuelva a este tema.

Paso 4: Crear una canalización en AWS CodePipeline


En este paso, se crea una canalización en CodePipeline que utiliza el repositorio que ha creado o
identificado anteriormente en este tema.

En este paso, siga las instrucciones que se describen en Crear una canalización en AWS CodePipeline en
la Guía del usuario de AWS CodePipeline.

Después de crear la canalización, CodePipeline envía la versión actual del código fuente del repositorio
a través de la canalización que se va a compilar, probar e implementar. Luego, siempre que envía los
cambios en el código fuente del IDE de AWS Cloud9 al repositorio, CodePipeline envía automáticamente
esos cambios a través de la canalización que se va a compilar, probar e implementar.

Para ver la canalización, siga las instrucciones de Ver los detalles y el historial de la canalización en AWS
CodePipeline en la Guía del usuario de AWS CodePipeline.

314
AWS Cloud9 Guía del usuario

Control de código fuente visual con el


panel de Git
El panel de Git para AWS Cloud9 proporciona una práctica interfaz visual para usar las características
esenciales de Git.

Mediante las opciones de la interfaz del panel de Git, puede administrar todo el ciclo de vida del control
de código fuente: inicializar un repositorio o clonar un repositorio remoto, agregar archivos al área de
almacenamiento provisional, confirmar archivos almacenados provisionalmente en el directorio de trabajo
y, a continuación, enviar cambios a un repositorio ascendente.

Las características básicas de colaboración y administración de proyectos de Git, como las de creación y
fusión de ramificaciones, se pueden implementar rápidamente con unos pocos clics en la interfaz del panel
de Git. Además, los conflictos de fusión se pueden identificar y resolver utilizando las ventanas del editor
del IDE.
Important

El panel de Git solo está disponible en entornos de AWS Cloud9 creados con instancias de
Amazon EC2. No se puede acceder a esta característica si utiliza un entorno de desarrollo de
SSH (p. 515) en lugar de un entorno de EC2.
Además, el panel de Git está disponible de forma predeterminada solo en los entornos de AWS
Cloud9 nuevos creados después del 11 de diciembre de 2020. Estamos trabajando para habilitar
el panel de Git para entornos de desarrollo creados antes de esta fecha.

Para acceder a la interfaz e interactuar con ella, elija Window (Ventana), Source Control (Control de código
fuente). Si lo prefiere, para acceder al control de código fuente, puede hacer clic con el botón derecho
en en cualquier parte de los paneles laterales del IDE y elegir Source Control (Control de código fuente).
Después de esto, elija el icono de Git que se muestra en la interfaz del IDE.

La combinación de teclas Ctrl-Mayús-G también se puede utilizar para alternar la visualización del panel de
Git.

315
AWS Cloud9 Guía del usuario

Note

Las capturas de pantalla de la documentación del panel de Git muestran el IDE de AWS Cloud9
con el tema Jett Dark aplicado. Algunos elementos de la interfaz se muestran de manera diferente

316
AWS Cloud9 Guía del usuario
Administración del control de
código fuente con el panel de Git

si utiliza el IDE con un tema diferente. Para abrir el panel de Git, puede elegir un enlace con la
etiqueta Source Control (Control de código fuente) en lugar del icono de Git.

Temas
• Administración del control de código fuente con el panel de Git (p. 317)
• Referencia: Comandos de Git disponibles en el panel de Git (p. 333)

Administración del control de código fuente con el


panel de Git
La extensión del panel de Git para AWS Cloud9 proporciona un cómodo acceso a la interfaz de usuario
tanto a los comandos básicos como a los avanzados de Git.

En esta sección se muestra cómo acceder a las funciones clave de Git para administrar el control de
código fuente. Los procedimientos se centran en el uso del menú del panel de Git para ejecutar comandos
de Git en su repositorio y su contenido.

317
AWS Cloud9 Guía del usuario
Administración del control de
código fuente con el panel de Git

Para acceder a cualquier comando de Git compatible, también puede comenzar a ingresar el nombre en el
cuadro de búsqueda del panel de Git:

318
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git

Asimismo, puede ver los comandos reales de Git que se ejecutan cuando interactúa con la interfaz del
panel de Git. Para ver la actividad de la línea de comandos, vaya al menú del panel de Git y elija Show Git
Output (Mostrar salida de Git).

Inicialización o clonación de un repositorio de Git


Un repositorio de Git (“repositorio”) contiene el historial completo de un proyecto desde el principio. Un
repositorio consta de todas las instantáneas del contenido del proyecto capturadas cada vez que se
confirmaron archivos provisionales a ese repositorio.

El panel de Git admite ambas formas de obtener un repositorio de Git:

• Inicializar un directorio existente como un repositorio de Git.

319
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git

• Clonar un repositorio existente y copiarlo en el directorio local.

Note

Las opciones de interfaz para inicializar o clonar un repositorio solo están disponibles si aún no
tiene ningún repositorio de Git agregado a la carpeta del área de trabajo de su entorno. Si ya
tiene un directorio de trabajo para un repositorio, la ventana del panel de Git muestra el estado
del directorio de trabajo y del área de almacenamiento provisional. El menú del panel de Git
también está disponible para proporcionar acceso a los comandos de Git que puede ejecutar en el
repositorio.

Para inicializar o clonar un repositorio

1. Si el panel de Git aún no está disponible, para acceder a este elija Window (Ventana), Source Control
(Control de código fuente) y, a continuación, seleccione el icono de Git.
Note

También puede abrir el panel de Git usando el método abreviado del teclado Ctrl+Mayús+G.
2. Elija si desea inicializar un nuevo repositorio o clonar uno existente.

Initialize a repository

• En el panel de Git, elija Initialize Repository (Inicializar repositorio).


• A continuación, elija la carpeta del área de trabajo donde se inicializará el repositorio de Git.
Puede ingresar una ruta a la carpeta, elegir una ruta o elegir una carpeta en un cuadro de
diálogo.
• Si utiliza un cuadro de diálogo, seleccione la carpeta de destino y elija Initialize Repository
(Inicializar repositorio).

320
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git

Después de inicializar el repositorio de Git en la carpeta seleccionada, el panel de Git muestra


todos los archivos que ya están en esa carpeta como sin seguimiento y listos para agregar al área
de almacenamiento provisional de Git.

321
AWS Cloud9 Guía del usuario
Almacenamiento provisional y confirmación de archivos

Clone a repository

• En la ventana del panel de Git, elija Clone Repository (Clonar repositorio).


• A continuación, ingrese una URL para el repositorio remoto que desea clonar (https://
github.com/my-own-repo/my-repo-project-name.git, por ejemplo, para clonar un
repositorio alojado en GitHub) y pulse Intro.
• En el cuadro de diálogo que se muestra, seleccione una carpeta de área de trabajo para el
repositorio clonado y elija Select Repository Location (Seleccionar ubicación del repositorio).

Note

Si accede a un repositorio alojado en un sitio externo (GitHub, por ejemplo), también


debe ingresar un nombre de usuario y una contraseña para que el sitio complete el
proceso.

Después de clonar el repositorio remoto en la carpeta seleccionada, puede ejecutar el comando


git pull para sincronizar el repositorio local con los cambios más recientes en el repositorio
remoto. Para obtener más información, consulte Trabajo con repositorios remotos (p. 329).

Almacenamiento provisional y confirmación de


archivos
Después de obtener un repositorio de Git, puede comenzar a llenarlo con contenido mediante un proceso
de dos pasos:

1. Agregue contenido sin seguimiento o modificado recientemente al área de almacenamiento provisional.


2. Confirme los archivos del área de almacenamiento provisional en el directorio de trabajo.

Important

Es posible que no desee confirmar todos los archivos del directorio de trabajo en el repositorio.
Por ejemplo, es poco probable que desee agregar archivos generados durante el tiempo de
ejecución al repositorio del proyecto. Con el panel de Git, puede marcar archivos para que se
ignoren. Para ello, debe agregarlos a una lista en un archivo .gitignore.
Para actualizar la lista en .gitignore, haga clic con el botón derecho en un archivo que no se
haya agregado al área de almacenamiento provisional y seleccione Add File to .gitignore (Agregar
archivo a .gitignore). El IDE abre el archivo .gitignore y el nombre del archivo seleccionado se
agrega a la lista de archivos ignorados.
Para obtener información sobre el uso de la coincidencia de patrones en .gitignore para
excluir tipos de archivo, consulte la referencia pertinente en el sitio git-scm.com.

Stage files

Los archivos sin seguimiento (con la etiqueta “U”) y los archivos modificados (con la etiqueta “M”) que
no se han agregado al área de almacenamiento provisional se enumeran en Changes (Cambios) en el
panel de Git.

322
AWS Cloud9 Guía del usuario
Almacenamiento provisional y confirmación de archivos

Usando la interfaz del panel de Git, puede agregar archivos específicos o todos los archivos sin
seguimiento y modificados al área de almacenamiento provisional:

• Archivos específicos: inserte una pausa en el archivo y, a continuación, elija + para agregarlo al
área de almacenamiento provisional. También puede hacer clic con el botón derecho en el archivo y
elegir Stage Changes (Almacenar provisionalmente los cambios).
• Todos los archivos: vaya al menú del panel de Git y elija Stage All Changes (Almacenar
provisionalmente todos los cambios).

Los archivos agregados al índice del repositorio se enumeran en Staged Changes (Cambios
almacenados provisionalmente). Los archivos sin seguimiento anterior se etiquetan con “A” para
indicar que se han almacenado provisionalmente.

Note

También puede quitar cambios específicos o todos los cambios del almacenamiento
provisional. Para un solo archivo, inserte una pausa en el archivo y, a continuación, elija
-. También puede hacer clic con el botón derecho en el archivo y elegir Unstage Changes
(Quitar cambios del almacenamiento provisional). Para quitar todos los cambios del
almacenamiento provisional, vaya al menú del panel de Git y elija Unstage All Changes
(Quitar todos los cambios del almacenamiento provisional).

323
AWS Cloud9 Guía del usuario
Visualización de diferentes versiones de archivo

Commit files

Puede usar el comando commit de Git para capturar los archivos almacenados provisionalmente
como una instantánea permanente en el repositorio. Puede usar la interfaz del panel de Git para elegir
los archivos que desea confirmar:

• Confirmar archivos en el área de almacenamiento provisional: vaya al menú del panel de Git y elija
Commit (Confirmación) o Commit Staged (Confirmación almacenada provisionalmente).
• Confirmar todos los archivos del directorio de trabajo: vaya al menú del panel de Git y elija Commit
All (Confirmar todo). (Esta opción utiliza el comando git add para agregar archivos al área de
almacenamiento provisional antes de llamar a git commit).

Note

También puede utilizar las opciones amend y signed-off al confirmar archivos con el
panel de Git. La opción amend modifica el mensaje de confirmación de la confirmación más
reciente. La opción sign-off puede identificar quién realizó la confirmación en el registro de
Git.
También puede revertir una confirmación, para lo cual debe ir al menú del panel de Git y
elegir Undo Last Commit (Deshacer última confirmación).

Visualización de diferentes versiones de archivo


Puede comparar versiones de un archivo que se ha modificado después de almacenarlo provisionalmente
o confirmarlo.

• Archivos enumerados en Changes (Cambios): elija la “M” para ver las diferencias entre la versión
del directorio de trabajo y la versión almacenada provisionalmente por última vez o confirmada en el
repositorio.
• Archivos enumerados en Staged Changes (Cambios almacenados provisionalmente): elija la “M” para
ver las diferencias entre la versión del área de almacenamiento provisional y la versión confirmada por
última vez en el repositorio.

Después de elegir “M”, una ventana de IDE muestra las diferencias entre las dos versiones del archivo.
Un lado muestra la versión que se sigue como actual en el repositorio. El otro lado muestra la versión
modificada que aún no está confirmada.

Uso de las ramificaciones


Git facilita enormemente la administración del flujo de trabajo al permitirle trabajar en nuevas
características en ramificaciones que son independientes de la ramificación principal del repositorio. Puede
cambiar sin problemas entre varias ramificaciones mientras garantiza que siempre tiene código fuente listo
para compilar en la ramificación principal.

Creación de una ramificación

Crear una ramificación implica asignar un nombre a la ramificación y seleccionar su punto de partida.

324
AWS Cloud9 Guía del usuario
Uso de las ramificaciones

1. En el menú del panel de Git, elija Checkout to (Pago a). También puede elegir el nombre de la
ramificación actual que se muestra en la parte inferior del panel de Git.

325
AWS Cloud9 Guía del usuario
Uso de las ramificaciones

326
AWS Cloud9 Guía del usuario
Uso de las ramificaciones

2. Elija una opción para crear una nueva ramificación:

• Create new branch (Crear de una nueva ramificación): la nueva ramificación comienza desde la
última confirmación de la actual.
• Crear de una nueva ramificación from (Crear una nueva ramificación a partir de): la nueva
ramificación comienza desde la última confirmación de la ramificación que se selecciona en una
pantalla posterior.
3. Ingrese el nombre de la nueva ramificación.
4. Si está especificando una ramificación específica como punto de partida para su ramificación,
seleccione una de la lista.

Después de cambiar a la nueva ramificación, puede verificar el nombre de la ramificación en la parte


inferior del panel de Git.
Note

Si trabaja con un repositorio remoto, publique la nueva ramificación (p. 329) en el repositorio
remoto ascendente para permitir que otros usuarios accedan a su contenido.

Cambio de ramificaciones

Una de las ventajas clave de administrar el control de código fuente con Git es que puede cambiar entre
diferentes proyectos simplemente cambiando de ramificaciones.
Important

No puede cambiar de ramificación si tiene archivos en la ramificación actual que no se han


confirmado en el repositorio. Primero debe limpiar su directorio de trabajo, para lo cual debe
confirmar (p. 322) o almacenar (p. 332) su trabajo.

1. Elija el nombre de la ramificación actual en la parte inferior del panel de Git. Alternativamente, vaya al
panel de Git y elija Checkout to (Pago a).
2. Elija una ramificación de la lista que se muestra.

Después del cambio, el directorio de trabajo del repositorio se actualiza con las versiones del archivo
confirmadas más recientemente en la ramificación seleccionada.

Fusión de ramificaciones

Cuando termine de trabajar en una característica en una ramificación discreta, normalmente querrá
integrar los cambios en el proyecto principal. Con Git, este tipo de integración se facilita mediante la fusión
de una ramificación (una ramificación de características, por ejemplo) en otra (generalmente la ramificación
principal o predeterminada del repositorio).

1. Para seleccionar una ramificación en la que va a fusionar otra ramificación, vaya al menú del panel de
Git y elija Checkout to (Pago a).

También puede elegir el nombre de la ramificación actual en la parte inferior del panel de Git.
2. En la lista que se muestra, elija una ramificación a la que cambiar.
3. En el cuadro Búsqueda del panel de Git, comience a ingresar la palabra “fusionar”.

Cuando Git: Merge Branch aparezca bajo la lista de comandos, elíjalo.

327
AWS Cloud9 Guía del usuario
Uso de las ramificaciones

4. En la lista que se muestra, elija una ramificación para fusionarla con la ramificación de destino.

Si la fusión se completa sin conflictos, la interfaz del panel de Git se actualiza para mostrar la
ramificación de destino que contiene los cambios combinados.

Al fusionar ramificaciones (p. 324), puede encontrar conflictos de fusión derivados de cambios
incompatibles realizados en el mismo contenido. Si esto sucede, se le advierte de que debe resolver los
conflictos antes de confirmar la fusión.

Puede utilizar la ventana del editor de código del IDE para identificar el contenido conflictivo en las dos
ramificaciones y luego realizar cambios para resolver las diferencias.

328
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos

Trabajo con repositorios remotos


Los repositorios remotos alojados en Internet o en una red facilitan la colaboración al permitir que los
miembros del equipo compartan los cambios que han confirmado en sus responsabilidades locales. Al
usar los comandos de Git que cargan y descargan datos, se asegura de que el contenido del repositorio
“descendente” (local) se sincroniza con los del repositorio “ascendente” (remoto).

Publicación de una ramificación en un repositorio remoto

Después de crear una ramificación para un repositorio local, esta es privada para usted y no está
disponible para sus colaboradores hasta que la inserta en el repositorio remoto “ascendente”.

1. Para publicar la ramificación actual, vaya al menú del panel de Git y elija Publish Branch (Publicar
ramificación). También puede hacer clic en el símbolo de nube situado junto al nombre de la
ramificación en la parte inferior del panel de Git.

329
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos

330
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos

2. Si es necesario, ingrese el nombre de usuario y la contraseña para acceder al repositorio remoto.

Si la ramificación se publica correctamente en el repositorio remoto, aparece un símbolo de sincronización


junto al nombre de la ramificación en la parte inferior del panel de Git. Elija esta opción para sincronizar el
contenido de los repositorios locales y remotos.

Inserción y extracción de contenido entre repositorios locales y


remotos
Cuando se usa Git para colaborar en un proyecto compartido, normalmente comienza por extraer los
cambios recientes realizados por otros miembros del equipo del repositorio remoto en su repositorio local.
Después de confirmar los cambios en su repositorio local, los inserta al repositorio remoto para que el resto

331
AWS Cloud9 Guía del usuario
Almacenamiento y recuperación de archivos

del equipo pueda acceder a ellos. Estas acciones se realizan mediante los comandos git pull y git
push.
Note

Debe ingresar un nombre de usuario y una contraseña al insertar y extraer cambios en la mayoría
de los repositorios alojados (como los de GitHub, por ejemplo).

Pull changes from remote

Con el comando git pull a través de la interfaz del panel de Git puede actualizar su repositorio
local con los últimos cambios confirmados en una ramificación en el repositorio remoto.

1. En el menú del panel de Git, elija Checkout to (Pago a).


2. En la lista de ramificaciones, elija la ramificación local en la que desee extraer los cambios.
3. A continuación, vaya al menú del panel de Git y elija Pull from (Extraer de).
4. Seleccione un repositorio remoto y, a continuación, una ramificación de ese repositorio de la que
se extraerán los cambios.

Después de realizar una extracción, puede acceder a los archivos recuperados del repositorio remoto
en el directorio de trabajo del repositorio. Después de modificar los archivos, puede insertar los
cambios en la ramificación remota.
Push changes to remote

Si usa git push a través de la interfaz del panel de Git, puede actualizar el repositorio remoto con
los últimos cambios en una ramificación especificada en su repositorio local.

1. En el menú del panel de Git, elija Checkout to (Pago a).


2. En la lista de ramificaciones, elija la ramificación local de la que desee extraer los cambios.
3. A continuación, vaya al menú del panel de Git y elija Push to (Insertar en).
4. Seleccione un repositorio remoto y, a continuación, una ramificación de ese repositorio en la que
insertar los cambios.

Después de una inserción, otros miembros del equipo pueden acceder a los cambios. Para ello, deben
insertarlos en sus propias copias locales del repositorio.

Almacenamiento y recuperación de archivos


Con la característica de almacenamiento de Git, puede cambiar de ramificación sin confirmar primero los
archivos almacenados provisionalmente o modificados. La característica de almacenamiento captura el
estado actual del directorio de trabajo y el área de almacenamiento provisional y lo guarda para su uso
posterior. Esta característica es útil cuando todavía está trabajando en contenido sin terminar y necesita
cambiar de ramificación sin demora.

Almacenamiento de trabajo

1. Para almacenar el estado actual de su directorio de trabajo, vaya al menú del panel de Git y elija una
de las siguientes opciones:

• Stash (Almacenar): todos los archivos modificados o almacenados provisionalmente en el directorio


de trabajo se agregan al almacenamiento. Los archivos sin seguimiento no se agregan.
• Stash (include Untracked) (Almacenar [incluidos sin seguimiento]): todos los archivos del
directorio de trabajo, incluidos aquellos de los que aún no se realiza el seguimiento, se agregan al
almacenamiento.

332
AWS Cloud9 Guía del usuario
Referencia: Comandos de Git disponibles en el panel de Git

2. Ingrese un mensaje opcional que le ayude a identificar el almacenamiento para recuperarlo


posteriormente.

Después del almacenamiento, la interfaz del panel de Git se actualiza para mostrar el directorio de trabajo
que se ha limpiado.

Recuperación de un almacenamiento

1. Para recuperar un almacenamiento y aplicarlo a su directorio de trabajo, vaya al menú del panel de Git
y elija una de las siguientes opciones:

• Apply Stash (Abrir almacenamiento): aplique un almacenamiento a su directorio de trabajo y


consérvelo para su uso posterior.
• Pop Stash (Mostrar almacenamiento): aplique un almacenamiento seleccionado a su directorio de
trabajo y elimine el almacenamiento de la pila de almacenamiento.

Note

También puede optar por aplicar o abrir el último almacenamiento que se agregó a la pila de
escondite.
2. Seleccione un almacenamiento para aplicarlo al directorio de trabajo.

La interfaz del panel de Git se actualiza para mostrar el directorio de trabajo con el almacenamiento
aplicado.

Referencia: Comandos de Git disponibles en el


panel de Git
El menú del panel de Git para AWS Cloud9 proporciona un práctico acceso a la interfaz de usuario tanto
para los comandos básicos como avanzados de Git.

Ciertos comandos de Git, como los utilizados para fusionar y eliminar ramificaciones, por ejemplo, solo
están disponibles a través del campo de búsqueda del panel de Git.

También puede personalizar cómo el panel de Git ejecuta comandos e interactúa con repositorios. Para
modificar la configuración predeterminada, primero elija AWS Cloud9, Preferencias (Preferencias). A
continuación, en la ventana Preferences (Preferencias), en Project Settings (Configuración del proyecto),
elija Git.

Detenga el cursor sobre los iconos de información para leer descripciones breves de la configuración.

333
AWS Cloud9 Guía del usuario
Referencia para los comandos de Git
disponibles en el menú del panel de Git

Note

Puede acceder a documentación detallada sobre los comandos de Git de la lista en el sitio oficial
de Git: https://git-scm.com/doc.

Referencia para los comandos de Git disponibles en el


menú del panel de Git
Para acceder a las opciones en la pestaña Git panel (Panel de Git), seleccione el símbolo opuesto al
nombre del repositorio.

334
AWS Cloud9 Guía del usuario
Referencia para los comandos de Git
disponibles en el menú del panel de Git

Menú del panel de Git

Opción de menú Descripción

Commit (Confirmar Confirma el contenido agregado el área de almacenamiento


provisional en el directorio de trabajo del repositorio. Agrega un
mensaje de confirmación.

Refresh (Actualizar Actualiza la interfaz de GitPanel para mostrar el estado del


directorio de trabajo y del área de almacenamiento provisional.

Pull (Extraer Extrae los cambios más recientes de un repositorio remoto en el


repositorio local.

Pull (Rebase) (Extraer [cambiar la Vuelve a aplicar los cambios locales a los cambios remotos
base) extraídos de una ramificación remota.

Push from… (Insertar desde... Inserta en la ramificación del repositorio remoto los cambios
confirmados en una ramificación del repositorio local.

Push (Insertar Inserta en el repositorio remoto los cambios confirmados en el


repositorio local.

Push to... (Insertar en... Inserta en la ramificación del repositorio remoto los cambios
confirmados en una ramificación del repositorio local.

Sync (Sincronizar Sincroniza el contenido de los repositorios locales y remotos


mediante la ejecución de un comando git pull seguido de un
comandogit push

Checkout to… (Extraer en... Cambia a una ramificación existente o crea una ramificación y
cambia a ella.

Publish Branch (Publicar ramificación Publica una ramificación privada creada en el repositorio local y
hace que esté disponible en el repositorio remoto.

Commit All (Confirmar todo Confirma los archivos (almacenados provisionalmente o no)
en el repositorio. (Se ejecuta un comando git add -A para
agregar archivos al área de almacenamiento provisional antes
de que se ejecute el comando git commit).

Commit All (Amend) (Confirmar todo Modifica el mensaje de la última confirmación. (Agrega la opción
[modificar) -amend cuando se ejecuta el comando git commit).

Commit All (Signed Off) (Confirmar Identifica quién realizó la confirmación en el registro de Git.
todo [aprobado) (Agrega la opción -signed-off cuando se ejecuta el comando
git commit).

Commit Staged (Confirmar Solo confirma los archivos almacenados provisionalmente en el


almacenados provisionalmente repositorio.

335
AWS Cloud9 Guía del usuario
Comandos de Git disponibles en el
campo de búsqueda del panel de Git

Opción de menú Descripción

Commit Staged (Amend) (Confirmar Modifica el mensaje de la última confirmación. (Agrega la opción
almacenados provisionalmente -amend cuando se ejecuta el comando git commit).
[modificar)

Commit Staged (Signed Off) Identifica quién realizó la confirmación en el registro de Git.
(Confirmar almacenados (Agrega la opción -signed-off cuando se ejecuta el comando
provisionalmente [aprobados) git commit).

Undo Last Commit (Deshacer la última Deshace la confirmación anterior. Los archivos se mueven de
confirmación) nuevo al área de almacenamiento provisional.

Discard All Changes (Descartar todos Elimina todos los archivos y carpetas del área de
los cambios almacenamiento provisional del repositorio.

Stage All Changes (Almacenar Agrega contenido sin seguimiento y modificado recientemente
provisionalmente todos los cambios al área de almacenamiento provisional.

Unstage All Changes (Quitar todos Mueve todos los archivos fuera del área de almacenamiento
los cambios del almacenamiento provisional. Los archivos quitados del almacenamiento
provisional provisional no se pueden confirmar en el repositorio.

Apply Latest Stash (Aplicar Aplica al directorio de trabajo el último almacenamiento que
almacenamiento más reciente se agregó al almacenamiento de la pila. El almacenamiento
permanece en la pila.

Apply Stash… (Aplicar Aplica al directorio de trabajo un almacenamiento seleccionado


almacenamiento... de la pila de almacenamiento. El almacenamiento permanece
en la pila.

Pop Latest Stash (Mostrar Aplica al directorio de trabajo el último almacenamiento que
almacenamiento más reciente se agregó al almacenamiento de la pila. A continuación, el
almacenamiento se elimina de la pila.

Pop Stash... (Mostrar Aplica un almacenamiento seleccionado al directorio de trabajo.


almacenamiento... A continuación, el almacenamiento se elimina de la pila.

Stash (Almacenamiento Agrega a un almacenamiento designado los archivos


modificados y almacenados provisionalmente en el directorio de
trabajo.

Stash (include Untracked) Agrega todos los archivos, incluidos los archivos sin
(Almacenamiento [incluir sin seguimiento, del directorio de trabajo a un almacenamiento
seguimiento) designado.

Show Git Output (Mostrar salida de Git Muestra una ventana con los comandos de Git que se ejecutan
cuando interactúa con la interfaz del panel de Git.

Comandos de Git disponibles en el campo de


búsqueda del panel de Git
También puedes acceder a algunos comandos compatibles de Git que no están disponibles en el menú del
panel de Git si escribe “git” en el cuadro de búsqueda:

336
AWS Cloud9 Guía del usuario
Comandos de Git disponibles en el
campo de búsqueda del panel de Git

La siguiente tabla proporciona una descripción de los comandos de Git seleccionados a los que puede
acceder de esta manera.

Comandos seleccionados de Git

Opción de menú Descripción

Git: Agregar conexión remota Agrega al archivo de configuración de Git una conexión a un
repositorio remoto.

Git: Eliminar una ramificación Elimina una ramificación especificada.

Git: Recuperación Descarga el contenido de una ramificación en el repositorio


remoto. En contraste con un objeto git pull, los cambios
remotos no se fusionan en el repositorio local.

Git: Fusionar ramificación Integra los cambios realizados en una ramificación en otra
ramificación. Para obtener más información, consulte el
procedimiento de fusión de ramificaciones (p. 327).

337
AWS Cloud9 Guía del usuario
¿Por qué usar AWS Toolkit?

AWS Toolkit
¿Por qué usar AWS Toolkit?
AWS Toolkit es una extensión para el entorno de desarrollo integrado (IDE) de AWS Cloud9. Esta
extensión facilita a los desarrolladores el acceso a una amplia gama de servicios de AWS y el trabajo con
estos.
Important

El kit de herramientas de AWS solo está disponible en entornos de AWS Cloud9 creados con
instancias de Amazon EC2. No se puede acceder a esta característica si utiliza un entorno de
desarrollo de SSH (p. 515) en lugar de un entorno de EC2.
Además, la asistencia para AWS Toolkit se proporciona como una característica integrada
administrada por AWS Cloud9. Actualmente, los clientes no pueden personalizar el IDE de AWS
Cloud9 mediante la instalación de extensiones de terceros.

En la actualidad, los siguientes servicios y recursos de AWS son accesibles a través de la extensión de
AWS Toolkit:

• AWS App Runner (p. 351)


• API Gateway (p. 350)
• Pilas de AWS CloudFormation (p. 358)
• Registros de CloudWatch (p. 358)
• AWS Lambda* (p. 360)
• Recursos (p. 365)
• Objetos y buckets de Amazon S3 (p. 366)
• Aplicaciones de AWS Serverless Application Model (p. 370)
• Step Functions y las máquinas de estado (p. 382)
• Documentos de automatización de Systems Manager (p. 384)

Important

* Las características que proporciona AWS Toolkit para trabajar con funciones y aplicaciones
sin servidor de AWS Lambda reemplazan la asistencia que se proporcionaba anteriormente en
la sección Lambda de la ventana AWS Resources (Recursos de AWS). Cuando está habilitado,
AWS Toolkit es su principal herramienta para trabajar con funciones de Lambda y la ventana AWS
Resources (Recursos de AWS) no está disponible.

Habilitación de AWS Toolkit


Si AWS Toolkit no está disponible en su entorno, puede habilitarlo en la pestaña Preferences
(Preferencias).

Para habilitar AWS Toolkit

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), en el panel de navegación lateral, elija AWS Settings
(Configuración de AWS).

338
AWS Cloud9 Guía del usuario
Administración de credenciales de acceso para AWS Toolkit

3. En el panel AWS Resources (Recursos de AWS), active AWS AWS Toolkit para que muestre una
marca de verificación sobre un fondo verde.

Cuando se habilita AWS Toolkit, el IDE se actualiza para mostrar la configuración Enable AWS Toolkit
(Habilitar AWS Toolkit) y la opción AWS Toolkit en el lado del IDE debajo de la opción Environment
(Entorno).

Important

Si la instancia de EC2 del entorno de AWS Cloud9 no tiene acceso a internet (no se permite
tráfico saliente), puede aparecer un mensaje después de activar AWS Toolkit y volver a lanzar
el IDE. Este mensaje indica que las dependencias que requiere AWS Toolkit no se han podido
descargar. Tampoco puede usar AWS Toolkit.
Para solucionar este problema, cree un punto de enlace de la VPC para Amazon S3. Esto permite
el acceso a un bucket de Amazon S3 en su región de AWS, que contiene las dependencias
necesarias para mantener el IDE actualizado.
Para obtener más información, consulte Configuración de puntos de enlace de la VPC para
Amazon S3 para descargar dependencias (p. 75) .

Administración de credenciales de acceso para


AWS Toolkit
AWS Toolkit le permite interactuar con una amplia gama de servicios de AWS, por lo que debe asegurarse
de que la entidad de IAM que se utiliza tiene los permisos necesarios para interactuar con esos servicios.
La manera más sencilla de obtener permisos es usar credenciales temporales administradas de
AWS (p. 569), que funcionan siempre que un entorno de EC2 accede a un servicio de AWS en nombre
de una entidad AWS (por ejemplo, un usuario de IAM).

No obstante, si ha lanzado la instancia de EC2 de su entorno de desarrollo en una subred privada,


las credenciales temporales administradas por AWS no están disponibles. Como alternativa, puede
permitir que AWS Toolkit acceda a sus servicios de AWS mediante la creación manual de su propio
conjunto de credenciales, que se conoce como perfil. Los perfiles incluyen credenciales de larga duración
denominadas claves de acceso, que puede obtener de la consola de IAM.

Crear un perfil para proporcionar una credencial de acceso para AWS Toolkit

1. Para obtener sus claves de acceso (que consisten en un ID de clave de acceso y una clave de acceso
secreta), vaya a la consola de IAM en https://console.aws.amazon.com/iam.
2. Elija Users (Usuarios) en la barra de navegación y, a continuación, elija su nombre de usuario de AWS
(no la casilla).
3. Elija la pestaña Security credentials (Credenciales de seguridad) y, a continuación, Create access key
(Crear clave de acceso).
Note

Si ya tiene una clave de acceso, pero no puede acceder a la clave secreta, desactive la clave
anterior y cree una nueva.
4. En el cuadro de diálogo que muestra el ID de clave de acceso y la clave de acceso secreta, elija
Download .csv file (Descargar archivo .csv) para almacenar esta información en un lugar seguro.
5. Después de descargar las claves de acceso, lance un entorno de AWS Cloud9 e inicie una sesión del
terminal mediante las opciones Window (Ventana), New Terminal (Nuevo terminal).
6. En una ventana de terminal, ejecute el siguiente comando:

339
AWS Cloud9 Guía del usuario
Uso de roles de IAM para conceder permisos
a aplicaciones en instancias de EC2

aws configure --profile toolkituser

En este caso, toolkituser es el nombre del perfil que se está utilizando, pero puede elegir el suyo
propio.
7. En la línea de comandos, ingrese el AWS Access Key ID y la AWS Secret Access Key que
descargó previamente desde la consola de IAM.

• Para Default region name, especifique su región de AWS (por ejemplo, us-east-1).
• Para Default output format, especifique un formato de archivo (json, por ejemplo).

Note

Para obtener más información acerca de las opciones al configurar un perfil, consulte
Fundamentos de configuración en la Guía del usuario de AWS Command Line Interface.
8. Una vez que haya creado correctamente su perfil, lance AWS Toolkit, vaya a la sección AWS Toolkit
menu (p. 343) (Menú de AWS Toolkit) y elija Connect to AWS (Conectarse a AWS).
9. Para el campo Select an AWS credential profile (Seleccionar un perfil de credenciales de AWS), elija
el perfil que acaba de crear en el terminal (profile:toolkituser, por ejemplo).

Si el perfil seleccionado contiene credenciales de acceso válidas, el panel AWS Explorer se actualiza para
mostrar los servicios de AWS a los que ahora puede acceder.

Uso de roles de IAM para conceder permisos a


aplicaciones en instancias de EC2
También puede utilizar un rol de IAM para administrar las credenciales temporales de las aplicaciones que
se ejecutan en una instancia de EC2. El rol proporciona permisos temporales que las aplicaciones pueden
utilizar cuando hacen llamadas a otros recursos de AWS. Cuando lanza una instancia de EC2, debe
especificar un rol de IAM para asociarlo a la instancia. Esto permite a las aplicaciones que se ejecutan en
dicha instancia utilizar las credenciales temporales facilitadas por el rol al realizar solicitudes de API en los
servicios de AWS.

Después de crear el rol, debe asignarlo, junto con el permiso asociado, a la instancia mediante la creación
de un perfil de instancias. El perfil de instancias se adjunta a la instancia y puede proporcionar las
credenciales temporales del rol a una aplicación que se ejecute en la instancia.

Para obtener más información, consulte Uso de un rol de IAM para conceder permisos a aplicaciones que
se ejecutan en instancias Amazon EC2 en la Guía del usuario de IAM.

Identificación de AWS Toolkit


La captura de pantalla siguiente muestra tres componentes clave de la interfaz de usuario de AWS Toolkit:

340
AWS Cloud9 Guía del usuario
Identificación de AWS Toolkit

341
AWS Cloud9 Guía del usuario
Desactivación de AWS Toolkit

1. Ventana AWS Explorer: permite interactuar con los servicios de AWS a los que se puede acceder a
través de Toolkit. Puede alternar entre mostrar y ocultar la ventana AWS Explorer mediante la opción
AWS en el lado izquierdo del IDE. Para obtener más información sobre el uso de este componente de
la interfaz y acceder a los servicios de AWS para diferentes regiones de AWS, consulte Uso de AWS
Explorer para trabajar con servicios y recursos en varias regiones de AWS (p. 343).
2. Menú Toolkit: permite administrar las conexiones a AWS, personalizar la visualización de la ventana
AWS Explorer, crear o implementar aplicaciones sin servidor, trabajar con repositorios de GitHub y
acceder a la documentación. Para obtener más información, consulte Acceso y uso del menú de AWS
Toolkit (p. 343) .
3. Panel AWS Configuration (Configuración de AWS): permite personalizar el comportamiento de los
servicios de AWS con los que interactúa mediante Toolkit. Para obtener más información, consulte
Modificación de la configuración de AWS Toolkit mediante el panel AWS Configuration (Configuración
de AWS) (p. 347) .

Desactivación de AWS Toolkit


Puede desactivar AWS Toolkit de en la pestaña Preferences (Preferencias).

Para desactivar AWS Toolkit

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).


2. En la pestaña Preferences (Preferencias), en el panel de navegación lateral, elija AWS Settings
(Configuración de AWS).
3. En el panel AWS Resources (Recursos de AWS), desactive AWS AWS Toolkit.

Cuando desactiva AWSToolkit, el IDE se actualiza para eliminar la opción AWS Toolkit en el lado del
IDE debajo de la opción Environment (Entorno).

Temas de AWS Toolkit


• Navegación y configuración de AWS Toolkit (p. 342)
• Uso de AWS App Runner con AWS Toolkit (p. 351)
• Trabajar con API Gateway mediante el AWS Toolkit (p. 350)
• Uso de pilas de AWS CloudFormation mediante AWS Toolkit (p. 358)
• Uso de funciones de AWS Lambda con AWS Toolkit (p. 360)
• Uso de los recursos (p. 365)
• Trabajo con Amazon S3 mediante AWS Toolkit (p. 366)
• Trabajar con aplicaciones sin servidor de AWS mediante AWS Toolkit (p. 370)

Navegación y configuración de AWS Toolkit


Puede acceder a los recursos y modificar la configuración a través de los elementos de la interfaz de AWS
Toolkit siguientes:

• Ventana AWS Explorer (p. 343): acceda a los servicios de AWS desde diferentes regiones de AWS.

342
AWS Cloud9 Guía del usuario
Uso de AWS Explorer para trabajar con
servicios y recursos en varias regiones de AWS

• Menú de AWS Toolkit (p. 343): cree e implemente aplicaciones sin servidor, muestre u oculte regiones
de AWS, acceda a la asistencia del usuario e interactúe con repositorios de Git.
• Panel Configuración de AWS (p. 347): modifique la configuración que afecta a la forma en que puede
interactuar con los servicios de AWS en AWS Toolkit.

Uso de AWS Explorer para trabajar con servicios y


recursos en varias regiones de AWS
La ventana AWS Explorer le permite seleccionar servicios de AWS y trabajar con recursos específicos
asociados a ese servicio. En AWS Explorer, elija un nodo de nombre de servicio (API Gateway o Lambda,
por ejemplo) y, a continuación, elija un recurso específico asociado a ese servicio (una API de REST o
una función de Lambda, por ejemplo). Al elegir un recurso específico, un menú muestra las opciones de
interacción disponibles, como cargar/descargar, invocar o copiar.

Por ejemplo, si las credenciales de su cuenta de AWS le permiten acceder a las funciones de Lambda,
puede expandir el nodo Lambda enumerado para una región de AWS y, a continuación, seleccionar una
función de Lambda específica que se pueda invocar o cargar como código en el IDE de AWS Cloud9.
También puede hacer clic con el botón derecho en el título del nodo para comenzar a crear una aplicación
que utilice AWS Serverless Application Model.
Note

Si no puede ver la opción para abrir la ventana AWS Explorer en el IDE, asegúrese de que
ha habilitado AWS Toolkit. Para obtener más información, consulte Habilitación de AWS
Toolkit (p. 338).

La ventana AWS Explorer también puede mostrar servicios alojados en varias regiones de AWS.

Para acceder a los servicios de AWS de una región AWS seleccionada

1. En la ventana AWS Explorer, elija el menú Toolkit, Show region in the Explorer (Mostrar región en
Explorer).
2. Desde la lista Select a region to show in the AWS Explorer (Seleccionar una región para mostrarla en
AWS Explorer), elija una región de AWS.

La región de AWS seleccionada se agrega a la ventana AWS Explorer. Para acceder a los servicios y
recursos disponibles, elija la flecha (>) delante del nombre de la región de AWS.

Note

También puede ocultar las regiones de AWS seleccionadas en la ventana AWS Explorer
utilizando las siguientes opciones:

• Haga clic con el botón derecho en la región de AWS y elija Hide region from the Explorer
(Ocultar región de Explorer).
• En el menú de AWS Toolkit, elija Hide region from the Explorer (Ocultar región de Explorer) y
seleccione una región para ocultarla.

Acceso y uso del menú de AWS Toolkit


AWS Toolkit proporciona acceso a las opciones para crear e implementar aplicaciones sin
servidor (p. 370). El menú también le permite administrar conexiones, actualizar la ventana AWS:
Explorer, acceder a documentación e interactuar con los repositorios de GitHub.

343
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit

Para acceder al menú Toolkit, elija el icono de desplazamiento situado frente al título AWS: Explorer en la
ventana AWS Explorer.

344
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit

345
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit

En la siguiente tabla se describen las opciones disponibles en el menú Toolkit.

Opciones del menú de Toolkit

Opción de menú Descripción

Refresh AWS Explorer (Actualizar AWS Explorer) Elija esta opción para actualizar AWS Explorer
para mostrar cualquier servicio de AWS que se
haya modificado desde que abrió por última vez la
ventana.

Conéctese a AWS Conecta AWS Toolkit a una cuenta de AWS


con las credenciales almacenadas en un
perfil. Para obtener más información, consulte
Administración de credenciales de acceso para
AWS Toolkit (p. 339).

Show region in the Explorer (Mostrar región en Muestra una región de AWS en la ventana AWS
Explorer Explorer. Para obtener más información, consulte
Uso de AWS Explorer para trabajar con servicios y
recursos en varias regiones de AWS (p. 343).

Hide region from the Explorer (Ocultar región en Oculta una región de AWS en la ventana AWS
Explorer Explorer. Para obtener más información, consulte
Uso de AWS Explorer para trabajar con servicios y
recursos en varias regiones de AWS (p. 343)

Create new SAM Application (Crear nueva Genera un conjunto de archivos de código para
aplicación de SAM una nueva aplicación sin servidor de AWS. Para
obtener más información sobre la creación e
implementación de aplicaciones de SAM, consulte
Trabajar con aplicaciones sin servidor de AWS
mediante AWS Toolkit (p. 370).

Deploy SAM Application (Implementar aplicación Implementa una aplicación sin servidor en AWS.
de SAM Para obtener más información sobre la creación e
implementación de aplicaciones de SAM, consulte
Trabajar con aplicaciones sin servidor de AWS
mediante AWS Toolkit (p. 370).

View Quick Start (Ver inicio rápido Abre la guía de inicio rápido.

View Toolkit Documentation (Ver documentación Abre la guía del usuario de AWS Toolkit.
de Toolkit

Ver fuente en GitHub Abre el repositorio de GitHub para AWS Toolkit.

Create a New Issue on GitHub (Crear un nuevo Abre la página New Issue (Nuevo problema) de
problema en GitHub AWS Toolkit en GitHub

Submit Quick Feedback (Enviar comentarios Envíe comentarios privados y unidireccionales


rápidos al equipo de desarrollo de AWS Toolkit. Para
problemas que requieran conversaciones o
correcciones de errores, envíe un problema en
GitHub seleccionando la opción Create a New
Issue on GitHub (Crear un nuevo problema en
GitHub).

346
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)

Opción de menú Descripción

About AWS Toolkit (Acerca de AWS Toolkit) Muestra información sobre la versión de Toolkit en
ejecución y el sistema operativo de Amazon para el
que está configurado.

Modificación de la configuración de AWS Toolkit


mediante el panel AWS Configuration (Configuración
de AWS)
Para acceder al panel AWS Configuration (Configuración de AWS), elija AWS Cloud9, Preferences
(Preferencias). A continuación, en la ventana Preferences (Preferencias), en Project Settings
(Configuración del proyecto), elija AWS Configuration (Configuración de AWS).

347
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)

348
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)

En la siguiente tabla se describen las opciones disponibles en el panel AWS Configuration (Configuración
de AWS).

Opción de menú Descripción

AWS: Profile (Perfil Establece el nombre del perfil de credenciales del


que se van a obtener las credenciales.

AWS: On Default Region Missing (Falta la región Indica la acción que se va a realizar si la región de
predeterminada AWS predeterminada para el perfil de credenciales
seleccionado no está disponible en la ventana
AWS Explorer. Los usuarios pueden seleccionar
entre tres opciones:

• prompt (predeterminado): se pregunta a los


usuarios qué quieren hacer.
• add (agregar): la región de AWS se muestra en
la ventana AWS Explorer.
• ignore: no se realiza ninguna acción.

AWS > S3: Max Items Per Page (AWS > S3: Especifica cuántos objetos o carpetas de Amazon
máximo de elementos por página) S3 se muestran a la vez en la ventana AWS
Explorer. Cuando se muestra el número máximo,
puede elegir Load Mode (Cargar más) para
mostrar el siguiente lote.

El rango de valores aceptados para este campo


está entre 3 y 1000. Esta configuración solo
se aplica al número de objetos o carpetas que
se muestran a la vez. Todos los buckets que
ha creado se muestran a la vez. (De forma
predeterminada, puede crear hasta 100 buckets en
cada una de sus cuentas de AWS).

AWS > Samcli: Location (AWS > Samcli: ubicación) Indica la ubicación de la CLI de SAM que se utiliza
para crear, compilar, empaquetar e implementar
aplicaciones sin servidor (p. 370).

AWS > Samcli > Debug > Attach > Retry: Especifica cuántas veces intenta Toolkit adjuntar
Maximum: (AWS > Samcli > Depurar > Adjuntar > el depurador de la CLI de SAM antes de darse
Reintentar: máximo:) por vencido. El límite predeterminado es de 30
intentos.

(Cuando invoca localmente una función de Lambda


en modo de depuración en la CLI de SAM de AWS,
puede adjuntarle un depurador).

AWS > Samcli > Debug > Attach > Timeout: Millis: Especifica cuánto tiempo intenta Toolkit adjuntar
(AWS > Depurar > Adjuntar > Tiempo de espera: el depurador de la CLI de SAM antes de darse por
milisegundos:) vencido. El tiempo de espera predeterminado es
de 30 000 milisegundos (30 segundos).

(Cuando invoca localmente una función de Lambda


en modo de depuración en la CLI de SAM de AWS,
puede adjuntarle un depurador).

349
AWS Cloud9 Guía del usuario
API Gateway

Opción de menú Descripción

AWS : Log Level: (: Nivel de registro: Establece la categoría de eventos del flujo de
trabajo que se registran. Los niveles disponibles
son:

• Errors Only (Solo errores


• Errors and Warnings (Errores y advertencias
• Errors, Warnings, and Info (Errores, advertencias
e información): opción predeterminada
• Errors, Warnings, and Info, Verbose, and Debug
(Errores, advertencias e información, detallado y
depuración

AWS : Telemetry (: Telemetría Habilita o desactiva el envío de datos de uso a


AWS. Habilitado de forma predeterminada

Trabajar con API Gateway mediante el AWS Toolkit


API Gateway le permite crear API RESTful y API WebSocket que habilitan aplicaciones de comunicación
bidireccional en tiempo real. Para obtener más información sobre cómo crear y administrar API con API
Gateway, consulte la Guía para desarrolladores de API Gateway.

Con AWS Toolkit, puede configurar una llamada a una API REST especificando el recurso de REST, el tipo
de método y los datos que se pasan como entrada.

Invocación de API REST en API Gateway


Important

Llamar a métodos API con AWS Toolkit puede provocar cambios en los recursos que no se
podrán deshacer. Por ejemplo, si llama a un método POST, los recursos de la API se actualizan si
la llamada se lleva a cabo correctamente.

Puede invocar una instancia de API Gateway en AWS desde AWS Toolkit.

Para invocar una API REST

1. En la ventana AWS Explorer (Explorador de AWS), elija el nodo API Gateway para ver la lista de API
de REST disponibles en la región de AWS actual.
2. Haga clic con el botón derecho en una API de REST y elija Invoke on AWS (Invocar en AWS).
Note

El menú contextual también permite copiar la URL, el nombre y el nombre de recurso de


Amazon (ARN) de la API REST.

Se muestra la ventana Invoke methods (Métodos de invocación), que le permite configurar la llamada
a la API.
3. En Select a resource (Seleccionar un recurso), elija el recurso de REST con el que desea interactuar.
4. En Select a method (Seleccionar un método), elija uno de los siguientes tipos de método:

• GET: permite obtener un recurso del servicio backend al que se accede a través de la API.

350
AWS Cloud9 Guía del usuario
AWS App Runner

• OPTIONS: solicita información sobre los métodos y las operaciones que admite API Gateway.
• GET: crea un recurso en el servicio backend al que se accede a través de la API.
5. Para participar en la llamada al método de API, puede usar una cadena de consulta o una carga útil
con formato JSON:

• Cadena de consulta: ingrese una cadena de consulta con el formato


parameter1=value1&parameter2=value2. (Antes de usar cadenas de consulta, cree una
plantilla de mapeo para transformar las solicitudes web entrantes antes de que se envíen al backend
de integración).
• Formato JSON: puede definir una carga útil con formato JSON en el campo de texto grande en la
ventana Invoke methods (Métodos de invocación).

Por ejemplo, puede agregar un nuevo recurso con un método POST que contenga la siguiente carga
útil:

{"type": "soda", "price" : 3.99}

6. Elija el botón Invoke (Invocar) para llamar al recurso de la API REST.

La respuesta de la API de REST se muestra en la pestaña AWS Remote Invocations (Invocaciones


remotas de AWS). El cuerpo de la respuesta contiene los datos del recurso con formato JSON.

Uso de AWS App Runner con AWS Toolkit


AWS App Runner proporciona una forma rápida, sencilla y rentable de implementar desde el código fuente
o una imagen de contenedor directamente hacia una aplicación web escalable y segura en la nube de
AWS. Al usarla, no es necesario aprender nuevas tecnologías, decidir qué servicio informático utilizar o
saber cómo aprovisionar y configurar los recursos de AWS.

Puede utilizar AWS App Runner para crear y administrar servicios basados en una imagen de origen
o código fuente. Si utiliza una imagen de origen, puede elegir una imagen de contenedor pública o
privada que se almacena en un repositorio de imágenes. App Runner es compatible con los siguientes
proveedores de repositorios de imágenes:

• Amazon Elastic Container Registry (Amazon ECR): almacena imágenes privadas en su cuenta de AWS.
• Amazon Elastic Container Registry Public (Amazon ECR Public): almacena imágenes de lectura pública.

Si elige la opción de código fuente, puede implementarla desde un repositorio de código fuente mantenido
por un proveedor de repositorios compatible. Actualmente, App Runner admite GitHub como proveedor de
repositorio de código fuente.

Requisitos previos
Interactuar con App Runner mediante AWS Toolkit requiere lo siguiente:

• Una cuenta de AWS.


• Una versión de AWS Toolkit que incluye AWS App Runner

Además de estos requisitos básicos, asegúrese de que todos los usuarios pertinentes de IAM tengan
permisos para interactuar con el servicio de App Runner. También debe obtener información específica
acerca del origen del servicio, como el URI de la imagen del contenedor o la conexión al repositorio de
GitHub. Necesitará esta información al crear el servicio de App Runner.

351
AWS Cloud9 Guía del usuario
Requisitos previos

Configuración de permisos de IAM para App Runner


La forma más sencilla de conceder los permisos necesarios para App Runner es adjuntar una política
administrada de AWS a la entidad de AWS Identity and Access Management (IAM) pertinente,
específicamente un usuario o grupo. App Runner proporciona dos políticas administradas que puede
adjuntar a los usuarios de IAM:

• AWSAppRunnerFullAccess: permite a los usuarios realizar todas las acciones de App Runner.
• AWSAppRunnerReadOnlyAccess: permite a los usuarios publicar y ver detalles sobre los recursos de
App Runner.

Además, si elige un repositorio privado de Amazon Elastic Container Registry (Amazon ECR) como origen
de servicio, debe crear el siguiente rol de acceso para su servicio de App Runner:

• AWSAppRunnerServicePolicyForECRAccess: permite a App Runner acceder a imágenes de


Amazon Elastic Container Registry (Amazon ECR) de su cuenta.

Puede crear este rol automáticamente al configurar la instancia de servicio con el panel de comandos de
AWS Toolkit.
Note

El rol vinculado a servicios AWSServiceRoleForAppRunner permite que AWS App Runner lleve a
cabo las siguientes tareas:

• Insertar registros en los grupos de registros de Amazon CloudWatch Logs.


• Crear reglas de Amazon CloudWatch Events para suscribirse a la inserción de imágenes de
Amazon Elastic Container Registry (Amazon ECR).

No necesita crear manualmente el rol vinculado al servicio . Al crear AWS App Runner en la AWS
Management Console o mediante operaciones de API a las que llama AWS Toolkit, AWS App
Runner crea este rol vinculado a servicios por usted.

Para obtener más información, consulte Identity and access management for App Runner (Administración
de identidades y accesos para App Runner) en la Guía para desarrolladores de AWS App Runner.

Obtención de orígenes de servicio para App Runner


Puede utilizar AWS App Runner para implementar servicios desde una imagen de origen o código fuente.

Source image

Si va a implementar desde una imagen de origen, puede obtener un enlace al repositorio de esa
imagen desde un registro de imágenes de AWS privado o público.

• Registro privado de Amazon ECR: copie el URI de un repositorio privado que utiliza la consola de
Amazon ECR en https://console.aws.amazon.com/ecr/repositories.
• Registro público de Amazon ECR: copie el URI de un repositorio público que utiliza la Galería
pública de Amazon ECR en https://gallery.ecr.aws/.

Note

También puede obtener el URI de un repositorio privado de Amazon ECR directamente desde
AWS Explorer en AWS Toolkit:

352
AWS Cloud9 Guía del usuario
Precios

• Abra AWS Explorer y expanda el nodo ECR para ver la lista de repositorios para esa región
de AWS.
• Haga clic con el botón derecho en un repositorio y elija Copy Repository URI (Copiar URI
del repositorio) para copiar el enlace en el portapapeles.

Puede especificar el URI del repositorio de imágenes al configurar la instancia de servicio con el panel
de comandos de AWS Toolkit.

Para obtener más información, consulte App Runner service based on a source image (Servicio de
App Runner basado en una imagen de origen) en la Guía para desarrolladores de AWS App Runner.
Source code

Para que el código fuente se implemente en un servicio de AWS App Runner, ese código se debe
almacenar en un repositorio Git mantenido por un proveedor de repositorios compatible. App Runner
admite un proveedor de repositorio de código fuente: GitHub.

Para obtener más información sobre la configuración de un repositorio de GitHub, consulte Getting
started documentation (Documentación de introducción) en GitHub.

Para implementar el código fuente en un servicio de App Runner desde un repositorio de GitHub, App
Runner establece una conexión con GitHub. Si el repositorio es privado (es decir, no es de acceso
público en GitHub), debe proporcionar detalles de conexión a App Runner.
Important
Para crear conexiones de GitHub, debe utilizar la consola de App Runner (https://
console.aws.amazon.com/apprunner) para crear una conexión que vincule GitHub a AWS.
Puede seleccionar las conexiones que están disponibles en la página GitHub connections
(Conexiones de GitHub) al configurar la instancia de servicio con el panel de comandos de
AWS Toolkit.
Para obtener más información, consulte Managing App Runner connections (Administración
de conexiones de App Runner) en la Guía para desarrolladores de AWS App Runner.

La instancia de servicio de App Runner proporciona un tiempo de ejecución administrado que permite
crear y ejecutar el código. Actualmente, AWS App Runner admite los siguientes tiempos de ejecución:

• Tiempo de ejecución administrado de Python


• Tiempo de ejecución administrado de Node.js

Como parte de la configuración del servicio, proporciona información sobre cómo se crea e inicia
el servicio de App Runner. Puede ingresar esta información mediante Command Palette (Paleta de
comandos) o especificar un archivo de configuración de App Runner con formato YAML. Los valores
de este archivo le indican a App Runner cómo crear e iniciar el servicio y proporcionan contexto de
tiempo de ejecución. Esto incluye la configuración de red y las variables de entorno correspondientes.
El archivo de configuración se llama apprunner.yaml. Se agrega de manera automática al directorio
raíz del repositorio de la aplicación.

Precios
Se le cobrará por los recursos informáticos y de memoria que utiliza la aplicación. Además, si automatiza
las implementaciones, también pagará una tarifa mensual fija por cada aplicación que cubre todas las
implementaciones automatizadas de ese mes. Si opta por implementar desde el código fuente, también
pagará una tarifa de compilación por el tiempo que demora App Runner en crear un contenedor a partir del
código fuente.

Para obtener más información, consulte Precios de AWS App Runner.

353
AWS Cloud9 Guía del usuario
Creación de servicios de App Runner

Temas
• Creación de servicios de App Runner (p. 354)
• Administración de los servicios de App Runner (p. 356)

Creación de servicios de App Runner


Puede crear un servicio de App Runner en AWS Toolkit mediante AWS Explorer. Después de elegir crear
un servicio en una región de AWS determinada, el panel de comandos de AWS Toolkit proporciona pasos
numerados que lo guían durante el proceso de configuración de la instancia de servicio en la que se
ejecuta la aplicación.

Antes de crear un servicio de App Runner, asegúrese de haber completado los requisitos
previos (p. 351). Esto incluye proporcionar los permisos de IAM pertinentes y confirmar el repositorio de
origen específico que desea implementar.

Para crear un servicio de App Runner

1. Abra AWS Explorer, si aún no está abierto.


2. Haga clic con el botón derecho en el nodo de App Runner y elija Create Service (Crear servicio).

Aparece el panel de comandos de AWS Toolkit.


3. En Select a source code location type (Seleccionar un tipo de ubicación de código fuente), elija ECR o
Repository (Repostorio).

Si elige ECR, especifique una imagen de contenedor de un repositorio mantenido por Amazon Elastic
Container Registry. Si elige Repository (Repositorio), especifique un repositorio de código fuente
mantenido por un proveedor de repositorios compatible. Actualmente, App Runner admite GitHub
como proveedor de repositorio de código fuente.

Implementación desde ECR


1. En Select or enter an image repository (Seleccionar o ingresar un repositorio de imágenes), elija o
ingrese la URL del repositorio de imágenes que mantiene su registro privado de Amazon ECR o la
Galería pública de Amazon ECR.
Note

Si especifica un repositorio de la Galería pública de Amazon ECR, asegúrese de que


las implementaciones automáticas estén desactivadas, ya que App Runner no admite
implementaciones automáticas para una imagen en un repositorio público de ECR.
Las implementaciones automáticas están desactivadas de forma predeterminada; esto se
indica cuando el icono del encabezado del panel de comandos presenta una línea diagonal
a través de él. Si eligió activar las implementaciones automáticas, un mensaje le informa que
esta opción puede generar costos adicionales.
2. Si en el paso del panel de comandos se informa de que No tags found (No se encontraron etiquetas),
deberá retroceder un paso y seleccionar un repositorio que contenga una imagen de contenedor
etiquetada.
3. Si utiliza un registro privado de Amazon ECR, necesitará el rol de acceso de ECR,
AppRunnerECRAccessRole, que le permite a App Runner acceder a imágenes de Amazon Elastic
Container Registry (Amazon ECR) de su cuenta. Elija el icono “+” en el encabezado del panel de
comandos para crear automáticamente este rol. (No se requiere un rol de acceso si la imagen
se almacena en la Galería pública de Amazon ECR, en el que las imágenes están disponibles
públicamente).
4. En Port (Puerto), ingrese el puerto IP utilizado por el servicio (por ejemplo, Puerto 8000).

354
AWS Cloud9 Guía del usuario
Creación de servicios de App Runner

5. En Configure environment variables (Configurar variables de entorno), puede especificar un archivo


que contenga variables de entorno que se utilizan para personalizar el comportamiento de la instancia
de servicio. También puede omitir este paso.
6. En Name your service (Asignar un nombre al servicio), ingrese un nombre único sin espacios y pulse
Enter (Intro).
7. En Select instance configuration (Seleccionar la configuración de instancia), elija una combinación de
unidades de CPU y memoria en GB para la instancia de servicio.

Cuando se crea el servicio, el estado cambia de Creating (Creando) a Running (En ejecución).
8. Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija Copy Service URL
(Copiar URL del servicio).
9. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del
navegador web.

Implementación desde un repositorio remoto


1. En Select a connection (Seleccionar una conexión), elija una conexión que vincule GitHub a AWS. Las
conexiones disponibles para la selección se enumeran en la página GitHub connections (Conexiones
de GitHub) en la consola de App Runner.
2. En Select a remote GitHub repository (Seleccionar un repositorio de GitHub remoto), elija o ingrese
una URL para el repositorio remoto.

Los repositorios remotos que ya están configurados con la administración del control de origen de
AWS Cloud9 están disponibles para su selección. También puede pegar un enlace al repositorio si no
aparece en la lista.
3. En Select a branch (Seleccionar una rama), elija qué rama Git del código fuente desea implementar.
4. En Choose configuration source (Elegir el origen de configuración), especifique cómo desea definir la
configuración del tiempo de ejecución.

Si elige Use configuration file (Usar archivo de configuración), la instancia de servicio se configura
mediante la configuración definida por el archivo de configuración de apprunner.yaml. Este archivo
se encuentra en el directorio raíz del repositorio de la aplicación.

Si elige Configure all settings here (Establecer la configuración aquí), utilice el panel de comandos
para especificar lo siguiente:

• Runtime (Tiempo de ejecución): elija Python 3 o Nodejs 12.


• Build command (Comando de creación): ingrese el comando para crear la aplicación en el entorno
en tiempo de ejecución de la instancia de servicio.
• Start command (Comando de inicio): ingrese el comando para iniciar la aplicación en el entorno en
tiempo de ejecución de la instancia de servicio.
5. En Port (Puerto), ingrese el puerto IP utilizado por el servicio (por ejemplo, Puerto 8000).
6. En Configure environment variables (Configurar variables de entorno), puede especificar un archivo
que contenga variables de entorno que se utilizan para personalizar el comportamiento de la instancia
de servicio. También puede omitir este paso.
7. En Name your service (Asignar un nombre al servicio), ingrese un nombre único sin espacios y pulse
Enter (Intro).
8. En Select instance configuration (Seleccionar la configuración de instancia), elija una combinación de
unidades de CPU y memoria en GB para la instancia de servicio.

Cuando se crea el servicio, el estado cambia de Creating (Creando) a Running (En ejecución).
9. Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija Copy Service URL
(Copiar URL del servicio).

355
AWS Cloud9 Guía del usuario
Administración de los servicios de App Runner

10. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del
navegador web.

Note

Si falla el intento de crear un servicio de App Runner, el servicio muestra el estado de Create
failed (Error al crear) en AWS Explorer. Para obtener sugerencias acerca de la solución de
problemas, consulte When service creation fails (Cuando falla la creación del servicio) en la Guía
para desarrolladores de App Runner.

Administración de los servicios de App Runner


Después de crear un servicio de App Runner, puede administrarlo mediante el panel de AWS Explorer
para llevar a cabo las siguientes actividades:

• Pausa y reanudación de los servicios de App Runner (p. 356)


• Implementación de los servicios de App Runner (p. 357)
• Visualización de secuencias de registros para App Runner (p. 357)
• Eliminación de servicios de App Runner (p. 357)

Pausa y reanudación de los servicios de App Runner


Si necesita desactivar temporalmente la aplicación web y detener la ejecución del código, puede pausar
el servicio de AWS App Runner. App Runner reduce la capacidad de computación del servicio a cero.
Cuando esté listo para volver a ejecutar la aplicación, reanude el servicio de App Runner. App Runner
aprovisiona nueva capacidad de computación, implementa la aplicación en ella y la ejecuta.
Important

Se le cobrará por App Runner solo cuando se esté ejecutando. Por lo tanto, puede pausar
y reanudar la aplicación según sea necesario para administrar los costos. Esto resulta
especialmente útil en escenarios de desarrollo y pruebas.

Para pausar el servicio de App Runner

1. Abra AWS Explorer, si aún no está abierto.


2. Expanda App Runner para ver la lista de servicios.
3. Haga clic con el botón derecho en el servicio y elija Pause (Pausar).
4. En el cuadro de diálogo que se muestra, elija Confirm (Confirmar).

Mientras el servicio se pausa, el estado del servicio cambia de Running(En ejecución) a Pausing
(Pausando) y luego a Paused (En pausa).

Para reanudar el servicio de App Runner

1. Abra AWS Explorer, si aún no está abierto.


2. Expanda App Runner para ver la lista de servicios.
3. Haga clic con el botón derecho en el servicio y elija Resume (Reanudar).

Mientras se reanuda el servicio, el estado del servicio cambia de Resuming (Reanudando) a Running
(En ejecución).

356
AWS Cloud9 Guía del usuario
Administración de los servicios de App Runner

Implementación de los servicios de App Runner


Si elige la opción de implementación manual del servicio, debe iniciar explícitamente cada implementación
en el servicio.

1. Abra AWS Explorer, si aún no está abierto.


2. Expanda App Runner para ver la lista de servicios.
3. Haga clic con el botón derecho en el servicio y elija Start Deployment (Iniciar implementación).
4. Mientras se implementa la aplicación, el estado del servicio cambia de Deploying (Implementando) a
Running (En ejecución).
5. Para confirmar que la aplicación se implementó correctamente, haga clic con el botón derecho en el
mismo servicio y elija Copy Service URL (Copiar URL del servicio).
6. Para acceder a la aplicación web implementada, pegue la URL copiada en la barra de direcciones del
navegador web.

Visualización de secuencias de registros para App Runner


Utilice CloudWatch Logs para monitorear, almacenar y acceder a las secuencias de registro para servicios
como App Runner. Un flujo de registro es una secuencia de eventos de registro que comparten la misma
fuente.

1. Expanda App Runner para ver la lista de instancias de servicios.


2. Expanda una instancia de servicio específica para ver la lista de grupos de registros. (Un grupo de
registros es un grupo de secuencias de registro que comparten la misma configuración de retención,
monitoreo y control de acceso).
3. Haga clic con el botón derecho en un grupo de registros y elija View Log Streams (Ver secuencias de
registro).
4. En el panel de comandos, elija una secuencia de registro del grupo.

La IDE de AWS Cloud9 muestra la lista de eventos de registro que componen la secuencia. Puede
elegir cargar eventos anteriores o más recientes en el editor.

Eliminación de servicios de App Runner


Important

Si elimina el servicio de App Runner, se elimina de forma permanente y los datos almacenados
se eliminan. Si necesita volver a crear el servicio, App Runner debe volver a recuperar el origen y
crearlo si se trata de un repositorio de código. La aplicación web obtiene un nuevo dominio de App
Runner.

1. Abra AWS Explorer, si aún no está abierto.


2. Expanda App Runner para ver la lista de servicios.
3. Haga clic con el botón derecho en un servicio y elija Delete Service (Eliminar servicio).
4. En el panel de comandos de AWS Toolkit, ingrese delete (eliminar) y luego pulse Enter (Ingresar) para
confirmar.

El servicio eliminado muestra el estado Deleting (Eliminando) y, a continuación, el servicio desaparece


de la lista.

357
AWS Cloud9 Guía del usuario
Pilas de AWS CloudFormation

Uso de pilas de AWS CloudFormation mediante


AWS Toolkit
AWS Toolkit ofrece soporte para las pilas de AWS CloudFormation. Puede usar AWS Toolkit para eliminar
una pila de AWS CloudFormation.

Eliminación de pilas de AWS CloudFormation


Puede utilizar AWS Toolkit para ver y eliminar pilas de AWS CloudFormation.

Requisitos previos
• Asegúrese de que las credenciales que usa en el entorno de AWS Cloud9 incluyen acceso de lectura/
escritura adecuado al servicio AWS CloudFormation. Si en AWS Explorer, en CloudFormation, aparece
el mensaje “Error loading CloudFormation resources” (Error al cargar recursos de CloudFormation) o un
mensaje similar, verifique los permisos adjuntos a esas credenciales. Los cambios que lleve a cabo en
los permisos tardarán unos minutos en afectar a AWS Explorer.

Para eliminar una pila de AWS CloudFormation

1. En AWS Explorer, abra el menú contextual de la pila de AWS CloudFormation que quiere eliminar.
2. Elija Delete CloudFormation Stack (Eliminar pila de CloudFormation).
3. En el mensaje que aparece, elija Yes (Sí) para confirmar la eliminación.

Una vez que se elimine la pila, esta deja de estar en la lista de AWS Explorer.

Uso de CloudWatch Logs mediante AWS Toolkit


Amazon CloudWatch Logs le permite centralizar los registros de todos los sistemas, aplicaciones y
servicios de AWS que utiliza, en un único servicio de gran escalabilidad. De este modo, los puede
consultar fácilmente, buscar códigos de error o patrones específicos, filtrarlos en función de campos
específicos o archivarlos de forma segura para análisis futuros. Para obtener más información, consulte
¿Qué es Amazon CloudWatch Logs? en la Guía del usuario de Amazon CloudWatch.

En los temas siguientes se describe cómo utilizar AWS Toolkit para trabajar con CloudWatch Logs en una
cuenta de AWS.

Temas
• Visualización de los grupos de registros y flujos de registro de CloudWatch mediante AWS
Toolkit (p. 358)
• Trabajo con eventos de CloudWatch Logs en flujos de registro mediante AWS Toolkit (p. 359)

Visualización de los grupos de registros y flujos de


registro de CloudWatch mediante AWS Toolkit
Un flujo de registro es una secuencia de eventos de registro que comparten la misma fuente. Cada fuente
independiente de registros en CloudWatch Logs constituye un flujo de registro independiente.

358
AWS Cloud9 Guía del usuario
Uso de eventos de CloudWatch Logs

Un grupo de registros es un grupo de flujos de registros que comparten la misma configuración de


retención, monitorización y control de acceso. Puede definir grupos de registros y especificar los flujos que
deben incluirse en cada uno. No hay límites en el número de flujos de registros que pueden pertenecer a
un grupo de registros.

Para obtener más información, consulte Trabajo con grupos y flujos de registros en la Guía del usuario de
Amazon CloudWatch.

Temas
• Visualización de grupos de registros y flujos de registro con el nodo de CloudWatch Logs (p. 359)

Visualización de grupos de registros y flujos de registro con el


nodo de CloudWatch Logs
1. Abra AWS Explorer, si aún no está abierto.
2. Haga clic en el botón CloudWatch Logs para expandir la lista de grupos de registros.

Los grupos de registros de la región de AWS actual se muestran en el nodo de CloudWatch Logs.
3. Para ver los flujos de registro de un grupo de registros específico, haga clic con el botón secundario en
el nombre del grupo de registros y, a continuación, elijaView Log Streams (Ver flujos de registro).
4. El contenido del grupo de registros se muestra en el encabezado Select a log stream (Seleccionar un
flujo de registro).

Puede elegir un flujo específico de la lista o ingresar texto en el campo para filtrar los flujos.

Después de elegir un flujo, los eventos de dicho flujo se muestran en la ventana Log Streams (Flujos
de registro) del IDE. Para obtener información sobre cómo interactuar con los eventos de registro en
cada flujo, consulte Uso de eventos de CloudWatch Logs (p. 359).

Trabajo con eventos de CloudWatch Logs en flujos de


registro mediante AWS Toolkit
Después de abrir la ventana Log Stream (Flujos de registro), puede acceder a los eventos de registro de
cada flujo. Los eventos de registro son registros de actividades guardados por la aplicación o el recurso
que se está monitoreando.

Temas
• Visualización y copia de información de flujos de registro (p. 359)
• Guardar el contenido del editor de flujos de registro en un archivo local (p. 360)

Visualización y copia de información de flujos de registro


Cuando abre un flujo de registro, la ventana Log Stream (Flujo de registro) muestra la secuencia de
eventos de registro de ese flujo.

1. Para buscar un flujo de registro que desea ver, abra la ventana Log Stream (Flujo de registro).
Consulte Visualización de grupos de registros y flujos de registro de CloudWatch (p. 358).

Cada línea que muestra un evento tiene una marca de tiempo para mostrar cuándo se registró.
2. Puede ver y copiar información sobre los eventos del flujo mediante las siguientes opciones:

359
AWS Cloud9 Guía del usuario
Funciones de AWS Lambda

• Ver eventos por hora: para mostrar los eventos de registro más recientes y más antiguos,
seleccione Load newer events (Cargar eventos más recientes) o Load older events (Cargar eventos
más antiguos).
Note

Inicialmente, el editor de flujos de registro carga un lote de las 10 000 líneas más recientes
de eventos de registro o 1 MB de datos de registro (lo que sea menor). Si elige Load newer
events (Cargar eventos más recientes), el editor muestra los eventos que se registraron
después de cargar el último lote. Si elige Load older events (Cargar eventos más antiguos),
el editor muestra un lote de los eventos que ocurrieron antes de los que se muestran
actualmente.
• Copiar eventos de registro: seleccione los eventos que desea copiar, haga clic con el botón derecho
y seleccione la opción Copy (Copiar) del menú.
• Copiar el nombre del flujo de registro: haga clic con el botón derecho en la pestaña de la ventana
Log Stream (Flujo de registro) y elija Copy Log Stream Name (Copiar el nombre del flujo de
registro).

Guardar el contenido del editor de flujos de registro en un archivo


local
Puede descargar el contenido del editor de flujos de registro de CloudWatch en un archivo log en el
equipo local.
Note

Esta opción permite guardar en un archivo solo aquellos eventos de registro que se muestran
actualmente en el editor de flujos de registro. Por ejemplo, si el tamaño total de un flujo de registro
es de 5 MB y solo se cargan 2 MB en el editor, el archivo guardado también contendrá 2 MB de
datos de registro solamente. Para mostrar más datos que se van a guardar, elija Load newer
events (Cargar eventos más recientes) o Load older events (Cargar eventos más antiguos) en el
editor.

1. Para buscar un flujo de registro que desea copiar, abra la ventana Log Streams (Flujos de registro).
Consulte Visualización de grupos de registros y flujos de registro de CloudWatch (p. 358).
2. Haga clic con el botón derecho en la pestaña Log Stream (Flujo de registro) y elija Save Current Log
Content to File (Guardar contenido de registro actual en archivo).
3. Utilice el cuadro de diálogo para seleccionar o crear una carpeta de descarga para el archivo de
registros y haga clic en Save (Guardar).

Uso de funciones de AWS Lambda con AWS


Toolkit
AWS Toolkit ofrece compatibilidad con las funciones de AWS Lambda. Con AWS Toolkit, puede crear
código para funciones de Lambda que forman parte de aplicaciones sin servidor. Además, puede invocar
funciones de Lambda localmente o en AWS.

Lambda es un servicio informático completamente administrado que ejecuta código como respuesta a
eventos generados por código personalizado o procedentes de varios servicios de AWS, como Amazon
Simple Storage Service (Amazon S3), Amazon DynamoDB, Amazon Kinesis, Amazon Simple Notification
Service (Amazon SNS) y Amazon Cognito.

360
AWS Cloud9 Guía del usuario
Invocación de funciones de Lambda remotas

AWS Toolkit reemplaza la funcionalidad proporcionada por el complemento de Lambda en AWS Cloud9.
Para utilizar el complemento de Lambda, debe desactivar AWS Toolkit. Para obtener más información,
consulte Desactivación de AWS Toolkit (p. 342) .
Important

Si desea crear una aplicación de Lambda que use los recursos proporcionados por el Serverless
Application Model (SAM), consulte Trabajar con aplicaciones sin servidor de AWS mediante AWS
Toolkit (p. 370).

Temas
• Invocación de funciones de Lambda remotas (p. 361)
• Descarga, carga y eliminación de funciones de Lambda (p. 362)

Invocación de funciones de Lambda remotas


Con AWS Toolkit, puede interactuar con las funciones de AWS Lambda de varias maneras, como se
describe más adelante en este tema.

AWS Toolkit reemplaza la funcionalidad proporcionada por el complemento de Lambda en AWS Cloud9.
Para utilizar el complemento de Lambda, debe desactivar AWS Toolkit. Para obtener más información,
consulte Desactivación de AWS Toolkit (p. 342) .

Para obtener más información acerca de Lambda, consulte la Guía para desarrolladores de AWS Lambda.
Note

Si ya ha creado funciones de Lambda mediante la AWS Management Console o de alguna otra


manera, puede invocarlas desde Toolkit. Para crear una nueva función mediante AWS Toolkit que
se pueda implementar en AWS Lambda, antes debe crear una aplicación sin servidor (p. 370).

Requisitos previos
• Asegúrese de que las credenciales configuradas incluyen acceso de lectura/escritura adecuado al
servicio AWS Lambda. Si en AWS Explorer, en Lambda, aparece un mensaje del tipo “Error loading
Lambda resources” (Error al cargar recursos de Lambda), verifique los permisos adjuntos a esas
credenciales. Los cambios que realice en los permisos tardarán unos minutos en afectar a AWS Explorer
en AWS Toolkit.

Llamar a una función Lambda


Important

Llamar a métodos API con AWS Toolkit puede provocar cambios en los recursos que no se
podrán deshacer. Por ejemplo, si llama a un método POST, los recursos de la API se actualizan si
la llamada se lleva a cabo correctamente.

Puede invocar una función de Lambda en AWS mediante AWS Toolkit.

1. En AWS Explorer, elija el nombre de la función de Lambda que desea invocar y, a continuación, abra
su menú contextual.
2. Elija Invoke on AWS (Invocar en AWS).
3. En la ventana Invoke function (Invocar a función) que se abre, elija una opción para la carga que
necesita su función de Lambda. (La carga es el archivo JSON que desea proporcionar a su función de

361
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda

Lambda como entrada). Puede elegir Browse (Examinar) para seleccionar un archivo para utilizarlo
como carga o utilizar el campo desplegable para seleccionar una plantilla para la carga. En este caso,
la función de Lambda podría utilizar una cadena como entrada, como se muestra en el cuadro de
texto.

Elija Invoke (Invocar) para llamar a la función de Lambda y pasar la carga.

Verá la salida de la función de Lambda en la pestaña AWS Lambda.

Descarga, carga y eliminación de funciones de


Lambda
AWS Toolkit reemplaza el complemento de Lambda, que anteriormente ofrecía las opciones para importar
y cargar funciones de Lambda en el IDE de AWS Cloud9. Para utilizar el complemento de Lambda, debe
desactivar AWS Toolkit. Para obtener más información, consulte Desactivación de AWS Toolkit (p. 342) .

Descarga de una función de Lambda


La descarga de una función de Lambda permite descargar los archivos de proyecto que describen la
función desde la nube de AWS y trabajar con ellos en el IDE de AWS Cloud9.

Para descargar una función de Lambda

1. En AWS Explorer, en el nodo Lambda, haga clic con el botón derecho en la función y elija Download
(Descargar).
2. Cuando se le muestre Select a workspace folder for your new project (Seleccione una carpeta de
espacio de trabajo para su nuevo proyecto), puede realizar una de las siguientes acciones:

• Elegir la carpeta que se sugiere para crear una subcarpeta con el mismo nombre que su proyecto
de Lambda.
• Elija Select a different folder (Seleccionar una carpeta diferente) para abrir un cuadro de diálogo
para buscar y seleccionar una carpeta principal diferente para la subcarpeta del proyecto.

El IDE abre una nueva ventana del editor

Configuración de una función Lambda descargada para su


ejecución y depuración
Para ejecutar y depurar correctamente su función Lambda descargada como una aplicación sin servidor,
necesita que se defina una configuración de lanzamiento en su archivo launch.json. Es posible que
una función Lambda creada en la AWS Management Console o en la ventana de recursos de AWS
obsoletos de AWS Cloud9 no se incluya en una configuración de lanzamiento, por lo que deberá agregarla
manualmente.

Para agregar su función Lambda a la configuración de lanzamiento

1. Una vez que haya descargado la función Lambda, abra la ventana Environment (Entorno) para ver sus
carpetas y archivos.
2. A continuación, compruebe que su función Lambda está incluida en un archivo /home/ec2-
user/.c9/launch.json. Si no está presente, haga lo siguiente para agregar un enlace CodeLens
al código de su función:

362
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda

1. Abra el archivo de código fuente que define la función Lambda (un archivo .js o .py, por ejemplo)
y compruebe si hay un enlace de CodeLens que le permita agregar su función Lambda a un archivo
launch.json. (Aparece un CodeLens encima de la función e incluye el enlace Add Debug
Config).
2. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE y escriba «sam hint» para que aparezca el
comando AWS: Toggle SAM hints in source files. Elija el comando para ejecutarlo.
3. Cierre el archivo de código fuente de Lambda y vuelva a abrirlo.
4. Si el CodeLens está disponible en el código fuente después de reabrir el archivo, elija Add Debug
Config para agregar la configuración de lanzamiento.
3. Si no puede agregar un CodeLens incluso después de activar la opción de sugerencia SAM, haga lo
siguiente para agregar la configuración de lanzamiento:

1. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE y escriba «sam hint» para que aparezca el
comando AWS: SAM Debug Configuration Editor. Elija el comando para ejecutarlo.
2. Aparece SAM Debug Configuration Editor (Editor de configuración de depuración de SAM), que le
permite definir las propiedades de configuración de lanzamiento. Para obtener información, consulte
el paso para configuring launch properties en Uso de plantillas de SAM para ejecutar y depurar
aplicaciones sin servidor (p. 373).
Note

Si su función Lambda no tiene un archivo template.yaml que sea necesario para las
aplicaciones de SAM, tendrá que agregar uno. Para obtener más información, consulte
Creación de su plantilla de SAM de AWS.
3. Cuando haya terminado de ingresar la información de configuración necesaria en el editor, la
configuración de lanzamiento se agregará al archivo launch.json.

Después de haber definido una configuración de lanzamiento para su función Lambda, puede ejecutarla
haciendo lo siguiente:

1. En la parte superior del IDE, elija la flecha situada junto a Auto y seleccione la configuración de
lanzamiento correspondiente.
2. A continuación, elija Next (Siguiente).

Carga de una función de Lambda


Puede actualizar las funciones de Lambda existentes con código local. Al actualizar el código de esta
manera, no se utiliza AWS Serverless Application Model CLI para la implementación ni se crea una pila de
AWS CloudFormation. Esta funcionalidad puede cargar una función de Lambda con cualquier tiempo de
ejecución admitido por Lambda.

1. En AWS Explorer, abra el menú contextual (haga clic con el botón derecho en el nombre de la función
de Lambda que desea importar).
2. Elija Upload Lambda… (Cargar Lambda…)
3. Elija entre las tres opciones para cargar su función de Lambda.

Cargar un archivo .zip prediseñado

1. Elija ZIP Archive (Archivo ZIP) en el menú.


2. Elija un archivo .zip del sistema de archivos de AWS Cloud9 y elija Open (Abrir).
3. Confirme la carga con el cuadro de diálogo modal. Con esta acción se carga el archivo .zip y se
actualiza inmediatamente la función de Lambda después de la implementación.

363
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda

Cargar un directorio tal cual

1. Elija Directory (Directorio) en el menú.


2. Elija un directorio del sistema de archivos de AWS Cloud9 y elija Open (Abrir).
3. Elija No cuando se le pida que cree el directorio.
4. Confirme la carga con el cuadro de diálogo modal. Con esta acción se carga el directorio y se
actualiza inmediatamente la función de Lambda después de la implementación.

Crear y cargar un directorio

1. Elija Directory (Directorio) en el menú.


2. Elija un directorio del sistema de archivos de AWS Cloud9 y elija Open (Abrir).
3. Elija Yes (Sí) cuando se le pida que cree el directorio.
4. Confirme la carga con el cuadro de diálogo modal. Con esta acción se compila el código en el
directorio mediante el comando sam build de AWS SAM CLI y se actualiza inmediatamente la
función de Lambda después de la implementación.

Implementación de una función Lambda para el acceso remoto


Puede hacer que sus funciones locales estén disponibles de forma remota si las implementa como
aplicaciones de SAM sin servidor.

Para implementar una función Lambda como aplicación de SAM

1. En la ventana AWS Explorer, haga clic con el botón derecho en el nodo Lambda y elija Deploy SAM
Application (Implementar aplicación de SAM).
2. En el panel de comandos, seleccione la plantilla YAML que define su función como aplicación sin
servidor.
3. A continuación, seleccione un bucket de Amazon S3 para la implementación de Lambda. También
puede crear un bucket para la implementación.
4. Ahora ingrese el nombre de la pila de AWS CloudFormation en la que va a realizar la implementación.
Si especifica una pila existente, el comando la actualiza. Si especifica una nueva pila, el comando la
crea.

Después de ingresar el nombre de la pila, su función Lambda comienza a implementarse como una
aplicación de SAM. Tras una implementación correcta, la aplicación Lambda de SAM debería estar
disponible de forma remota, lo que permite a los desarrolladores que trabajan en otros entornos de
desarrollo de AWS Cloud9 descargarla o invocarla.

Si desea crear una función Lambda desde cero, le recomendamos que siga los pasos para Cómo crear
una aplicación sin servidor con AWS Toolkit (p. 370).

Eliminación de una función de Lambda


También puede eliminar una función de Lambda utilizando el mismo menú contextual.
Warning

No utilice este procedimiento para eliminar funciones de Lambda asociadas a AWS


CloudFormation (por ejemplo, la función de Lambda que se creó al crear una aplicación sin
servidor (p. 370) anteriormente en esta guía). Estas funciones deben eliminarse a través de la
pila de AWS CloudFormation.

364
AWS Cloud9 Guía del usuario
Recursos

1. En AWS Explorer, elija el nombre de la función de Lambda que desea eliminar y, a continuación, abra
su menú contextual.
2. Elija Delete (Eliminar).
3. En el mensaje que aparece, elija Yes (Sí) para confirmar la eliminación.

Una vez eliminada la función, esta deja de aparecer en la vista AWS Explorer.

Uso de los recursos


Además de acceder a servicios de AWS que se enumeran de forma predeterminada en AWS Explorer,
también puede ir a Resources (Recursos) y elegir entre cientos de recursos para agregarlos a la interfaz.
En AWS, un recurso es una entidad con la que se puede trabajar. Algunos de los recursos que se
agregan incluyen Amazon AppFlow, Amazon Kinesis Data Streams, roles de IAM de AWS, Amazon VPC y
distribuciones de Amazon CloudFront.

Para ver los recursos disponibles, vaya a Resources (Recursos) y expanda el tipo de recurso para
enumerar los recursos disponibles para ese tipo. Por ejemplo, si selecciona el tipo de recurso
AWS::Lambda::Function, puede acceder a los recursos que definen distintas funciones, sus
propiedades y atributos.

Después de agregar un tipo de recurso a Resources (Recursos), puede interactuar con él y sus recursos
de las siguientes maneras:

• Ver una lista de los recursos existentes que están disponibles en la región actual de AWS de este tipo de
recurso.
• Ver una versión de solo lectura del archivo JSON que describe un recurso.
• Copiar el identificador de recurso para el recurso.
• Ver la documentación de AWS que explica el propósito del tipo de recurso y el esquema (en formatos
JSON y YAML) para modelar un recurso.

Permisos de IAM para acceder a los recursos


Necesita permisos de AWS Identity and Access Management específicos para acceder a los recursos
asociados con los servicios de AWS. Por ejemplo, una entidad de IAM, como un usuario o un rol, requiere
permisos de Lambda para acceder a los recursos de AWS::Lambda::Function.

Además de los permisos para los recursos de servicio, una entidad de IAM requiere permisos para permitir
que AWS Toolkit llame a operaciones de la API de Cloud Control de AWS en su nombre. Las operaciones
de la API de Cloud Control permiten al usuario o rol de IAM acceder y actualizar los recursos remotos.

La forma más sencilla de conceder permisos consiste en adjuntar la política administrada de AWS,
PowerUserAccess, a la entidad de IAM que llama a estas operaciones de la API mediante la interfaz de
Toolkit. Esta política administrada otorga una serie de permisos para realizar tareas de desarrollo de
aplicaciones, incluido llamar a las operaciones de la API.

Para obtener permisos específicos que definen las operaciones de API permitidas en recursos remotos,
consulte la Guía del usuario de la API de Cloud Control de AWS.

Interacción con los recursos existentes


1. En AWS Explorer, elija Resources (Recursos).

365
AWS Cloud9 Guía del usuario
Amazon S3

Se muestra una lista de tipos de recursos en el nodo Resources (Recursos).


2. Para acceder a la documentación que describe la sintaxis que define la plantilla de un tipo de
recurso, haga clic con el botón derecho en ese tipo de recurso y elija View Documentation (Ver
documentación).
Note

Es posible que se le pida que desactive el bloqueador de ventanas emergentes del


navegador para poder acceder a la página de documentación.
3. Para ver los recursos que ya existen para un tipo de recurso, expanda la entrada de ese tipo.

En el tipo de recursos, se muestra una lista de los recursos disponibles.


4. Para interactuar con un recurso específico, haga clic con el botón derecho en el nombre y elija una de
las siguientes opciones:

• Copy Identifier (Copiar identificador): copie el identificador del recurso específico en el portapapeles.
(Por ejemplo, el recurso AWS::DynamoDB::Table se puede identificar mediante la propiedad
TableName).
• Preview (Vista previa): vea una versión de solo lectura de la plantilla con formato JSON que
describe el recurso.

Trabajo con Amazon S3 mediante AWS Toolkit


En los temas siguientes se describe cómo utilizar AWS Toolkit para trabajar con buckets de Amazon S3 y
objetos de una cuenta de AWS.

Temas
• Trabajo con buckets de Amazon S3 (p. 366)
• Trabajo con objetos de Amazon S3 (p. 368)

Trabajo con buckets de Amazon S3


Todos los objetos almacenados en Amazon S3 residen en un bucket. Puede utilizar los buckets para
agrupar objetos relacionados del mismo modo en que usa un directorio para agrupar archivos en un
sistema de archivos.

Temas
• Creación de un bucket de Amazon S3 (p. 366)
• Agregar una carpeta a un bucket de Amazon S3 (p. 367)
• Eliminación de un bucket de Amazon S3 (p. 367)
• Configuración de la visualización de elementos de Amazon S3 (p. 367)

Creación de un bucket de Amazon S3


1. En AWS Explorer, abra el menú contextual (clic con el botón derecho) del nodo S3 y, a continuación,
elija Create Bucket (Crear bucket).
2. En el campo Bucket Name (Nombre del bucket), ingrese un nombre para el bucket. Pulse Intro para
confirmar la operación.

El nuevo bucket se muestra en el nodo S3.

366
AWS Cloud9 Guía del usuario
Trabajo con buckets de Amazon S3

Nota

Dado que Amazon S3 permite que el bucket se utilice como una dirección URL con acceso
público, el nombre del bucket que elija deberá ser único de forma global. Si hay otra cuenta
que ya haya creado un bucket con el nombre que eligió, deberá utilizar otro nombre.
Puede consultar los registros de AWS Toolkit en la pestaña Output (Salida) si no se puede
crear un bucket. Por ejemplo, se produce un error BucketAlreadyExists si utiliza un
nombre de bucket que es está en uso. Para obtener más información, consulte Restricciones
y limitaciones de los buckets en la Guía del usuario de Amazon Simple Storage Service.

Después de crear un bucket, puede copiar su nombre y el nombre de recurso de Amazon (ARN)
en el portapapeles. Abra el menú contextual (clic con el botón derecho) de la entrada del bucket y
seleccione la opción correspondiente del menú.

Agregar una carpeta a un bucket de Amazon S3


Para organizar el contenido de un bucket se agrupan objetos en carpetas. También puede crear carpetas
dentro de otras carpetas.

1. En AWS Explorer, elija el nodo S3 para ver la lista de buckets.


2. Abra el menú contextual (clic con el botón derecho) de un bucket o una carpeta y, a continuación, elija
Create Folder (Crear carpeta).
3. Rellene el campo Folder Name (Nombre de carpeta) y, a continuación, pulse Intro.

La nueva carpeta ahora se muestra debajo de la carpeta o el bucket seleccionado en la ventana AWS
Explorer.

Eliminación de un bucket de Amazon S3


Cuando elimina un bucket, también elimina las carpetas y los objetos que contiene. Se le pide que
confirme que desea hacerlo antes de eliminar el bucket.
Note

Para eliminar solo una carpeta, no todo el bucket, use la AWS Management Console.

1. En AWS Explorer, elija el nodo S3 para expandir la lista de buckets.


2. Abra el menú contextual del bucket que se va a eliminar y, a continuación, elija Delete (Eliminar).
3. Ingrese el nombre del bucket para confirmar la eliminación y, a continuación, pulse Intro.
Note

Si el bucket contiene objetos, el bucket se vacía antes de su eliminación. Esto puede llevar
algún tiempo si es necesario eliminar cada versión de miles de objetos. Se muestra una
notificación una vez completada la eliminación.

Configuración de la visualización de elementos de Amazon S3


Si está trabajando con un gran número de objetos o carpetas de Amazon S3, puede ser útil especificar
cuántos se muestran a la vez. Cuando se muestra el número máximo, puede elegir Load Mode (Cargar
más) para mostrar el siguiente lote.

1. En la barra de menús, elija AWS Cloud9, Preferences (Preferencias).

367
AWS Cloud9 Guía del usuario
Trabajo con objetos de Amazon S3

2. En la ventana Preferences (Preferencias), expanda Project Settings (Configuración del proyecto) y


vaya a la sección EXTENSIONS (EXTENSIONES) para elegir AWS Configuration (Configuración de
AWS).
3. En el panel AWS Configuration (Configuración de AWS), vaya a la configuración AWS > S3: Max
Items Per Page (AWS > S3: máximo de elementos por página).
4. Cambie el valor predeterminado al número de elementos de S3 que desea mostrar antes de elegir
cargar más.
Note

El rango de valores aceptados está entre 3 y 1000. Esta configuración solo se aplica al
número de objetos o carpetas que se muestran a la vez. Todos los buckets que ha creado se
muestran a la vez. (De forma predeterminada, puede crear hasta 100 buckets en cada una de
sus cuentas de AWS).

Trabajo con objetos de Amazon S3


Los objetos son las entidades fundamentales almacenadas en Amazon S3. Los objetos se componen de
datos de objetos y metadatos.

Temas
• Carga de un archivo en un bucket de Amazon S3 (p. 368)
• Descarga de un objeto de Amazon S3 (p. 369)
• Eliminación de un objeto de Amazon S3 (p. 369)
• Generación de una URL prefirmada para un objeto de Amazon S3 (p. 369)

Carga de un archivo en un bucket de Amazon S3


Puede utilizar la interfaz del Toolkit o un comando para cargar un archivo en un bucket

Ambos métodos le permiten cargar un archivo desde el entorno de un usuario y almacenarlo como un
objeto S3 en la nube de AWS. Puede cargar un archivo en un bucket o una carpeta que organice el
contenido de ese bucket.

Carga de un archivo en un bucket de S3 con la interfaz

1. En AWS Explorer, elija el nodo S3 para ver la lista de buckets.


2. Abra el menú contextual (clic con el botón derecho) de un bucket o una carpeta de ese bucket y, a
continuación, elija Upload File (Cargar archivo).
Nota

Si abre el menú contextual (clic con el botón derecho) de un objeto de S3, puede elegir
Upload to Parent (Cargar en la cuenta principal). Esto le permite agregar un archivo a la
carpeta o al bucket que contiene el archivo seleccionado.
3. Con el administrador de archivos de su entorno, seleccione un archivo y, a continuación, elija Upload
(Cargar).

El archivo seleccionado se carga como un objeto de S3 en el bucket o la carpeta. La entrada de cada


objeto describe el tamaño del objeto almacenado y cuánto tiempo hace que se cargó. Puede detener
el cursor sobre la lista del objeto para ver la ruta, el tamaño y la hora en que se modificó por última
vez.

368
AWS Cloud9 Guía del usuario
Trabajo con objetos de Amazon S3

Cargue el archivo actual en un bucket de S3 con un comando

1. Para seleccionar un archivo para cargarlo, elija la pestaña del archivo.


2. Pulse Ctrl+P para visualizar el panel Commands (Comandos).
3. Para Go To Anything (Ir a cualquier punto), comience a ingresar la frase upload file para visualizar
el comando AWS: Upload File. Elija el comando cuando aparezca.
4. En Paso 1: Seleccionar un archivo para cargar, puede elegir el archivo que ha seleccionado o buscar
otro.
5. En Paso 2: Seleccionar un bucket de S3 para la carga, elija un bucket de la lista.

El archivo seleccionado se carga como un objeto de S3 en el bucket o la carpeta. La entrada de cada


objeto describe el tamaño del objeto almacenado y cuánto tiempo hace que se cargó. Puede detener
el cursor sobre la lista del objeto para ver la ruta, el tamaño y la hora en que se modificó por última
vez.

Descarga de un objeto de Amazon S3


Puede descargar objetos en un bucket de Amazon S3 desde la nube de AWS a una carpeta de su entorno
de AWS Cloud9.

1. En AWS Explorer, elija el nodo S3 para ver la lista de buckets.


2. En un bucket o en una carpeta de un bucket, abra el menú contextual (clic con el botón derecho) de un
objeto y, a continuación, elija Download As (Descargar como).
3. Con el administrador de archivos de su entorno, seleccione una carpeta de destino, ingrese un
nombre de archivo y, a continuación, elija Download (Descargar).

Después de descargar un archivo, puede abrirlo en AWS Cloud9.

Eliminación de un objeto de Amazon S3


Puede eliminar permanentemente un objeto si se encuentra en un bucket sin control de versiones. No
obstante, para los buckets habilitados para el control de versiones, una solicitud de eliminación no elimina
permanentemente ese objeto. En su lugar, Amazon S3 inserta un marcador de eliminación en el bucket.
Para obtener más información, consulte Deleting object versions (Eliminar versiones de objetos) en la Guía
del usuario de Amazon Simple Storage Service.

1. En AWS Explorer, elija el nodo S3 para ver la lista de buckets.


2. En un bucket o en una carpeta de un bucket, abra el menú contextual (clic con el botón derecho) de un
objeto y, a continuación, elija Delete (Eliminar).
3. Para confirmar la eliminación, elija Delete (Eliminar).

Generación de una URL prefirmada para un objeto de Amazon


S3
Con URL prefirmadas, el propietario de un objeto puede compartir objetos privados de Amazon S3
con otros otorgando permisos con restricción temporal para descargar los objetos. Para obtener más
información, consulte Sharing an object with a presigned URL (Compartir un objeto con una URL
prefirmada) en la Guía del usuario de Amazon S3.

1. En AWS Explorer, elija el nodo S3 para ver la lista de buckets.


2. En un bucket o en una carpeta de un bucket, haga clic con el botón derecho en un objeto y, a
continuación, elija Generate Presigned URL (Generar URL prefirmada).

369
AWS Cloud9 Guía del usuario
Aplicaciones de AWS SAM

3. En el panel de comandos de AWS Toolkit, ingrese el número de minutos en que se puede utilizar la
URL para acceder al objeto. Pulse Intro para confirmar la operación.

El estado de la parte inferior del IDE confirma que la URL prefirmada del objeto se copió en el
portapapeles.

Trabajar con aplicaciones sin servidor de AWS


mediante AWS Toolkit
AWS Toolkit ofrece asistencia para aplicaciones sin servidor. Con AWS Toolkit, puede crear aplicaciones
sin servidor que contengan funciones de AWS Lambda e implementar dichas aplicaciones en una pila de
AWS CloudFormation.

Temas
• Creación de una aplicación sin servidor (p. 370)
• Ejecución y depuración de aplicaciones sin servidor (p. 373)
• Implementación de una aplicación sin servidor (p. 378)
• Eliminación de una aplicación sin servidor de la nube de AWS (p. 379)
• Opciones de configuración para depurar aplicaciones sin servidor (p. 379)

Creación de una aplicación sin servidor


En este ejemplo, se muestra cómo utilizar AWS Toolkit para crear una aplicación sin servidor. Para obtener
más información sobre la ejecución y depuración de aplicaciones sin servidor, consulte Ejecución y
depuración de aplicaciones sin servidor (p. 373).

Los requisitos previos necesarios para crear una aplicación sin servidor incluyen AWS SAM CLI y AWS
CLI, que se incluyen con AWS Cloud9.

Cómo crear una aplicación sin servidor con AWS Toolkit


En este ejemplo se muestra cómo crear una aplicación sin servidor con AWS Toolkit mediante AWS
Serverless Application Model (AWS SAM).

1. En la ventana AWS Explorer, haga clic con el botón derecho en el nodo Lambda y, a continuación,
elija Create Lambda SAM Application (Crear aplicación de SAM de Lambda).
Note

También puede hacer clic en el icono de menú situado en el encabezado de AWS Explorer y
elegir Create Lambda SAM Application (Crear aplicación de SAM de Lambda).
2. Elija el tiempo de ejecución para su aplicación de SAM. Para este ejemplo, elija nodejs12.x.
Note

Si selecciona uno de los tiempos de ejecución con “(Imagen)”, su aplicación es el tipo de


paquete Image. Si selecciona uno de los tiempos de ejecución sin “(Imagen)”, su aplicación
es el tipo Zip. Para obtener más información acerca de la diferencia entre los tipos de
paquetes Image y Zip, consulte Paquetes de implementación de Lambda en la Guía para
desarrolladores de AWS Lambda.
3. Elija una de las siguientes plantillas para la aplicación sin servidor:

370
AWS Cloud9 Guía del usuario
Creación de una aplicación sin servidor

• AWS SAM Hello World: plantilla básica con una función de Lambda que devuelve el clásico mensaje
“Hola, mundo”.
• Aplicación de muestra AWS Step Functions: aplicación de muestra que ejecuta un flujo de trabajo
bursátil. Step Functions orquesta las interacciones de las funciones de Lambda involucradas.
4. Elija una ubicación para el nuevo proyecto. Puede seleccionar una carpeta de espacio de trabajo
existente si hay una disponible o buscar otra carpeta. Si elige Select a different folder (Seleccionar una
carpeta diferente), aparece un cuadro de diálogo que le permite seleccionar una ubicación de carpeta.
5. Ingrese un nombre para su nueva aplicación. Para este ejemplo, use my-sam-app-nodejs. Después
de pulsar Intro, AWS Toolkit tarda unos momentos en crear el proyecto.

Cuando se crea el proyecto, puede ver los archivos de la aplicación en la ventana Environment (Entorno).
Debería aparecer en la ventana Explorer.

371
AWS Cloud9 Guía del usuario
Creación de una aplicación sin servidor

372
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor

Ejecución y depuración de aplicaciones sin servidor


Puede utilizar AWS Toolkit para configurar cómo depurar aplicaciones sin servidor y ejecutarlas localmente
en su entorno de desarrollo. Puede depurar una aplicación sin servidor definida por una plantilla de AWS
Serverless Application Model (AWS SAM). Esta plantilla utiliza una sintaxis simple de YAML para describir
recursos como funciones, API, bases de datos y mapeos de fuentes de eventos que componen una
aplicación sin servidor.

Para ver más de cerca la plantilla de AWS SAM, consulte la anatomía de la plantilla de AWS SAM en la
Guía para desarrolladores de AWS Serverless Application Model.

Alternativamente, puede depurar rápidamente las aplicaciones sin servidor que no se han confirmado en
una plantilla de SAM.

Comience a configurar el comportamiento de depuración mediante acciones en línea para identificar una
función de AWS Lambda apta. Para utilizar la infraestructura definida por la plantilla de SAM, utilice la
acción en línea en el archivo con formato YAML correspondiente. Para probar la función directamente sin
la plantilla, utilice el enlace contextual para el controlador de Lambda en el archivo de aplicación.
Note

En este ejemplo, estamos depurando una aplicación que usa JavaScript. No obstante, puede
usar las características de depuración disponibles en AWS Toolkit con los siguientes lenguajes y
tiempos de ejecución:

• JavaScript: Node.js 10.x, 12.x, 14.x


• Python: 3.7, 3.8 (las aplicaciones sin servidor de Python 2.7 y 3.6 se pueden ejecutar pero no
depurar mediante AWS Toolkit.

Su elección de lenguaje también afecta a la manera en que los vínculos contextuales indican los
controladores de Lambda aptos. Para obtener más información, consulte Ejecución y depuración
de funciones sin servidor directamente desde el código (p. 374) .

Uso de plantillas de SAM para ejecutar y depurar aplicaciones sin


servidor
Para las aplicaciones que se ejecutan y depuran con una plantilla de SAM, un archivo con formato YAML
describe el comportamiento de la aplicación y los recursos que utiliza. Si crea una aplicación sin servidor
mediante AWS Toolkit, un archivo llamado template.yaml se genera automáticamente para su proyecto.

En este procedimiento, utilizará la aplicación de ejemplo que se creó en Creación de una aplicación sin
servidor (p. 370).

Para utilizar una plantilla de SAM para ejecutar y depurar una aplicación sin servidor

1. Para ver los archivos de aplicación que componen la aplicación sin servidor, vaya a la ventana
Environment (Entorno).
2. En la carpeta de la aplicación (por ejemplo, my-sample-app), abra el archivo template.yaml.
3. Encima del editor de template.yaml, seleccione Edit Launch Configuration (Editar la configuración
de lanzamiento) en el menú desplegable.

Un nuevo editor muestra el archivo launch.json que proporciona una configuración de depuración
con atributos predeterminados.
4.
Edite o confirme los valores de las siguientes propiedades de configuración:

373
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor

• "name": ingrese un nombre fácil de leer para que aparezca en el campo desplegable Configuration
(Configuración) de la vista Run (Ejecución).
• "target": asegúrese de que el valor es "template" para que la plantilla de SAM sea el punto de
entrada para la sesión de depuración.
• "templatePath": ingrese una ruta relativa o absoluta para el archivo template.yaml.
• "logicalId": asegúrese de que el nombre coincida con el especificado en la sección
Resources (Recursos) de la plantilla de SAM. En este caso, es HelloWorldFunction de
tipoAWS::Serverless::Function.

Para obtener más información sobre estas y otras entradas del archivo launch.json, consulte
Opciones de configuración para depurar aplicaciones sin servidor (p. 379).
5. Si está satisfecho con la configuración de depuración, guarde el archivo launch.json. A
continuación, elija el botón de reproducción verde junto a RUN para iniciar la depuración.
Note

Si la aplicación de SAM no se ejecuta, consulte la ventana Output (Salida) para ver si el


error se debe a una imagen de Docker que no se compila. Es posible que tenga que liberar
espacio del disco en el entorno.
Para obtener más información, consulte Error al ejecutar aplicaciones SAM localmente en
AWS Toolkit porque el entorno de AWS Cloud9 no tiene suficiente espacio en disco (p. 599)
.

Cuando se inician las sesiones de depuración, el panel DEBUG CONSOLE (CONSOLA DE


DEPURACIÓN) muestra la salida de la depuración y los valores devueltos por la función de Lambda.
(Al depurar aplicaciones de SAM, AWS Toolkit se selecciona como canal de Output (Salida) en el
panel Output (Salida).
Note

Para los usuarios de Windows, si encuentra un error de montaje de Docker durante este
proceso, es posible que deba actualizar las credenciales de las unidades compartidas (en
la configuración de Docker). Un error de montaje de Docker tiene un aspecto similar al
siguiente.

Fetching lambci/lambda:nodejs10.x Docker container image......


2019-07-12 13:36:58 Mounting C:\Users\<username>\AppData\Local\Temp\ ... as /
var/task:ro,delegated inside runtime container
Traceback (most recent call last):
...requests.exceptions.HTTPError: 500 Server Error: Internal Server Error ...

Ejecución y depuración de funciones sin servidor directamente


desde el código
Al probar la aplicación de AWS SAM, puede optar por ejecutar y depurar solo la función de Lambda y
excluir otros recursos definidos por la plantilla de SAM. Este enfoque implica el uso de una acción en línea
para identificar los controladores de funciones de Lambda en el código fuente que se pueden invocar
directamente.

Los controladores de Lambda que detectan los vínculos contextuales dependen del lenguaje y el tiempo de
ejecución que esté utilizando para su aplicación.

374
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor

Lenguaje/tiempo de ejecución Criterios para identificar las funciones de Lambda


mediante enlaces contextuales

JavaScript (Node.js 10.x, 12.x y 14.x) La función tiene las siguientes características:

• Es una función exportada con hasta tres


parámetros.
• Tiene un archivo package.json en su carpeta
principal en la carpeta del área de trabajo.

Python (3.7 y 3.8) La función tiene las siguientes características:

• Es una función de alto nivel.


• Tiene un archivo requirements.txt en su
carpeta principal en la carpeta del área de
trabajo.

Para ejecutar y depurar una aplicación sin servidor directamente desde el código de la aplicación

1. Para ver los archivos de la aplicación sin servidor, vaya a la carpeta de la aplicación mediante la
selección del icono de carpeta situado junto al editor.
2. Desde la carpeta de la aplicación (my-sample-app, por ejemplo), expanda la carpeta de la función
(hello-world, en este caso) y abra el archivo app.js.
3. En la acción en línea que identifica una función de controlador de Lambda válida, elija Add Debug
Configuration.
4. Seleccione el tiempo de ejecución en el que se ejecutará la aplicación de SAM.
5. En el editor del archivo launch.json, edite o confirme los valores de las siguientes propiedades de
configuración:

• "name": ingrese un nombre fácil de leer.


• "target": asegúrese de que el valor es "code" para que un controlador de funciones de Lambda
se invoque directamente.
• "lambdaHandler": ingrese el nombre del método en el código al que Lambda llama para
ejecutar su función. Por ejemplo, para aplicaciones en JavaScript, el valor predeterminado es
app.lambdaHandler.
• "projectRoot": ingrese la ruta al archivo de aplicación que contiene la función de Lambda.
• "runtime": ingrese o confirme un tiempo de ejecución válido para el entorno de ejecución de
Lambda; por ejemplo, "nodejs.12x".
• "payload". Elija una de las siguientes opciones para definir la carga del evento que desea
proporcionar a la función de Lambda como entrada:
• "json": pares clave-valor con formato JSON que definen la carga del evento.
• "path": ruta al archivo que se utiliza como carga del evento.
6.
Si está satisfecho con la configuración de depuración, elija la flecha de reproducción verde junto a
RUN para iniciar la depuración.

Cuando se inician las sesiones de depuración, el panel DEBUG CONSOLE (CONSOLA DE


DEPURACIÓN) muestra la salida de la depuración y los valores devueltos por la función de Lambda.
(Al depurar aplicaciones de SAM, AWS Toolkit se selecciona como el canal de Output (Salida) en el
panel Output (Salida).

375
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor

Note

Si Docker se menciona en los mensajes de error, consulte esta nota.

Ejecución y depuración de recursos locales de Amazon API


Gateway
Puede ejecutar o depurar recursos locales de AWS SAM API Gateway, especificados en template.yaml,
mediante la ejecución de una configuración de lanzamiento de AWS Cloud9 de type=aws-sam con
invokeTarget.target=api.
Note

API Gateway admite dos tipos de API: REST y HTTP. Sin embargo, la característica API Gateway
con AWS Toolkit solo admite las API REST. A veces las API HTTP se llaman “API Gateway V2”.

Para ejecutar y depurar recursos de API Gateway locales

1. Elija uno de los siguientes enfoques para crear una configuración de lanzamiento para un recurso de
AWS SAM API Gateway:

• Opción 1: visite el código fuente del controlador (archivo .js, .cs o .py) en su proyecto de AWS
SAM, coloque el cursor sobre el controlador de Lambda y elija Add Debug Configuration (Agregar
configuración de depuración). A continuación, en el menú, elija el elemento marcado como Evento
de API.
• Opción 2: edite launch.json y cree una nueva configuración de lanzamiento mediante la sintaxis
siguiente.

{
"type": "aws-sam",
"request": "direct-invoke",
"name": "myConfig",
"invokeTarget": {
"target": "api",
"templatePath": "n12/template.yaml",
"logicalId": "HelloWorldFunction"
},
"api": {
"path": "/hello",
"httpMethod": "post",
"payload": {
"json": {}
}
},
"sam": {},
"aws": {}
}

2. En el menú desplegable junto al botón Run (Ejecutar), elija la configuración de lanzamiento (llamada
myConfig en el ejemplo anterior).
3. (Opcional) Agregue puntos de interrupción al código del proyecto de Lambda.
4. Elija el botón Run (Ejecutar) junto al botón “reproducir” verde.
5. En el panel de resultados, vea los resultados.

376
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor

Configuración
Cuando utiliza el valor api de la propiedad invokeTarget.target, Toolkit cambia la validación y el
comportamiento de la configuración de lanzamiento para admitir un campo api.

{
"type": "aws-sam",
"request": "direct-invoke",
"name": "myConfig",
"invokeTarget": {
"target": "api",
"templatePath": "n12/template.yaml",
"logicalId": "HelloWorldFunction"
},
"api": {
"path": "/hello",
"httpMethod": "post",
"payload": {
"json": {}
},
"querystring": "abc=def&qrs=tuv",
"headers": {
"cookie": "name=value; name2=value2; name3=value3"
}
},
"sam": {},
"aws": {}
}

Reemplace los valores del ejemplo de la siguiente manera:

invokeTarget.logicalId

Un recurso de API.
path

La ruta de la API que solicita la configuración de lanzamiento; por ejemplo, "path": "/hello".

Debe ser una ruta de API válida resuelta desde el archivo template.yaml especificado por
invokeTarget.templatePath.
httpMethod

Uno de los verbos siguientes: “delete”, “get”, “head”, “options”, “patch”, “post”, “put”.
payload

La carga JSON (cuerpo HTTP) para enviar en la solicitud, con la misma estructura y las mismas reglas
que el campo lambda.payload.

payload.path apunta a un archivo que contiene la carga JSON.

payload.json especifica una carga JSON en línea.


headers

Mapa opcional de pares nombre-valor, que se utiliza para especificar encabezados HTTP que se
incluirán en la solicitud, tal y como se muestra en el siguiente ejemplo.

"headers": {
"accept-encoding": "deflate, gzip;q=1.0, *;q=0.5",
"accept-language": "fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5",
"cookie": "name=value; name2=value2; name3=value3",

377
AWS Cloud9 Guía del usuario
Implementación de una aplicación sin servidor

"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36


(KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
}

querystring

Cadena opcional que establece la propiedad querystring de la solicitud; por ejemplo,


"querystring": "abc=def&ghi=jkl".
aws

Cómo se proporciona la información de conexión de AWS. Para obtener más información, consulte
la tabla de propiedades de conexión de AWS (aws) en Opciones de configuración para depurar
aplicaciones sin servidor (p. 379).
sam

Procedimiento que sigue AWS SAM CLI para compilar la aplicación. Para obtener más información,
consulte las propiedades de AWS SAM CLI (“sam”) en Opciones de configuración para depurar
aplicaciones sin servidor (p. 379).

Implementación de una aplicación sin servidor


En este ejemplo se muestra cómo implementar la aplicación sin servidor que se creó en el tema anterior
(Creación de una aplicación sin servidor (p. 370)) en AWS mediante el AWS Toolkit for Visual Studio
Code.

Requisitos previos
• Asegúrese de elegir un nombre de bucket que sea globalmente único para Amazon S3.
• Asegúrese de que las credenciales configuradas incluyen el acceso de lectura/escritura adecuado a los
siguientes servicios: Amazon S3, AWS CloudFormation, AWS Lambda y Amazon API Gateway.
• Para aplicaciones con el tipo de implementación Image, asegúrese de que dispone de un nombre de
bucket de Amazon S3 globalmente único y de un URI de repositorio de Amazon ECR para utilizarlo en la
implementación.

Implementación de una aplicación sin servidor


1. En la ventana AWS Explorer, abra el menú contextual (clic con el botón derecho) del nodo Lambda y
seleccione Deploy SAM Application (Implementar la aplicación de SAM).
2. Elija el archivo template.yaml que desea utilizar para la implementación.
3. Ahora elija la región de AWS en la que desea implementar.
4. Ingrese el nombre de un bucket de Amazon S3 que se pueda utilizar en esta implementación. El
bucket debe estar en la región de AWS en la que está realizando la implementación.
Warning
El nombre del bucket de Amazon S3 debe ser único globalmente para todos los nombres de
buckets existentes en Amazon S3. Por lo tanto, debe agregar un identificador único al nombre
indicado en el siguiente ejemplo (o elegir un nombre diferente).
5. Si su aplicación sin servidor incluye una función con el tipo de paquete Image, ingrese el nombre de
un repositorio de Amazon ECR que se pueda utilizar en esta implementación. El repositorio debe estar
en la región en la que está realizando la implementación.
6. Introduzca el nombre para la pila implementada, que puede ser nuevo o existente.
7. Verifique el éxito de la implementación en la pestaña AWS Toolkit de la consola.

378
AWS Cloud9 Guía del usuario
Eliminación de una aplicación sin servidor

Si se produce un error, aparece un mensaje en la parte inferior derecha.

Si esto sucede, verifique el texto de la pestaña AWS Toolkit para obtener más información. A
continuación se muestra un ejemplo de información sobre un error.

Error with child process: Unable to upload artifact HelloWorldFunction referenced by


CodeUri parameter of HelloWorldFunction resource.
S3 Bucket does not exist. Execute the command to create a new bucket
aws s3 mb s3://pbart-my-sam-app-bucket
An error occurred while deploying a SAM Application. Check the logs for more
information by running the "View AWS Toolkit Logs" command from the Command Palette.

En este ejemplo, el error se produjo porque el bucket de Amazon S3 no existía.

Una vez que se haya realizado la implementación, verá la aplicación en AWS Explorer. Consulte
Invocación de funciones de Lambda remotas (p. 361) para obtener información acerca de cómo invocar
la función de Lambda que se creó como parte de la aplicación.

Eliminación de una aplicación sin servidor de la nube


de AWS
Eliminar una aplicación sin servidor implica eliminar la pila de AWS CloudFormation que ha implementado
previamente en la nube de AWS. Tenga en cuenta que este procedimiento no elimina el directorio de la
aplicación del anfitrión local.

1. Abra AWS Explorer.


2. En la ventana AWS Explorer, expanda la región que contiene la aplicación implementada que desea
eliminar y, a continuación, expanda AWS CloudFormation.
3. Abra el menú contextual (haciendo clic con el botón derecho) del nombre de la pila de AWS
CloudFormation que corresponde a la aplicación sin servidor que desea eliminar y, a continuación, elija
Delete CloudFormation Stack (Eliminar pila de CloudFormation).
4. Para confirmar que desea eliminar la pila seleccionada, elija Delete (Eliminar).

Si la eliminación de la pila se realiza correctamente, AWS Toolkit elimina el nombre de la pila de la lista
AWS CloudFormation en AWS Explorer.

Opciones de configuración para depurar aplicaciones


sin servidor
Con las acciones en línea, puede encontrar y definir fácilmente las propiedades para invocar funciones
de Lambda directamente o con la plantilla de SAM. También puede definir las propiedades de "lambda"
(cómo se ejecuta la función), "sam" (cómo compila la aplicación AWS SAM CLI) y "aws" (cómo se
proporciona la información de conexión de AWS).

AWS SAM: invocación directa del controlador de Lambda/invocación de Lambda basada en


plantilla

Propiedad Description (Descripción)

type Especifica qué extensión administra la configuración de lanzamiento.


Siempre se establece en aws-sam para usar AWS SAMCLI para
realizar la compilación y depuración localmente.

379
AWS Cloud9 Guía del usuario
Opciones de configuración para
depurar aplicaciones sin servidor

Propiedad Description (Descripción)

name Especifica un nombre fácil de leer que aparecerá en la lista Debug


launch configuration (Depurar configuración de lanzamiento).

request Especifica el tipo de configuración que debe realizar la extensión


designada (aws-sam). Siempre se establece en direct-invoke
para lanzar la función de Lambda.

invokeTarget Especifica el punto de entrada para la invocación del recurso.

Para invocar directamente la función de Lambda, establezca los


valores de los campos invokeTarget siguientes:

• target – se establece en code.


• lambdaHandler: nombre del controlador de funciones de
Lambda que se va a invocar.
• projectRoot: ruta del archivo de aplicación que contiene el
controlador de Lambda.

Para invocar los recursos de Lambda con la plantilla de SAM,


establezca los valores de los campos invokeTarget siguientes:

• target – se establece en template.


• templatePath: ruta al archivo de plantilla de SAM.
• logicalId: nombre del recurso de AWS::Lambda::Function
o AWS::Serverless::Function que se va a invocar. Puede
encontrar el nombre del recurso en la plantilla de SAM con formato
YAML.

Propiedades de Lambda ("lambda")

Propiedad Description (Descripción)

environmentVariables Pasa parámetros operativos a la función. Por ejemplo, si está


escribiendo en un bucket de Amazon S3, en lugar de codificar de
forma rígida el nombre del bucket, configúrelo como una variable de
entorno.

payload Proporciona dos opciones para la carga del evento que proporciona
a la función de Lambda como entrada.

• "json": pares clave-valor con formato JSON que definen la carga


del evento.
• "path": ruta al archivo que se utiliza como carga del evento.

memoryMB Especifica los megabytes de memoria proporcionados para ejecutar


una función de Lambda invocada.

runtime El tiempo de ejecución que usa la función de Lambda. Para obtener


más información, consulte Tiempos de ejecución de AWS Lambda.

timeoutSec Establece el tiempo permitido, en segundos, antes de que se agote


la sesión de depuración.

380
AWS Cloud9 Guía del usuario
Opciones de configuración para
depurar aplicaciones sin servidor

La extensión de AWS Toolkit utiliza AWS SAM CLI para compilar y depurar aplicaciones sin servidor
localmente. Puede configurar el comportamiento de los comandos de AWS SAM CLI que utilizan las
propiedades de la configuración de "sam" en el archivo launch.json.

Propiedades de AWS SAM CLI ("sam")

Propiedad Description (Descripción) Valor predeterminado

buildArguments Configura el modo en que el Cadena vacía


comando sam build compila el
código fuente de Lambda. Para
ver las opciones de compilación,
consulte la compilación de sam
en la Guía para desarrolladores
de AWS Serverless Application
Model.

containerBuild Indica si se debe compilar su false


función en un contenedor de
Docker como AWS Lambda.

dockerNetwork Especifica el nombre o el ID de Cadena vacía


una red de Docker existente a
la que deben conectarse los
contenedores de Lambda y
Docker, junto con la red en modo
puente predeterminada. Si no
se especifica, los contenedores
de Lambda se conectan solo a
la red Docker en modo puente
predeterminada.

localArguments Argumentos adicionales de Cadena vacía


invocación local.

skipNewImageCheck Especifica si el comando debe false


omitir la extracción de la última
imagen de Docker para el tiempo
de ejecución de Lambda.

template Personaliza la plantilla de SAM "parameters":{}


mediante parámetros para
ingresar valores de cliente
en ella. Para obtener más
información, consulte Parámetros
en la Guía del usuario de AWS
CloudFormation.

Propiedades de conexión de AWS ("aws")

Propiedad Description (Descripción) Valor predeterminado

credentials Selecciona un perfil Las credenciales de AWS


específico (por ejemplo, proporcionadas por el archivo
profile:default) de su de configuración de AWS
archivo de credenciales para compartido existente o el
obtener las credenciales de archivo de credenciales de AWS
AWS. compartido.

381
AWS Cloud9 Guía del usuario
AWS Step Functions

Propiedad Description (Descripción) Valor predeterminado

Region Establece la región de AWS del Región de AWS predeterminada


servicio (por ejemplo, us-east-1). asociada al perfil de credenciales
activo.

Uso de AWS Step Functions con AWS Toolkit


AWS Toolkit ofrece compatibilidad con AWS Step Functions. Step Functions le permite crear máquinas
de estado que definen flujos de trabajo para funciones de AWS Lambda y otros servicios de AWS que
admiten la aplicación esencial para la empresa.

Puede usar AWS Toolkit para hacer lo siguiente con Step Functions:

• Cree y publique una máquina de estado, que es un flujo de trabajo compuesto por pasos individuales.
• Descargue un archivo que defina un flujo de trabajo de máquina de estado.
• Ejecute un flujo de trabajo de máquina de estado con la entrada que ha ingresado o seleccionado.

Temas
• Requisitos previos (p. 382)
• Creación y publicación de una máquina de estado (p. 382)
• Ejecución de una máquina de estado en AWS Toolkit (p. 383)
• Descargue un archivo de definición de máquina de estado y visualice su flujo de trabajo (p. 384)

Requisitos previos
Step Functions puede ejecutar código y acceder a recursos de AWS (como invocar una función de
Lambda). Para mantener la seguridad, debe conceder a Step Functions acceso a esos recursos mediante
un rol de IAM.

Con AWS Toolkit, puede beneficiarse de los roles de IAM generados de forma automática, que son válidos
para la región de AWS en la que crea la máquina de estado. Para crear su propio rol de IAM para una
máquina de estado, consulte Cómo funciona AWS Step Functions con IAM en la Guía para desarrolladores
de AWS Step Functions.

Creación y publicación de una máquina de estado


Al crear una máquina de estado con AWS Toolkit, tiene que elegir una plantilla inicial que defina un flujo
de trabajo para un caso empresarial. A continuación, puede editar o reemplazar esa plantilla para que se
adapte mejor a sus necesidades específicas. Para obtener más información sobre la definición de una
máquina de estado en un archivo que representa su estructura, consulte Lenguaje de estados de Amazon
en la Guía para desarrolladores de AWS Step Functions.

1. En el panel de AWS Explorer, abra el menú contextual (haga clic con el botón derecho) de Step
Functions y, a continuación, elija Create a new Step Function state machine (Crear una nueva
máquina de estado de Step Functions).
2. En el panel de comandos, elija una plantilla inicial para el flujo de trabajo de la máquina de estado.
3. A continuación, elija un formato para el archivo de Lenguaje de estados de Amazon (ASL) que define
su máquina de estado.

Se abre un editor para mostrar el archivo de ASL que define el flujo de trabajo de la máquina de
estado.

382
AWS Cloud9 Guía del usuario
Ejecución de una máquina de estado en AWS Toolkit

Note

Para obtener información sobre editar el archivo de ASL para personalizar el flujo de trabajo,
consulte Estructura de las máquinas de estado.
4. En el archivo de ASL elija Publish to Step Functions (Publicar en Step Funcions) para agregar la
máquina de estado a la nube de AWS.
Note

También puede elegir Render graph (Gráfico de representación) en el archivo de ASL para
mostrar una representación visual del flujo de trabajo de la máquina de estado.

5. En el panel de comandos, elija una región de AWS para alojar su instancia de Step Functions.
6. A continuación, puede optar por crear una nueva instancia de Step Functions o actualizar una
existente.

Quick Create

Esta opción le permite crear una nueva instancia de Step Functions desde el archivo de ASL
con step-functions/latest/dg/concepts-standard-vs-express.html. Se le pide que especifique lo
siguiente:

• Un rol de IAM que permita a la instancia de Step Functions ejecutar código y acceder a
recursos de AWS. (Puede elegir un rol de IAM generado de forma automática que sea válido
para la región de AWS en la que crea la máquina de estado).
• Un nombre para la nueva función.

Puede verificar si la máquina de estado se creó correctamente y obtener su ARN en la pestaña de


salida de AWS Toolkit.
Quick Update

Si ya existe una máquina de estado en la región de AWS, puede elegir una para actualizarla con
el archivo de ASL actual.

Puede verificar si la máquina de estado se actualizó correctamente y obtener su ARN en la


pestaña de salida de AWS Toolkit.

Después de crear una máquina de estado, aparece en Step Functions en el panel AWS Explorer. Si
no aparece inmediatamente, elija el menú Toolkit, Refresh Explorer (Actualizar Explorer).

Ejecución de una máquina de estado en AWS Toolkit


Puede usar AWS Toolkit para ejecutar máquinas de estado remotas. La máquina de estado en ejecución
recibe un texto JSON como entrada y transfiere dicha entrada al primer estado del flujo de trabajo. Los
estados individuales reciben JSON como entrada y normalmente pasan JSON como salida al siguiente
estado. Para obtener más información, consulte Procesamiento de entrada y salida en Step Functions.

1. En el panel AWS Explorer, elija Step Functions. A continuación, abra el menú contextual (haga clic con
el botón derecho) de una máquina de estado específica y elija Start Execution (Iniciar ejecución).
2. En el panel Start Execution (Iniciar ejecución), agregue la entrada en formato JSON para el flujo de
trabajo de la máquina de estado. Para ello, ingrese el texto directamente en el campo siguiente o
cargue un archivo desde su dispositivo local.
3. Elija Execute (Ejecutar).

383
AWS Cloud9 Guía del usuario
Descargue un archivo de definición de máquina
de estado y visualice su flujo de trabajo

La pestaña de salida de AWS Toolkit muestra una confirmación de que el flujo de trabajo se inició y
el ARN del ID del proceso. Puede usar el ID del proceso para verificar en la consola de AWS Step
Functions si el flujo de trabajo se ejecutó correctamente. También puede ver las marcas de tiempo de
cuándo inició y finalizó el flujo de trabajo.

Descargue un archivo de definición de máquina de


estado y visualice su flujo de trabajo
Descargar una máquina de estado significa que descarga un archivo que contiene texto JSON que
representa la estructura de esa máquina de estado. A continuación, puede editar este archivo para crear
una máquina de estado nueva o para actualizar una existente. Para obtener más información, consulte
Lenguaje de estados de Amazon en la Guía para desarrolladores de AWS Step Functions.

1. En el panel AWS Explorer, elija Step Functions. A continuación, abra el menú contextual (haga clic
con el botón derecho) de una máquina de estado específica y elija Download Definition (Descargar
definición).
Note

El menú contextual también ofrece las opciones Copy Name (Copiar nombre) y Copy ARN
(Copiar ARN).
2. En el cuadro de diálogo Save (Guardar), seleccione la carpeta del entorno en la que almacena el
archivo de máquina de estado descargado y, a continuación, elija Save (Guardar).

El archivo con formato JSON que define el flujo de trabajo de la máquina de estado se muestra en un
editor.
3. Para mostrar una representación visual del flujo de trabajo, elija Render graph (Gráfico de
representación).

Una ventana muestra un diagrama de flujo, que muestra la secuencia de estados del flujo de trabajo
de la máquina de estado.

Uso de documentos de automatización de Systems


Manager
AWS Systems Manager le ofrece visibilidad y control de su infraestructura de AWS. Systems Manager
proporciona una interfaz de usuario unificada para que pueda ver los datos operativos de varios servicios
de AWS y automatizar tareas operativas en todos sus recursos de AWS.

Un documento de Systems Manager define las acciones que Systems Manager lleva a cabo en las
instancias administradas. Un documento de automatización es un tipo de documento de Systems Manager
que usa para llevar a cabo tareas de implementación y mantenimiento comunes como, por ejemplo, crear o
actualizar una imagen de máquina de Amazon (AMI). En este tema se destaca cómo crear, editar, publicar
y eliminar documentos de automatización con AWS Toolkit.

Temas
• Hipótesis y requisitos previos (p. 385)
• Permisos de IAM para documentos de Systems Manager Automation (p. 385)
• Creación de un nuevo documento de automatización de Systems Manager (p. 386)

384
AWS Cloud9 Guía del usuario
Hipótesis y requisitos previos

• Publicación de un documento de automatización de Systems Manager (p. 386)


• Edición de un documento de automatización de Systems Manager existente (p. 387)
• Uso de versiones (p. 387)
• Eliminación de un documento de automatización de Systems Manager (p. 388)
• Ejecución de un documento de automatización de Systems Manager (p. 388)
• Solución de problemas de documentos de automatización de Systems Manager en AWS Toolkit
(p. 388)

Hipótesis y requisitos previos


Antes de comenzar, asegúrese de que:

• Está familiarizado con Systems Manager. Para obtener más información, consulte la Guía del usuario de
AWS Systems Manager.
• Está familiarizado con los casos de uso de automatización de Systems Manager. Para obtener más
información, consulte AWS Systems Manager Automation en la Guía del usuario de AWS Systems
Manager.

Permisos de IAM para documentos de Systems


Manager Automation
Debe tener un perfil de credenciales que contenga los permisos de AWS Identity and Access Management
(IAM) necesarios para crear, editar, publicar y eliminar documentos de automatización de Systems
Manager. En el siguiente documento de política se definen los permisos de IAM necesarios que se pueden
utilizar en una política maestra:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssm:ListDocuments",
"ssm:ListDocumentVersions",
"ssm:DescribeDocument",
"ssm:GetDocument",
"ssm:CreateDocument",
"ssm:UpdateDocument",
"ssm:UpdateDocumentDefaultVersion",
"ssm:DeleteDocument"
],
"Resource": "*"
}
]
}

Para obtener más información sobre cómo crear una política de IAM, consulte Creación de políticas de IAM
en la Guía del usuario de IAM.

385
AWS Cloud9 Guía del usuario
Creación de un nuevo documento de
automatización de Systems Manager

Creación de un nuevo documento de automatización


de Systems Manager
Puede crear un documento de automatización en JSON o YAML con AWS Toolkit. Cuando crea un
documento de automatización, se presenta en un archivo sin título. Puede asignar un nombre al archivo y
guardarlo, pero el archivo no se cargará a AWS hasta que lo publique.

Para crear un documento de automatización nuevo

1. Elija el icono de búsqueda del panel de navegación de la izquierda o presione Ctrl + P para abrir el
panel de búsqueda.
2. En el panel de búsqueda, comience a ingresar el término “systems manager” y elija el comando AWS:
Create a new Systems Manager Document Locally (AWS: Crear un nuevo documento de Systems
Manager local) cuando se muestre.
3. Elija una de las plantillas iniciales para un ejemplo de Hello World.
4. Elija JSON o YAML como formato del documento.

El editor muestra el nuevo documento de automatización.

Note

Cuando crea por primera vez un documento de automatización local, no aparece


automáticamente en AWS. Debe publicarlo en AWS antes de poder ejecutarlo.

Publicación de un documento de automatización de


Systems Manager
Después de crear o editar el documento de automatización en AWS Toolkit, puede publicarlo en AWS.

Para publicar el documento de automatización

1. Abra el documento de automatización que quiere publicar con el procedimiento descrito en Edición de
un documento de automatización de Systems Manager existente (p. 387).
2. Elija el icono de búsqueda del panel de navegación de la izquierda o presione Ctrl + P para abrir el
panel de búsqueda.
3. En el panel de búsqueda, comience a ingresar el término “systems manager” y elija el comando
AWS: Publish a new Systems Manager Document (AWS: Publicar un nuevo documento de Systems
Manager) cuando se muestre.
4. En Step 1 of 3 (Paso 1 de 3), elija la región de AWS en la que quiere publicar el documento.
5. En Step 2 of 3 (Paso 2 de 3), elija Quick Create (Creación rápida) para crear un documento de
automatización. O elija Quick Update (Actualización rápida) para actualizar un documento de
automatización en esa región de AWS.
Note

Solo puede actualizar los documentos de automatización de su propiedad. Si elige Quick


Update (Actualización rápida) y no tiene ningún documento en esa región, un mensaje le
avisa de que tiene que publicar un documento antes de actualizarlo.
6. En Step 3 of 3 (Paso 3 de 3), en función de lo que haya elegido en el paso anterior, ingrese el
nombre de un nuevo documento de automatización o seleccione un documento existente que quiera
actualizar.

386
AWS Cloud9 Guía del usuario
Edición de un documento de automatización
de Systems Manager existente

Note

Al publicar una actualización de un documento de automatización existente en AWS, se


agrega una nueva versión al documento. Si un documento tiene varias versiones, puede
establecer una como predeterminada (p. 387).

Edición de un documento de automatización de


Systems Manager existente
Usa AWS Explorer para buscar documentos de automatización de Systems Manager existentes. Al abrir
un documento existente, aparece un archivo sin título en un editor de AWS Cloud9. Hay tres tipos de
documento de automatización que descarga:

• Owned by Amazon (Propiedad de Amazon): documentos de SSM configurados previamente que se


pueden utilizar al especificar parámetros en tiempo de ejecución.
• Owned by me (De mi propiedad): documentos que he creado y publicado en AWS.
• Shared with me (Compartido conmigo): documentos que los propietarios han compartido, en función de
su ID de cuenta de AWS.

Los únicos tipos de documentos que puede actualizar en AWS son los Owned by me (De mi propiedad).
También puede descargar los documentos de automatización compartidos o propiedad de Amazon
y editarlos en AWS Cloud9. Sin embargo, al publicar en AWS, tiene que usar la opción de crear un
documento nuevo o actualizar un documento existente de su propiedad. No puede crear nuevas versiones
de documentos que tengan otro propietario o sean propiedad de Amazon.

Para obtener más información, consulte Crear documentos de AWS Systems Manager en la Guía del
usuario de AWS Systems Manager.

1. En AWS Explorer, en Systems Manager, elija la categoría de documento de SSM que quiere
descargar: Owned by Amazon (Propiedad de Amazon), Owned by me (De mi propiedad) o Shared
with me (Compartido conmigo).
2. Para un documento específico, abra el menú contextual (haga clic con el botón derecho) y elija
Download as YAML (Descargar como YAML) o Download as JSON (Descargar como JSON).

El documento SSM con formato se muestra en una nueva pestaña del editor.

Después de finalizar la edición, puede usar el comando AWS: Publish a new Systems Manager Document
(Publicar un nuevo documento de Systems Manager) para crear un nuevo documento en la nube de AWS
o actualizar un documento existente de su propiedad.

Uso de versiones
Los documentos de automatización de Systems Manager utilizan versiones para la administración de
cambios. Con AWS Toolkit, puede establecer la versión predeterminada del documento, que es la versión
que se usa al ejecutar el documento.

Para establecer una versión predeterminada

• En AWS Explorer, vaya al documento en el que quiere establecer la versión predeterminada, abra el
menú contextual (haga clic con el botón derecho) del documento y elija Set default version (Establecer
versión predeterminada).

387
AWS Cloud9 Guía del usuario
Eliminación de un documento de
automatización de Systems Manager

Note
Si el documento elegido solo tiene una versión, no podrá cambiar el valor predeterminado.

Eliminación de un documento de automatización de


Systems Manager
Puede eliminar los documentos de automatización de su propiedad en AWS Toolkit. Al eliminar un
documento de automatización, se elimina el documento y todas sus versiones.
Important
• La eliminación es una acción destructiva que no se puede deshacer.
• Al eliminar un documento de automatización que ya se ha iniciado, no se eliminan los recursos
de AWS que se crearon o modificaron cuando se ejecutó.
• La eliminación solo se permite si el documento es de su propiedad.

Para eliminar el documento de automatización

1. En el panel de AWS Explorer, en Systems Manager, expanda Owned by Me (De mi propiedad) para
mostrar sus documentos.
2. Abra el menú contextual (haga clic con el botón derecho) del documento que quiera eliminar y elija
Delete document (Eliminar documento).
3. En el cuadro de diálogo de advertencia que se muestra, elija Delete (Eliminar) para confirmarlo.

Ejecución de un documento de automatización de


Systems Manager
Después de publicar el documento de automatización en AWS, puede ejecutarlo para llevar a cabo tareas
en su nombre en su cuenta de AWS. Para ejecutar el documento de automatización, utilice la AWS
Management Console, las API de Systems Manager, la AWS CLI o AWS Tools for PowerShell. Para
obtener instrucciones sobre cómo ejecutar un documento de automatización, consulte Ejecución de una
automatización sencilla en la Guía del usuario de AWS Systems Manager.

Como alternativa, si quiere usar uno de los AWS SDK con las API de Systems Manager para ejecutar el
documento de automatización, consulte las referencias de AWS SDK.
Important
La ejecución de un documento de automatización puede crear nuevos recursos en AWS y puede
incurrir en costos de facturación. Le recomendamos encarecidamente que comprenda lo que
creará su documento de automatización en su cuenta antes de ejecutarlo.

Solución de problemas de documentos de


automatización de Systems Manager en AWS Toolkit
He guardado mi documento de automatización en AWS Toolkit, pero no lo veo en la AWS Management
Console.

Al guardar un documento de automatización en AWS Toolkit, no se publica el documento de


automatización en AWS. Para obtener más información sobre la publicación del documento de
automatización, consulte Publicación de un documento de automatización de Systems Manager (p. 386).

388
AWS Cloud9 Guía del usuario
Solución de problemas

Al publicar el documento de automatización tuve un error de permisos.

Asegúrese de que el perfil de las credenciales de AWS tiene los permisos necesarios para publicar
documentos de automatización. Si desea ver un ejemplo de política de permisos, consulte Permisos de
IAM para documentos de Systems Manager Automation (p. 385).

Publiqué mi documento de automatización en AWS, pero no lo veo en el panel de AWS Explorer.

Asegúrese de haber publicado el documento en la misma región de AWS que está explorando en el panel
de AWS Explorer

He eliminado mi documento de automatización, pero se me siguen facturando los recursos que se crearon.

Al eliminar un documento de automatización, no se eliminan los recursos que se crearon o modificaron.


Puede identificar los recursos de AWS que ha creado desde la consola de Administración de facturación y
costos de AWS, explorar los cargos y elegir qué recursos quiere eliminar.

389
AWS Cloud9 Guía del usuario
Muestra de AWS CLI y aws-shell

Tutoriales y ejemplos para AWS


Cloud9
¿Es la primera vez que utiliza AWS Cloud9? Haga un recorrido por el IDE en Introducción: tutoriales
básicos (p. 32).

Experimente con estos tutoriales para aumentar sus conocimientos y confianza con AWS Cloud9 con
diversos lenguajes de programación y servicios de AWS.

Temas
• Muestra de AWS Command Line Interface y aws-shell para AWS Cloud9 (p. 390)
• AWS CodeCommit Ejemplo de para AWS Cloud9 (p. 394)
• Ejemplo de Amazon DynamoDB para AWS Cloud9 (p. 400)
• Ejemplo de AWS CDK para AWS Cloud9 (p. 411)
• Muestra de LAMP para AWS Cloud9 (p. 418)
• Instalación de WordPress para AWS Cloud9 (p. 426)
• Muestra de Java para AWS Cloud9 (p. 429)
• Muestra de C++ para AWS Cloud9 (p. 439)
• Tutorial de Python para AWS Cloud9 (p. 446)
• Muestra de .NET Core para AWS Cloud9 (p. 450)
• Muestra de Node.js para AWS Cloud9 (p. 459)
• Muestra de PHP para AWS Cloud9 (p. 466)
• Tutorial: Ruby en AWS Cloud9 (p. 471)
• Ejemplo de Go para AWS Cloud9 (p. 478)
• Muestra de TypeScript para AWS Cloud9 (p. 484)
• Ejemplo de Docker para AWS Cloud9 (p. 490)
• Ejemplos relacionados (p. 498)

Muestra de AWS Command Line Interface y aws-


shell para AWS Cloud9
Esta muestra le permite configurar AWS Command Line Interface (AWS CLI), aws-shell o ambos en un
entorno de desarrollo de AWS Cloud9. AWS CLI y aws-shell son herramientas unificadas que proporcionan
una interfaz uniforme para interactuar con todas las partes de AWS. Puede utilizar la AWS CLI o el aws-
shell en lugar de la AWS Management Console para ejecutar comandos rápidamente para interactuar con
AWS. Algunos de estos comandos solo se pueden ejecutar con la AWS CLI o el aws-shell.

Para obtener más información sobre AWS CLI, consulte la Guía del usuario de AWS Command Line
Interface. Para el aws-shell, consulte los recursos siguientes:

390
AWS Cloud9 Guía del usuario
Requisitos previos

• aws-shell en el sitio web de GitHub


• aws-shell en el sitio web de pip

Para obtener una lista de comandos que puede ejecutar con AWS CLI para interactuar con AWS, consulte
la Referencia de los comandos de AWS CLI. Puede utilizar los mismos comandos con el aws-shell, salvo
que los inicie sin el prefijo aws.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 391)
• Paso 1: Instalar AWS CLI, aws-shell o ambos en el entorno (p. 391)
• Paso 2: Configurar la administración de credenciales en su entorno (p. 392)
• Paso 3: Ejecutar comandos básicos con AWS CLI o aws-shell en su entorno (p. 393)
• Paso 4: limpieza (p. 393)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar AWS CLI, aws-shell o ambos en el


entorno
En este paso, utilizará el IDE de AWS Cloud9 para instalar AWS CLI, aws-shell o ambos en su entorno a
fin de poder ejecutar comandos para interactuar con AWS.

Si utiliza un entorno de desarrollo de AWS Cloud9 EC2 y solo desea utilizar AWS CLI, puede pasar
directamente a Paso 3: Ejecutar comandos básicos con AWS CLI o aws-shell en su entorno (p. 393).
Esto se debe a que AWS CLI ya está instalado en un entorno de EC2 y ya hay un conjunto de credenciales
de acceso de AWS configurado en el entorno. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569).

Si no utiliza un entorno de EC2, siga estos pasos para instalar AWS CLI:

1. Con el entorno abierto, en el IDE, verifique si AWS CLI ya está instalado. En el terminal, ejecute
el comando aws --version . (Para iniciar una nueva sesión del terminal, en la barra de menús,
seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si AWS CLI ya está instalado, aparece
el número de versión con información como los números de versión de Python y el número de versión
del sistema operativo de la instancia de Amazon EC2 o su propio servidor. Si la AWS CLI está
instalada, continúe en Paso 2: Configurar la administración de credenciales en su entorno (p. 392).

391
AWS Cloud9 Guía del usuario
Paso 2: Configurar la administración
de credenciales en su entorno

2. Para instalar AWS CLI, consulte Instalación de AWS Command Line Interface en la Guía del usuario
de AWS Command Line Interface. Por ejemplo, en el caso de un entorno de EC2 que ejecute Amazon
Linux, ejecute estos tres comandos en el terminal, de uno en uno, para instalar AWS CLI.

sudo yum -y update # Install the latest system updates.


sudo yum -y install aws-cli # Install the AWS CLI.
aws --version # Confirm the AWS CLI was installed.

En el caso de un entorno de EC2 que ejecute Ubuntu Server, ejecute estos tres comandos en el
terminal en su lugar, de uno en uno, para instalar AWS CLI.

sudo apt update # Install the latest system updates.


sudo apt install -y awscli # Install the AWS CLI.
aws --version # Confirm the AWS CLI was installed.

Si desea instalar el aws-shell, siga estos pasos:

1. Con el entorno abierto, en el IDE, verifique si aws-shell ya está instalado. En el terminal, ejecute el
comando aws-shell . (Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione
Window [Ventana], New Terminal [Nuevo terminal]). Si el aws-shell está instalado, se muestra el
símbolo de aws>. Si el aws-shell está instalado, continúe en Paso 2: Configurar la administración de
credenciales en su entorno (p. 392).
2. Para instalar el aws-shell, utilice pip. Para ello, debe tener instalado Python.

Para verificar si Python ya está instalado (y para instalarlo si es necesario), siga las instrucciones de
Paso 1: Instalar Python (p. 446) en la Muestra de Python y, a continuación, vuelva a este tema.

Para comprobar si pip ya está instalado, en el terminal, ejecute el comando pip --version .
Si lo está, aparece el número de versión. Si pip no está instalado, instálelo ejecutando estos tres
comandos, de uno en uno, en el terminal.

wget https://bootstrap.pypa.io/get-pip.py # Get the pip install file.


sudo python get-pip.py # Install pip. (You might need to run 'sudo
python2 get-pip.py' or 'sudo python3 get-pip.py' instead, depending on how Python is
installed.)
rm get-pip.py # Delete the pip install file, as it is no
longer needed.

3. Para utilizar pip para instalar el aws-shell, ejecute el siguiente comando.

sudo pip install aws-shell

Paso 2: Configurar la administración de credenciales


en su entorno
Cada vez que utilice la AWS CLI o el aws-shell para llamar a un servicio de AWS, debe proporcionar un
conjunto de credenciales con la llamada. Estas credenciales determinan si la AWS CLI o el aws-shell
tienen los permisos adecuados para realizar esa llamada. Si las credenciales no cubren los permisos
adecuados, la llamada no se realizará correctamente.

Si utiliza un entorno de desarrollo de EC2 de AWS Cloud9, puede avanzar hasta Paso 3: Ejecutar
comandos básicos con AWS CLI o aws-shell en su entorno (p. 393). Esto se debe a que las credenciales
ya están configuradas en un entorno de EC2. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569).

392
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar comandos básicos
con AWS CLI o aws-shell en su entorno

Si no utiliza un entorno de EC2, debe almacenar manualmente sus credenciales en el entorno. Para ello,
siga las instrucciones de Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a
continuación, vuelva a este tema.

Paso 3: Ejecutar comandos básicos con AWS CLI o


aws-shell en su entorno
En este paso, utilizará AWS CLI o aws-shell en su entorno para crear un bucket en Amazon S3, ver los
buckets disponibles y, a continuación, eliminar el bucket.

1. Si desea utilizar el aws-shell pero aún no lo ha iniciado, inicie el aws-shell ejecutando el comando
aws-shell. Se muestra el símbolo aws>.
2. Cree un bucket. Ejecute el comando aws s3 mb con AWS CLI o el comando s3 mb con aws-
shell y especifique el nombre del bucket que se va a crear. En este ejemplo, utilizamos un bucket
denominado cloud9-123456789012-bucket, donde 123456789012 es su ID de cuenta de AWS.
Si usa otro nombre, sustitúyalo en todo este paso.

aws s3 mb s3://cloud9-123456789012-bucket # For the AWS CLI.


s3 mb s3://cloud9-123456789012-bucket # For the aws-shell.

Note

Los nombres de bucket deben ser únicos en todo AWS, no solo en la cuenta de AWS. El
nombre del bucket sugerido anterior puede ayudarle a crear un nombre de bucket único. Si
recibe un mensaje que contiene el error BucketAlreadyExists, debe ejecutar el comando
de nuevo con otro nombre de bucket.
3. Enumere los buckets disponibles. Ejecute el comando aws s3 ls con AWS CLI o el comando s3 ls
con aws-shell. Se muestra una lista de los buckets disponibles.
4. Eliminar el bucket. Ejecute el comando aws s3 rb con AWS CLI o el comando s3 rb con aws-shell
y especifique el nombre del bucket que se va a eliminar.

aws s3 rb s3://cloud9-123456789012-bucket # For the AWS CLI.


s3 rb s3://cloud9-123456789012-bucket # For the aws-shell.

Para confirmar si el bucket se ha eliminado, ejecute de nuevo el comando aws s3 ls con AWS CLI o
el comando s3 ls con aws-shell. El nombre del bucket que se haya eliminado no debería aparecer ya
en la lista.
Note

No es necesario eliminar el bucket si desea seguir utilizándolo. Para obtener más


información, consulte Add an Object to a Bucket (Adición de un objeto a un bucket) en la
Guía del usuario de Amazon Simple Storage Service. Consulte también Comandos de S3
en Referencia de los comandos de AWS CLI. (Recuerde que si no elimina el bucket, podrían
producirse cargos continuos en su cuenta de AWS).

Para continuar experimentando con AWS CLI, consulte Trabajar con Amazon Web Services en la Guía del
usuario de AWS Command Line Interface y en Referencia de los comandos de AWS CLI. Para continuar
experimentando con aws-shell, consulte Referencia de los comandos de AWS CLI y tenga en cuenta que
debe iniciar los comandos sin el prefijo aws.

Paso 4: limpieza
Si utiliza el shell de AWS, puede dejar de utilizarlo ejecutando el comando .exit o .quit .

393
AWS Cloud9 Guía del usuario
AWS CodeCommitEjemplo de

Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

AWS CodeCommit Ejemplo de para AWS Cloud9


Con esta muestra puede configurar un entorno de desarrollo de AWS Cloud9 para interactuar con un
repositorio de código remoto en CodeCommit. CodeCommit es un servicio de control de código fuente que
permite almacenar de forma privada y administrar repositorios de Git en la nube de AWS. Para obtener
más información sobre CodeCommit, consulte la Guía del usuario de AWS CodeCommit.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Estos incluyen posibles cargos
por servicios como Amazon EC2 y CodeCommit. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de AWS CodeCommit.

• Requisitos previos (p. 394)


• Paso 1: Configurar el grupo de IAM con los permisos de acceso necesarios (p. 394)
• Paso 2: crear un repositorio en AWS CodeCommit (p. 396)
• Paso 3: Conectar el entorno con el repositorio remoto (p. 396)
• Paso 4: Clonar el repositorio remoto en su entorno (p. 398)
• Paso 5: Agregar archivos al repositorio (p. 398)
• Paso 6: Limpieza (p. 400)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Configurar el grupo de IAM con los permisos


de acceso necesarios
Si sus credenciales de AWS están asociadas a un administrador de IAM en su cuenta de AWS y
desea utilizar ese usuario para trabajar con CodeCommit, vaya al Paso 2: Crear un repositorio en AWS
CodeCommit (p. 396).

Puede completar este paso con la AWS Management Console (p. 394) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 395).

Configurar el grupo de IAM con los permisos de acceso


necesarios usando la consola
1. Si todavía no ha iniciado sesión en la AWS Management Console, hágalo ahora.

394
AWS Cloud9 Guía del usuario
Paso 1: Configurar el grupo de IAM
con los permisos de acceso necesarios

En este paso, le recomendamos que inicie sesión con las credenciales de un usuario administrador de
IAM en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. Seleccione Groups (Grupos).
4. Elija el nombre del grupo.
5. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
6. En la lista con los nombres de las políticas, seleccione una de las siguientes casillas:
• Seleccione AWSCodeCommitPowerUser para acceder a toda la funcionalidad de CodeCommit y a
los recursos relacionados con el repositorio, a excepción de que no permite eliminar repositorios de
CodeCommit ni crear o eliminar los recursos relacionados con el repositorio en otros servicios de
AWS, como Amazon CloudWatch Events.
• Seleccione AWSCodeCommitFullAccess para tener el control total de repositorios de CodeCommit y
los recursos relacionados en la cuenta de AWS, incluida la posibilidad de eliminar repositorios.

(Si no ve ninguno de los nombres de política en la lista, escríbalo en el cuadro Filter (Filtrar) para
mostrarlo).
7. Elija Attach Policy (Adjuntar política).

Para ver la lista de los permisos de acceso que estas políticas administradas por AWS asignan a un grupo,
consulte Políticas administradas (predefinidas) por AWS para AWS CodeCommit en la Guía del usuario de
AWS CodeCommit.

Vaya al Paso 2: Crear un repositorio en AWS CodeCommit (p. 396).

Configurar un grupo de IAM con los permisos de acceso


necesarios usando AWS CLI
Ejecute el comando attach-group-policy de IAM y especifique el nombre del grupo y el nombre
de recurso de Amazon (ARN) de la política administrada por AWS que describe los permisos de acceso
necesarios, como:

aws iam attach-group-policy --group-name MyGroup --policy-arn POLICY_ARN

En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace POLICY_ARN por el
ARN de la política administrada por AWS como se indica a continuación:

• arn:aws:iam::aws:policy/AWSCodeCommitPowerUser para acceder a toda la funcionalidad de


CodeCommit y a los recursos relacionados con el repositorio, a excepción de que no permite eliminar
repositorios de CodeCommit ni crear o eliminar los recursos relacionados con el repositorio en otros
servicios de AWS, como Amazon CloudWatch Events.
• arn:aws:iam::aws:policy/AWSCodeCommitFullAccess para tener el control total de repositorios
de CodeCommit y los recursos relacionados en la cuenta de AWS, incluida la posibilidad de eliminar
repositorios.

Para ver la lista de los permisos de acceso que estas políticas administradas por AWS asignan a un grupo,
consulte Políticas administradas (predefinidas) por AWS para AWS CodeCommit en la Guía del usuario de
AWS CodeCommit.

395
AWS Cloud9 Guía del usuario
Paso 2: Crear un repositorio en CodeCommit

Paso 2: Crear un repositorio en CodeCommit


En este paso, se crea un repositorio de código remoto en CodeCommit mediante la consola de
CodeCommit.

Si ya tiene un repositorio de CodeCommit, vaya al Paso 3: Conectar el entorno con el repositorio


remoto (p. 396).

Puede completar este paso con la AWS Management Console (p. 396) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 396).

Crear un repositorio en CodeCommit usando la consola


1. Si ha iniciado sesión en la AWS Management Console como usuario administrador de IAM del paso
anterior pero no desea utilizar este usuario para crear el repositorio, cierre la sesión de la AWS
Management Console.
2. Abra la consola de CodeCommit en https://console.aws.amazon.com/codecommit/.
3. En la barra de navegación de la consola, utilice el selector de regiones para elegir la región de AWS en
la que desea crear el repositorio (por ejemplo, EE. UU. Este [Ohio]).
4. Si aparece una página de bienvenida, elija Get Started Now. Si no, elija Create repository (Crear
repositorio).
5. En la página Create repository (Crear repositorio), en el campo Repository name (Nombre del
repositorio), escriba un nombre para el repositorio, por ejemplo, MyDemoCloud9Repo. Si elige otro
nombre, sustitúyalo en todo este ejemplo.
6. (Opcional) En Description (Descripción), escriba un breve texto sobre el repositorio; (por ejemplo, This
is a demonstration repository for the AWS Cloud9 sample.).
7. Elija Create repository. Se muestra un panel Connect to your repository (Conectar con el repositorio).
Seleccione Close (Cerrar), ya que se conectará a su repositorio de una forma diferente más adelante en
este tema.

Salte al Paso 3: Conectar el entorno con el repositorio remoto (p. 396).

Crear un repositorio en CodeCommit usando AWS CLI


Ejecute el comando create-repository de AWS CodeCommit y especifique el nombre del repositorio,
una descripción opcional y la región de AWS en la que desea crear el repositorio, como:

aws codecommit create-repository --repository-name MyDemoCloud9Repo --repository-


description "This is a demonstration repository for the AWS Cloud9 sample." --region us-
east-2

En el comando anterior, sustituya us-east-2 por el ID de la región de AWS en la que se creará el


repositorio. Para ver una lista de las regiones admitidas, consulte AWS CodeCommit en la Referencia
general de Amazon Web Services.

Si decide usar otro nombre para el repositorio sustitúyalo en todo este ejemplo.

Paso 3: Conectar el entorno con el repositorio remoto


En este paso, utilice el IDE de AWS Cloud9 para conectarse al repositorio de CodeCommit que ha creado
o identificado en el paso anterior.

396
AWS Cloud9 Guía del usuario
Paso 3: Conectar el entorno con el repositorio remoto

Note

Si prefiere trabajar con Git a través de una interfaz visual, puede clonar el repositorio remoto y,
a continuación, agregar archivos utilizando la característica del panel de Git (p. 315) que está
disponible en el IDE.

Complete uno de los siguientes conjuntos de procedimientos, en función del tipo de entorno de desarrollo
de AWS Cloud9 que tenga.

Tipo de entorno Siga estos procedimientos

Entorno de EC2 1. Desde una sesión del terminal en el IDE, ejecute


los dos comandos siguientes:

git config --global credential.helper '!


aws codecommit credential-helper $@'
git config --global
credential.UseHttpPath true

Para obtener más información, consulte Paso


2: Configuración del auxiliar de credenciales de
AWS CLI en el entorno de desarrollo de EC2
de AWS Cloud9 en Integración de AWS Cloud9
con AWS CodeCommit en la Guía del usuario
de AWS CodeCommit.
2. Avance al Paso 4: Clonar el repositorio remoto
en su entorno (p. 398), más adelante en este
tema.

Entorno de SSH 1. Si Git todavía no está instalado en el entorno,


utilice una sesión del terminal en el IDE para
instalarlo. Para obtener más información,
consulte el Paso 2: Instalar Git en Pasos
de configuración para conexiones SSH a
repositorios de AWS CodeCommit en Linux,
macOS o Unix en la Guía del usuario de AWS
CodeCommit.
2. Complete el Paso 3: Configurar credenciales en
Linux, macOS o Unix en Pasos de configuración
para conexiones SSH a repositorios de AWS
CodeCommit en Linux, macOS o Unix en la
Guía del usuario de AWS CodeCommit.

Cuando se le indique que inicie sesión en la


AWS Management Console y abra la consola
de IAM, le recomendamos que inicie sesión con
las credenciales de un usuario administrador de
IAM en su cuenta de AWS. Si no puede hacerlo,
consulte con el administrador de su cuenta de
AWS.
3. Avance al Paso 4: Clonar el repositorio remoto
en su entorno (p. 398), más adelante en este
tema.

397
AWS Cloud9 Guía del usuario
Paso 4: Clonar el repositorio remoto en su entorno

Paso 4: Clonar el repositorio remoto en su entorno


En este paso, se utiliza el IDE de AWS Cloud9 para clonar el repositorio remoto de CodeCommit en su
entorno.

Para clonar el repositorio, ejecute el comando git clone , especificando la dirección URL de la
clonación del repositorio, que se muestra aquí como CLONE_URL .

git clone CLONE_URL

Para un entorno de EC2, se proporciona una URL de clonación HTTPS que comienza por https://. Para
un entorno de SSH, se proporciona una URL de clonación SSH que comienza por ssh://.

Para obtener la URL de clonación completa del repositorio, consulte Uso de la consola de AWS
CodeCommit para ver la información de los repositorios en la Guía del usuario de AWS CodeCommit.

Si su repositorio no tiene ningún archivo, se muestra un mensaje de advertencia, por ejemplo, You
appear to have cloned an empty repository. Este es el comportamiento esperado y se
abordará más adelante.

Paso 5: Agregar archivos al repositorio


En este paso, se crean tres archivos simples en el repositorio clonado de su entorno de AWS Cloud9. A
continuación, agregue los archivos al área de almacenamiento provisional de Git del repositorio clonado,
confirme los archivos almacenados provisionalmente y envíe la confirmación al repositorio remoto de
CodeCommit.

Si el repositorio clonado ya tiene archivos, ha terminado y puede ignorar el resto de esta muestra.

Para añadir archivos al repositorio

1. Cree un archivo nuevo. En la barra de menús, elija File (Archivo), New File (Archivo nuevo).
2. Escriba el contenido siguiente en el archivo y, a continuación, elija File (Archivo), Save (Guardar)
para guardar el archivo como bird.txt en el directorio MyDemoCloud9Repo de su entorno de AWS
Cloud9.

bird.txt
--------
Birds are a group of endothermic vertebrates, characterized by feathers,
toothless beaked jaws, the laying of hard-shelled eggs, a high metabolic
rate, a four-chambered heart, and a lightweight but strong skeleton.

Note

Para confirmar que guarda el archivo en el directorio correcto, en el cuadro de diálogo


Save As (Guardar como), elija la carpeta MyDemoCloud9Repo y asegúrese de que Folder
(Carpeta) muestra /MyDemoCloud9Repo.
3. Cree dos archivos más y llámelos insect.txt y reptile.txt, con el contenido siguiente y
guárdelos en el mismo directorio MyDemoCloud9Repo.

insect.txt
----------
Insects are a class of invertebrates within the arthropod phylum that
have a chitinous exoskeleton, a three-part body (head, thorax, and abdomen),
three pairs of jointed legs, compound eyes, and one pair of antennae.

398
AWS Cloud9 Guía del usuario
Paso 5: Agregar archivos al repositorio

reptile.txt
-----------
Reptiles are tetrapod (four-limbed vertebrate) animals in the class
Reptilia, comprising today's turtles, crocodilians, snakes,
amphisbaenians, lizards, tuatara, and their extinct relatives.

4. En el terminal, ejecute el comando cd para cambiar al directorio MyDemoCloud9Repo.

cd MyDemoCloud9Repo

5. Confirme que el archivo se ha guardado correctamente en el directorio MyDemoCloud9Repo


ejecutando el comando git status . Los tres archivos se mostrarán como archivos sin seguimiento.

Untracked files:
(use "git add <file>..." to include in what will be committed)

bird.txt
insect.txt
reptile.txt

6. Agréguelos al espacio provisional de Git ejecutando el comando git add .

git add --all

7. Confirme que los archivos se agregaron correctamente al espacio provisional de Git ejecutando el
comando git status de nuevo. Los tres archivos aparecen ahora como cambios por confirmar.

Changes to be committed:
(use "git rm --cached <file>..." to unstage)

new file: bird.txt


new file: insect.txt
new file: reptile.txt

8. Confirme los archivos provisionales ejecutando el comando git commit .

git commit -m "Added information about birds, insects, and reptiles."

9. Envíe la confirmación al repositorio remoto de CodeCommit ejecutando el comando git push .

git push -u origin master

10. Confirme si los archivos se han enviado correctamente. Abra la consola de CodeCommit si aún no
está abierta, en https://console.aws.amazon.com/codecommit.
11. En la barra de navegación superior, cerca del borde derecho, elija la región de AWS en la que creó el
repositorio (por ejemplo, EE. UU. Este [Ohio]).
12. En la página Dashboard (Panel), seleccione MyDemoCloud9Repo. Se muestran los tres archivos.

Para continuar experimentando con el repositorio de CodeCommit, consulte Examinar el contenido del
repositorio en la Guía del usuario de AWS CodeCommit.

Si es la primera vez que utiliza Git y no desea estropear el repositorio de CodeCommit, experimente con un
repositorio de Git de muestra en el sitio web Try Git.

399
AWS Cloud9 Guía del usuario
Paso 6: Limpieza

Paso 6: Limpieza
Para evitar que se hagan cargos continuos en su cuenta de AWS una vez terminada esta muestra,
le conviene eliminar el repositorio de CodeCommit. Para obtener instrucciones, consulte Eliminar un
repositorio de AWS CodeCommit en la Guía del usuario de AWS CodeCommit.

También debe eliminar el entorno. Para obtener instrucciones, consulte la sección sobre eliminación de
entornos (p. 111).

Ejemplo de Amazon DynamoDB para AWS Cloud9


Este ejemplo le permite configurar un entorno de desarrollo de AWS Cloud9 para trabajar con Amazon
DynamoDB.

DynamoDB es una base de datos NoSQL completamente administrada. Puede utilizar DynamoDB para
crear una tabla de base de datos capaz de almacenar y recuperar cualquier cantidad de datos, así como
de atender cualquier nivel de tráfico de solicitudes. DynamoDB distribuye automáticamente los datos
y el tráfico de la tabla entre un número de servidores suficiente como para administrar la capacidad de
solicitudes especificada y la cantidad de datos almacenados, manteniendo al mismo tiempo un rendimiento
uniforme y rápido. Para obtener más información, consulte Amazon DynamoDB en la página web de AWS.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Estos incluyen posibles cargos
por servicios como Amazon EC2 y DynamoDB. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon DynamoDB.

Para obtener más información sobre otras ofertas de base de datos de AWS, consulte Amazon Relational
Database Service (RDS), Amazon ElastiCache y Amazon Redshift en el sitio web de AWS. Consulte
también AWS Database Migration Service en el sitio web de AWS.

• Requisitos previos (p. 400)


• Paso 1: Instalar y configurar AWS CLI, aws-shell o ambos en el entorno (p. 401)
• Paso 2: Crear una tabla (p. 401)
• Paso 3: Agregar un elemento a la tabla (p. 402)
• Paso 4: Agregar varios elementos a la tabla (p. 403)
• Paso 5: Crear un índice secundario global (p. 406)
• Paso 6: Obtener elementos de la tabla (p. 408)
• Paso 7: limpieza (p. 411)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

400
AWS Cloud9 Guía del usuario
Paso 1: Instalar y configurar AWS
CLI, aws-shell o ambos en el entorno

Paso 1: Instalar y configurar AWS CLI, aws-shell o


ambos en el entorno
En este paso, utilizará el IDE de AWS Cloud9 para instalar y configurar AWS CLI, aws-shell o ambos en su
entorno para poder ejecutar comandos para interactuar con DynamoDB. A continuación, utilice AWS CLI
para ejecutar un comando de DynamoDB básico para probar la instalación y la configuración.

1. Para configurar la administración de credenciales para AWS CLI o aws-shell e instalar AWS CLI, aws-
shell o ambos en su entorno, siga los pasos 1 y 2 del Ejemplo de AWS CLI y aws-shell (p. 390) y, a
continuación, vuelva a este tema. Si ya ha instalado y configurado AWS CLI, aws-shell o ambos en su
entorno, no es necesario hacerlo de nuevo.
2. Pruebe la instalación y configuración de AWS CLI, aws-shell o ambos ejecutando el comando
list-tables desde una sesión del terminal en su entorno para obtener una lista de las tablas
de DynamoDB, si hay alguna. Para comenzar una nueva sesión de terminal, en la barra de menús,
seleccione Windows (Ventanas), New Terminal (Nuevo terminal).

aws dynamodb list-tables # For the AWS CLI.


dynamodb list-tables # For the aws-shell.

Note

En este ejemplo, si está utilizando el aws-shell, omita aws de cada comando que comience por
aws. Para iniciar el shell de AWS, ejecute el comando aws-shell . Para dejar de usar el shell
de AWS, ejecute el comando .exit o .quit .

Si este comando se ejecuta correctamente, genera una matriz TableNames que contiene una lista de
tablas de DynamoDB existentes que es posible que ya tenga. Si no tiene aún tablas de DynamoDB, la
matriz de TableNames estará vacía.

{
"TableNames": []
}

Si tiene cualquier tabla de DynamoDB, la matriz de TableNames contiene una lista de los nombres de
las tablas.

Paso 2: Crear una tabla


En este paso, se crea una tabla en DynamoDB y se especifica el nombre de la tabla, el diseño, la clave
principal simple y la configuración de rendimiento de los datos.

Esta tabla de ejemplo, denominada Weather, contiene información acerca de las previsiones
meteorológicas para algunas ciudades de Estados Unidos. La tabla contiene los siguientes tipos de
información (en DynamoDB, cada fragmento de información se denomina atributo):

• ID único y obligatorio de la ciudad (CityID)


• Fecha de previsión obligatoria (Date)
• Nombre de ciudad (City)
• Nombre de estado (State)
• Condiciones meteorológicas de la previsión (Conditions)
• Temperaturas de la previsión (Temperatures)
• Temperatura máxima de la previsión, en grados Fahrenheit (HighF)

401
AWS Cloud9 Guía del usuario
Paso 3: Agregar un elemento a la tabla

• Temperatura mínima de la previsión, en grados Fahrenheit (LowF)

Para crear la tabla, en una sesión del terminal del IDE de AWS Cloud9, ejecute el comando create-
table de DynamoDB.

aws dynamodb create-table \


--table-name Weather \
--attribute-definitions \
AttributeName=CityID,AttributeType=N AttributeName=Date,AttributeType=S \
--key-schema \
AttributeName=CityID,KeyType=HASH AttributeName=Date,KeyType=RANGE \
--provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5

En este comando:

• --table-name representa el nombre de la tabla (Weather en este ejemplo). Los nombres de tabla
deben ser únicos de cada región de AWS de la cuenta de AWS.
• --attribute-definitions representa los atributos que se utilizan para identificar de forma única los
elementos de la tabla. Cada uno de los elementos de esta tabla se identifica de forma única por medio
de una combinación de un atributo ID numérico y un atributo Date representado como una cadena con
formato ISO-8601.
• --key-schema representa el esquema de claves de la tabla. Esta tabla tiene una clave principal
compuesta de CityID y Date. Esto significa que cada uno de los elementos de la tabla debe tener un
valor de atributo CityID y un valor de atributo Date, pero no puede haber dos elementos de la tabla
que tengan el mismo valor de atributo CityID y valor de atributo Date.
• --provisioned-throughput representa la capacidad de lectura-escritura de la tabla. DynamoDB
permite hasta 5 lecturas de alta consistencia por segundo para elementos de hasta 4 KB de tamaño o
hasta 5 lecturas eventualmente consistentes por segundo para los elementos de hasta 4 KB de tamaño.
DynamoDB también permite hasta 5 escrituras por segundo para los elementos con un tamaño de hasta
1 KB.
Note

Si se establece un rendimiento aprovisionado mayor, se podrían generar cargos adicionales en


la cuenta de AWS.
Para obtener más información acerca de este comando y otros comandos de DynamoDB,
consulte dynamodb, en la Referencia de comandos de AWS CLI.

Si este comando se ejecuta correctamente, se muestra información resumida sobre la tabla nueva que se
está creando. Para confirmar que la tabla se ha creado correctamente, ejecute el comando describe-
table de DynamoDB y especifique el nombre de la tabla (--table-name).

aws dynamodb describe-table --table-name Weather

Cuando la tabla se crea correctamente, el valor de TableStatus cambia de CREATING a ACTIVE. No


siga realizando los pasos hasta que la tabla se haya creado correctamente.

Paso 3: Agregar un elemento a la tabla


En este paso, se añade un elemento a la tabla que se acaba de crear.

1. Cree un archivo denominado weather-item.json con el siguiente contenido. Para crear un archivo
nuevo, en la barra de menús, elija File (Archivo), New File (Nuevo archivo). Para guardar el archivo, elija
File (Archivo), Save (Guardar).

402
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla

{
"CityID": { "N": "1" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "46" }
}
}
}

En este código, N representa un valor de atributo que es un número. S es un valor de atributo de


cadena. M es un atributo de mapa, que es un conjunto de pares de atributo-valor. Debe especificar
un tipo de datos del atributo siempre que trabaje con elementos. Para obtener tipos de datos de
atributos disponibles adicionales, consulte Tipos de datos en la Guía para desarrolladores de Amazon
DynamoDB.
2. Ejecute el comando put-item de DynamoDB y especifique el nombre de la tabla (--table-name) y
la ruta del elemento con formato JSON (--item).

aws dynamodb put-item \


--table-name Weather \
--item file://weather-item.json

Si el comando se ejecuta correctamente, no habrá errores y no aparecerá ningún mensaje de


confirmación.
3. Para confirmar el contenido actual de la tabla, ejecute el comando scan de DynamoDB y especifique
el nombre de la tabla (--table-name).

aws dynamodb scan --table-name Weather

Si el comando se ejecuta correctamente, aparece la información resumida sobre la tabla y el elemento


que acaba de agregar.

Paso 4: Agregar varios elementos a la tabla


En este paso, agregamos varios elementos más a la tabla Customers.

1. Cree un archivo denominado more-weather-items.json con el siguiente contenido.

{
"Weather": [
{
"PutRequest": {
"Item": {
"CityID": { "N": "1" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "52" },
"LowF": { "N": "43" }
}
}

403
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla

}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "1" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "49" },
"LowF": { "N": "43" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Thunderstorms" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "43" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "51" },
"LowF": { "N": "41" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Rain Showers" },
"Temperatures": { "M": {
"HighF": { "N": "49" },
"LowF": { "N": "39" }
}
}
}
}

404
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla

},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "40" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Partly Sunny" },
"Temperatures": { "M": {
"HighF": { "N": "54" },
"LowF": { "N": "37" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Mostly Sunny" },
"Temperatures": { "M": {
"HighF": { "N": "53" },
"LowF": { "N": "37" }
}
}
}
}
}
]
}

En este código, hay 8 objetos Item que definen los 8 elementos que se van a añadir a la tabla, de
forma similar al elemento único que se ha definido en el paso anterior. Sin embargo, al ejecutar el
comando batch-write-item de DynamoDB en el siguiente paso, debe proporcionar un objeto
con formato JSON que incluya cada uno de los objetos Item en un objeto PutRequest contenedor.
A continuación, debe incluir esos objetos PutRequest en una matriz principal que tenga el mismo
nombre que la tabla.
2. Ejecute el comando batch-write-item de DynamoDB y especifique la ruta de los elementos con
formato JSON que se van a agregar (--request-items).

aws dynamodb batch-write-item \

405
AWS Cloud9 Guía del usuario
Paso 5: Crear un índice secundario global

--request-items file://more-weather-items.json

Si el comando se ejecuta correctamente, se muestra el siguiente mensaje, que confirma que los
elementos se han agregado correctamente.

{
"UnprocessedItems": {}
}

3. Para confirmar el contenido actual de la tabla, ejecute de nuevo el comando scan de DynamoDB.

aws dynamodb scan --table-name Weather

Si el comando se ejecuta correctamente, ahora se muestran 9 elementos.

Paso 5: Crear un índice secundario global


La ejecución del comando scan de DynamoDB para obtener información sobre elementos puede ser
lenta, especialmente cuando la tabla aumenta de tamaño o si el tipo de información que desea obtener es
complejo. Puede crear uno o varios índices secundarios para acelerar las cosas y obtener información más
fácilmente. En este paso, conocerá dos tipos de índices secundarios que DynamoDB admite para hacer
precisamente eso. Se denominan índice secundario local e índice secundario global. A continuación, se
crea un índice secundario global.

Para comprender estos tipos de índices secundarios, primero debe conocer las claves primarias, que
identifican de forma única los elementos de una tabla. DynamoDB admite una clave principal simple o
una clave principal compuesta. Una clave principal simple posee un único atributo y ese valor del atributo
debe ser único para cada elemento de la tabla. Este atributo también se conoce como clave de partición (o
un atributo hash), que DynamoDB puede utilizar para particionar elementos para que el acceso sea más
rápido. Una tabla también puede tener una clave principal compuesta, que contiene dos atributos. El primer
atributo es la clave de partición y el segundo es una clave de ordenación (también conocida como atributo
de rango). En una tabla con una clave principal compuesta, puede haber dos elementos que tengan el
mismo valor de clave de partición, pero no pueden tener también el mismo valor de clave de ordenación.
La tabla Weather tiene una clave principal compuesta.

Un índice secundario local tiene la misma clave de partición que la propia tabla, pero este tipo de índice
puede tener una clave de ordenación diferente. Un índice secundario global puede tener una clave de
partición y una clave de ordenación que son diferentes a la tabla en sí.

Por ejemplo, ya puede utilizar la clave principal para obtener acceso a elementos Weather por CityID.
Para obtener acceso a los elementos Weather por State, puede crear un índice secundario local que
tenga una clave de partición de CityID (debe ser la misma que la tabla) y una clave de ordenación de
State. Para obtener acceso a los elementos Weather por City, puede crear un índice secundario global
que tenga una clave de partición de City y una clave de ordenación de Date.

Solo puede crear índices secundarios locales mientras está creando una tabla. Dado que la tabla Weather
ya existe, no puede añadirle cualquier índice secundario local. Sin embargo, puede añadir índices
secundarios globales. Añada uno ahora para practicar.
Note
La creación de índices secundarios puede producir cargos adicionales en su cuenta de AWS.

1. Cree un archivo denominado weather-global-index.json con el siguiente contenido.

[
{
"Create": {

406
AWS Cloud9 Guía del usuario
Paso 5: Crear un índice secundario global

"IndexName": "weather-global-index",
"KeySchema": [
{
"AttributeName": "City",
"KeyType": "HASH"
},
{
"AttributeName": "Date",
"KeyType": "RANGE"
}
],
"Projection": {
"ProjectionType": "INCLUDE",
"NonKeyAttributes": [
"State",
"Conditions",
"Temperatures"
]
},
"ProvisionedThroughput": {
"ReadCapacityUnits": 5,
"WriteCapacityUnits": 5
}
}
}
]

En este código:
• El nombre del índice secundario global es weather-global-index.
• El atributo City es la clave de partición (atributo hash) y el atributo Date es la clave de ordenación
(atributo de rango).
• Projection define los atributos que se van a recuperar de forma predeterminada (además del
atributo hash y cualquier atributo de rango) por cada elemento que coincida con una búsqueda de
tabla que utilice este índice. En este ejemplo, se recuperan los atributosState, Conditions, HighF
(parte de Temperatures) y LowF ( Temperatures) (así como los atributos City y Date) para cada
elemento coincidente.
• Al igual que las tablas, un índice secundario global debe definir su configuración de desempeño
aprovisionado.
• La configuración de IndexName, KeySchema, Projection y ProvisionedThroughput debe
estar incluida en un objeto Create, que define el índice secundario global que se va a crear al
ejecutar el comando update-table de DynamoDB en el siguiente paso.
2. Ejecute el comando update-table de DynamoDB.

aws dynamodb update-table \


--table-name Weather \
--attribute-definitions \
AttributeName=City,AttributeType=S AttributeName=Date,AttributeType=S \
--global-secondary-index-updates file://weather-global-index.json

En este comando:
• --table-name es el nombre de la tabla que se va a actualizar.
• --attribute-definitions son los atributos que se van a incluir en el índice. La clave de partición
siempre aparece primero y cualquier clave de ordenación aparece siempre en segundo lugar.
• --global-secondary-index-updates es la ruta al archivo que define el índice secundario
global.

Si este comando se ejecuta correctamente, se muestra información resumida sobre el nuevo índice
secundario global que se está creando. Para confirmar que el índice secundario global se ha creado
407
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla

correctamente, ejecute el comando describe-table de DynamoDB y especifique el nombre de la


tabla (--table-name).

aws dynamodb describe-table --table-name Weather

Cuando el índice secundario global se haya creado correctamente, el valor de TableStatus cambia de
UPDATING a ACTIVE y el valor de IndexStatus cambia de CREATING a ACTIVE. No siga realizando
los pasos hasta que el índice secundario global se haya creado correctamente. Esto puede tardar varios
minutos.

Paso 6: Obtener elementos de la tabla


Existen muchas formas de obtener elementos de las tablas. En este paso, se obtienen elementos mediante
la clave principal de la tabla, mediante otros atributos de la tabla y utilizando el índice secundario global.

Para obtener un solo elemento de una tabla en función del valor


de la clave principal del elemento
Si conoce el valor de la clave principal del elemento, puede obtener el elemento coincidente ejecutando
el comando get-item , scan o query de DynamoDB. A continuación, se muestran las principales
diferencias en estos comandos:

• get-item devuelve un conjunto de atributos del elemento con la clave principal especificada.
• scan devuelve uno o más elementos y atributos de elementos obteniendo acceso a todos los
elementos de una tabla o un índice secundario.
• query busca elementos según los valores de clave principal. Puede consultar cualquier tabla o índice
secundario que cuente con una clave principal compuesta (una clave de partición y una clave de
ordenación).

En este ejemplo, así es cómo se utiliza cada uno de estos comandos para obtener el elemento que
contiene el valor del atributo CityID de 1 y el valor del atributo Date de 2017-04-12.

1. Para ejecutar el comando get-item de DynamoDB, especifique el nombre de la tabla (--table-


name), el valor de clave principal (--key) y los valores de los atributos del elemento que se va
a mostrar (--projection-expression). Dado que Date es una palabra clave reservada en
DynamoDB, también debe proporcionar un alias para el valor del atributo Date (--expression-
attribute-names). (State también es una palabra clave reservada, por lo que verá un alias
proporcionado para este valor en pasos posteriores).

aws dynamodb get-item \


--table-name Weather \
--key '{ "CityID": { "N": "1" }, "Date": { "S": "2017-04-12" } }' \
--projection-expression \
"City, #D, Conditions, Temperatures.HighF, Temperatures.LowF" \
--expression-attribute-names '{ "#D": "Date" }'

En este y otros comandos, para ver todos los atributos del elemento, no incluya --projection-
expression. En este ejemplo, dado que no está incluyendo --projection-expression, tampoco
es necesario incluir --expression-attribute-names.

aws dynamodb get-item \


--table-name Weather \
--key '{ "CityID": { "N": "1" }, "Date": { "S": "2017-04-12" } }'

408
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla

2. Para ejecutar el comando scan de DynamoDB, especifique:


• El nombre de la tabla (--table-name).
• La búsqueda que se va a realizar (--filter-expression).
• Los criterios de búsqueda que se van a utilizar (--expression-attribute-values).
• Los tipos de atributos que se van a mostrar del elemento coincidente (--select).
• Los valores de atributos del elemento que se va a mostrar (--projection-expression).
• Si alguno de los atributos utiliza palabras reservadas de DynamoDB, los alias de esos atributos (--
expression-attribute-names).

aws dynamodb scan \


--table-name Weather \
--filter-expression "(CityID = :cityID) and (#D = :date)" \
--expression-attribute-values \
'{ ":cityID": { "N": "1" }, ":date": { "S": "2017-04-12" } }' \
--select SPECIFIC_ATTRIBUTES \
--projection-expression \
"City, #D, Conditions, Temperatures.HighF, Temperatures.LowF" \
--expression-attribute-names '{ "#D": "Date" }'

3. Para ejecutar el comando query de DynamoDB, especifique:


• El nombre de la tabla (--table-name).
• La búsqueda que se va a realizar (--key-condition-expression).
• Los valores de los atributos que se van a utilizar en la búsqueda (--expression-attribute-
values).
• Los tipos de atributos que se van a mostrar del elemento coincidente (--select).
• Los valores de atributos del elemento que se va a mostrar (--projection-expression).
• Si alguno de los atributos utiliza palabras reservadas de DynamoDB, los alias de esos atributos (--
expression-attribute-names).

aws dynamodb query \


--table-name Weather \
--key-condition-expression "(CityID = :cityID) and (#D = :date)" \
--expression-attribute-values \
'{ ":cityID": { "N": "1" }, ":date": { "S": "2017-04-12" } }' \
--select SPECIFIC_ATTRIBUTES \
--projection-expression \
"City, #D, Conditions, Temperatures.HighF, Temperatures.LowF" \
--expression-attribute-names '{ "#D": "Date" }'

Fíjese en que el comando scan ha tenido que analizar los 9 elementos para obtener el resultado,
mientras que el comando query solo ha tenido que analizar 1 elemento.

Para obtener varios elementos de una tabla en función de los


valores de la clave principal de los elementos
Si conoce los valores de la clave principal de los elementos, puede obtener los elementos coincidentes
ejecutando el comando batch-get-item de DynamoDB. En este ejemplo, se muestra cómo se
obtienen los elementos que contienen el valor del atributo CityID de 3 y los valores del atributo Date de
2017-04-13 o 2017-04-14.

Ejecute el comando batch-get-item de DynamoDB y especifique la ruta a un archivo que describa los
elementos que se van a obtener (--request-items).

409
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla

aws dynamodb batch-get-item --request-items file://batch-get-item.json

Para este ejemplo, el código del archivo batch-get-item.json especifica que se deben buscar en
la tabla Weather los elementos con un CityID de 3 y un Date de 2017-04-13 o 2017-04-14. Para
cada elemento encontrado, se muestran los valores de atributo de CityState, Date y HighF (parte de
Temperatures), si existen.

{
"Weather" : {
"Keys": [
{
"CityID": { "N": "3" },
"Date": { "S": "2017-04-13" }
},
{
"CityID": { "N": "3" },
"Date": { "S": "2017-04-14" }
}
],
"ProjectionExpression": "City, #S, #D, Temperatures.HighF",
"ExpressionAttributeNames": { "#S": "State", "#D": "Date" }
}
}

Para obtener todos los elementos coincidentes de una tabla


Si conoce algo sobre los valores de los atributos de la tabla, puede obtener los elementos coincidentes
mediante la ejecución del comando scan de DynamoDB. En este ejemplo, se muestra cómo se obtienen
las fechas cuando el valor del atributo Conditions contiene Sunny y el valor del atributo HighF (parte de
Temperatures) es mayor que 53.

Especifique lo siguiente para ejecutar el comando scan de DynamoDB:

• El nombre de la tabla (--table-name).


• La búsqueda que se va a realizar (--filter-expression).
• Los criterios de búsqueda que se van a utilizar (--expression-attribute-values).
• Los tipos de atributos que se van a mostrar del elemento coincidente (--select).
• Los valores de atributos del elemento que se va a mostrar (--projection-expression).
• Si alguno de los atributos utiliza palabras reservadas de DynamoDB, los alias de esos atributos (--
expression-attribute-names).

aws dynamodb scan \


--table-name Weather \
--filter-expression \
"(contains (Conditions, :sun)) and (Temperatures.HighF > :h)" \
--expression-attribute-values \
'{ ":sun": { "S" : "Sunny" }, ":h": { "N" : "53" } }' \
--select SPECIFIC_ATTRIBUTES \
--projection-expression "City, #S, #D, Conditions, Temperatures.HighF" \
--expression-attribute-names '{ "#S": "State", "#D": "Date" }'

Para obtener todos los elementos coincidentes de un índice


secundario global
Para realizar una búsqueda mediante un índice secundario global, utilice el comando query de
DynamoDB. En este ejemplo, se muestra cómo se utiliza el índice secundario weather-global-index

410
AWS Cloud9 Guía del usuario
Paso 7: limpieza

para obtener las condiciones de la previsión en ciudades con el nombre Portland para las fechas
2017-04-13 y 2017-04-14.

Especifique lo siguiente para ejecutar el comando query de DynamoDB:

• El nombre de la tabla (--table-name).


• El nombre del índice secundario global (--index-name).
• La búsqueda que se va a realizar (--key-condition-expression).
• Los valores de los atributos que se van a utilizar en la búsqueda (--expression-attribute-
values).
• Los tipos de atributos que se van a mostrar del elemento coincidente (--select).
• Si alguno de los atributos utiliza palabras reservadas de DynamoDB, los alias de esos atributos (--
expression-attribute-names).

aws dynamodb query \


--table-name Weather \
--index-name weather-global-index \
--key-condition-expression "(City = :city) and (#D between :date1 and :date2)" \
--expression-attribute-values \
'{ ":city": { "S" : "Portland" }, ":date1": { "S": "2017-04-13" }, ":date2": { "S":
"2017-04-14" } }' \
--select SPECIFIC_ATTRIBUTES \
--projection-expression "City, #S, #D, Conditions, Temperatures.HighF" \
--expression-attribute-names '{ "#S": "State", "#D": "Date" }'

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, elimine la tabla. Al eliminar la tabla, también se elimina el índice secundario global. También debe
eliminar su entorno.

Para eliminar la tabla, ejecute el comando delete-table de DynamoDB y especifique el nombre de la


tabla (--table-name).

aws dynamodb delete-table --table-name Weather

Si el comando se ejecuta correctamente, se muestra información sobre la tabla, incluido el valor de


TableStatus de DELETING.

Para confirmar que la tabla se ha eliminado correctamente, ejecute el comando describe-table de


DynamoDB y especifique el nombre de la tabla (--table-name).

aws dynamodb describe-table --table-name Weather

Si la tabla se elimina correctamente, se muestra un mensaje que contiene la frase Requested resource
not found.

Para eliminar su entorno, consulte Eliminación de entornos (p. 111).

Ejemplo de AWS CDK para AWS Cloud9


En esta muestra se indica cómo trabajar con el AWS Cloud Development Kit (CDK) en un entorno de
desarrollo de AWS Cloud9. El AWS CDK es un conjunto de herramientas de software y bibliotecas que los

411
AWS Cloud9 Guía del usuario
Requisitos previos

desarrolladores pueden utilizar para crear modelos de componentes de la infraestructura de AWS como
código.

El AWS CDK incluye AWS Construct Library, que puede utilizar para resolver rápidamente muchas tareas
en AWS. Por ejemplo, puede utilizar la construcción Fleet para implementar código de forma completa
y segura en una flota de hosts. Puede crear sus propias construcciones para crear modelos de diversos
elementos de sus arquitecturas, compartirlos con otras personas o publicarlos en la comunidad. Para
obtener más información, consulte la Guía del desarrollador del kit de desarrollo de la nube de AWS.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2, Amazon SNS y Amazon SQS. Para obtener más información,
consulte Precios de Amazon EC2, Precios de Amazon SNS y Precios de Amazon SQS.

Temas
• Requisitos previos (p. 412)
• Paso 1: Instalar las herramientas necesarias (p. 412)
• Paso 2: Agregar el código (p. 415)
• Paso 3: Ejecutar el código (p. 416)
• Paso 4: limpieza (p. 418)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso, instale en su entorno todas las herramientas que AWS CDK necesite para ejecutar una
muestra escrita en el lenguaje de programación TypeScript.

1. Node Version Manager (p. 412) o nvm, que se utiliza para instalar Node.js más adelante.
2. Node.js (p. 413), que es necesario para la muestra y contiene el administrador de paquetes de nodo o
npm, que se utiliza para instalar TypeScript y el AWS CDK más adelante.
3. TypeScript (p. 414), que lo requiere esta muestra. (El AWS CDK también ofrece compatibilidad con
otros lenguajes de programación).
4. AWS CDK (p. 414).

Paso 1.1: Instalar Node Version Manager (nvm)


1. En una sesión del terminal en el IDE de AWS Cloud9, asegúrese de que las últimas actualizaciones
de seguridad y correcciones de errores están instaladas. Para ello, ejecute el comando yum update
(para Amazon Linux) o apt update (para Ubuntu Server). (Para iniciar una nueva sesión del
terminal, en la barra de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]).

412
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

2. Confirme si nvm ya está instalado. Para ello, ejecute el comando nvm con la opción --version.

nvm --version

Si se ejecuta correctamente, el resultado contiene el número de versión de nvm , en cuyo caso puede
ir directamente a Paso 1.2: Instalar Node.js (p. 413).
3. Descargue e instale nvm . Para ello, ejecute el script de instalación. En este ejemplo, la
versión instalada es la 0.33.0, pero puede consultar la última versión de nvm aquí.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

4. Comience a utilizar nvm . Puede cerrar la sesión del terminal e iniciarla de nuevo, o bien cargar el
archivo ~/.bashrc que contiene los comandos para cargar nvm.

. ~/.bashrc

Paso 1.2: Instalar Node.js


1. Confirme si ya tiene instalado Node.js. Si es así, asegúrese de que la versión instalada es 10.3.0 o
superior. Este ejemplo se ha probado con Node.js 10.3.0. Para verificarlo, con la sesión del terminal
aún abierta en el IDE, ejecute el comando node con la opción --version .

node --version

Si ha instalado Node.js, la salida contendrá el número de versión. Si el número de versión es 10.3.0,


vaya directamente a Paso 1.3: Instalar TypeScript (p. 414).
2. Instale Node.js 10.3.0 ejecutando el comando nvm con la acción install.
Note

También puede ejecutar nvm install stable para instalar la versión de soporte a largo
plazo (LTS) de Node.js. AWS Cloud9 es compatible con la versión LTS de Node.js.

nvm install v10.3.0

3. Comience a utilizar Node.js 10.3.0. Para ello, ejecute el comando nvm junto con la acción alias, el
número de versión para el alias y la versión que se va a utilizar para dicho alias, tal y como se indica a
continuación.

nvm alias default 10.3.0

413
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias

Note

El comando anterior establece Node.js 10.3.0 como la versión predeterminada de Node.js.


Si lo desea, también puede ejecutar el comando nvm junto con la acción use, en lugar de
la acción alias (por ejemplo, nvm use 10.3.0). Sin embargo, la acción use provoca
que esa versión de Node.js solo se active mientras que la sesión del terminal actual se está
ejecutando.
4. Para confirmar que está utilizando 10.3.0 Node.js, vuelva a ejecutar el comando node --version .
Si la versión instalada es la correcta, la salida incluirá la versión v10.3.0.

Paso 1.3: Instalar TypeScript


1. Confirme si ya ha instalado TypeScript. Para ello, con la sesión del terminal aún abierta en el IDE,
ejecute el compilador TypeScript de la línea de comandos con la opción --version .

tsc --version

Si ha instalado TypeScript, la salida contendrá el número de versión de TypeScript. Si TypeScript está


instalado, continúe en Paso 1.4: Instalar el AWS CDK (p. 414).
2. Instale TypeScript. Para ello, ejecute el comando npm con la acción install, la opción -g y el
nombre del paquete de TypeScript. De este modo se instala TypeScript como un paquete global en el
entorno.

npm install -g typescript

3. Confirme que TypeScript se ha instalado. Para ello, ejecute el compilador TypeScript de la línea de
comandos con la opción --version.

tsc --version

Si ha instalado TypeScript, la salida contendrá el número de versión de TypeScript.

Paso 1.4: Instalar el AWS CDK


1. Confirme si ya ha instalado el AWS CDK. Para ello, con la sesión del terminal aún abierta en el IDE,
ejecute el comando cdk con la opción --version .

cdk --version

Si el AWS CDK está instalado, el resultado contendrá el AWS CDK y los números de compilación.
Vaya a Paso 2: Agregar el código (p. 415).
2. Para instalar AWS CDK, ejecute el comando npm junto con la acción install, el nombre del paquete
de AWS CDK que se instalará y la opción -g para instalar el paquete de manera global en el entorno.

npm install -g aws-cdk

3. Confirme que el AWS CDK se ha instalado y que se hace referencia a él de forma correcta. Para ello,
ejecute el comando cdk con la opción --version.

cdk --version

414
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

Si se ejecuta correctamente, se muestran los números de compilación y versión del AWS CDK.

Paso 2: Agregar el código


En este paso, se crea un proyecto de TypeScript de muestra que contiene todo el código fuente necesario
para que el AWS CDK implemente una pila de AWS CloudFormation. Esta pila crea un tema de Amazon
SNS y una cola de Amazon SQS en su cuenta de AWS y, a continuación, suscribe la cola al tema.

1. Con la sesión del terminal aún abierta en el IDE, cree un directorio para almacenar el código fuente del
proyecto; por ejemplo, un directorio ~/environment/hello-cdk en su entorno. Luego, cambie a
ese directorio.

rm -rf ~/environment/hello-cdk # Remove this directory if it already exists.


mkdir ~/environment/hello-cdk # Create the directory.
cd ~/environment/hello-cdk # Switch to the directory.

2. Configure el directorio como un proyecto de lenguaje TypeScript para el AWS CDK. Para ello, ejecute
el comando cdk con la acción init, la plantilla sample-app y la opción --language junto con el
nombre del lenguaje de programación.

cdk init sample-app --language typescript

De esta forma, se crean los siguientes archivos y subdirectorios en el directorio.

• Un subdirectorio .git y un archivo.gitignore ocultos, que hacen que el proyecto sea compatible
con herramientas de control de código fuente como Git.
• Un subdirectorio lib, que incluye un archivo hello-cdk-stack.ts. Este archivo contiene el
código de la pila del AWS CDK. Este código se describe en el siguiente paso de este procedimiento.
• Un subdirectorio bin, que incluye un archivo hello-cdk.ts. Este archivo contiene el punto de
entrada de la aplicación del AWS CDK.
• Un subdirectorio node_modules, que contiene los paquetes de código de apoyo que la aplicación y
la pila pueden utilizar según sea necesario.
• Un archivo .npmignore oculto, que enumera los tipos de subdirectorios y los archivos que npm no
necesita al compilar el código.
• Un archivocdk.json, que contiene la información para poder ejecutar el comando cdk más
fácilmente.
• Un archivo package-lock.json, que contiene información que npm puede utilizar para reducir
posibles errores de compilación y ejecución.
• Un archivo package.json, que contiene información para poder ejecutar el comando npm más
fácilmente y con posiblemente menos errores de compilación y ejecución.
• Un archivo README.md, que enumera comandos útiles que puede ejecutar con npm y el AWS
CDK.
• Un archivo tsconfig.json, que contiene información para poder ejecutar el comando tsc más
fácilmente y con posiblemente menos errores de compilación y ejecución.
3. En la ventana Environment (Entorno), abra el archivo lib/hello-cdk-stack.ts y examine el
siguiente código en ese archivo.

import sns = require('@aws-cdk/aws-sns');


import sqs = require('@aws-cdk/aws-sqs');
import cdk = require('@aws-cdk/cdk');

export class HelloCdkStack extends cdk.Stack {


constructor(parent: cdk.App, name: string, props?: cdk.StackProps) {

415
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código

super(parent, name, props);

const queue = new sqs.Queue(this, 'HelloCdkQueue', {


visibilityTimeoutSec: 300
});

const topic = new sns.Topic(this, 'HelloCdkTopic');

topic.subscribeQueue(queue);
}
}

• Las clases Stack, App, StackProps, Queue y Topic representan una pila de AWS
CloudFormation y sus propiedades, un programa ejecutable, una cola de Amazon SQS y un tema
de Amazon SNS, respectivamente.
• La clase HelloCdkStack representa la pila de AWS CloudFormation para esta aplicación. Esta
pila contiene la nueva cola de Amazon SQS y el tema de Amazon SNS para esta aplicación.
4. En la ventana Environment (Entorno), abra el archivo bin/hello-cdk.ts y examine el siguiente
código en ese archivo.

#!/usr/bin/env node
import cdk = require('@aws-cdk/cdk');
import { HelloCdkStack } from '../lib/hello-cdk-stack';

const app = new cdk.App();


new HelloCdkStack(app, 'HelloCdkStack');
app.run();

Este código carga, crea una instancia y luego ejecuta la clase HelloCdkStack a partir del archivo
lib/hello-cdk-stack.ts.
5. Use npm para ejecutar el compilador de TypeScript para comprobar si hay errores de codificación y,
a continuación, habilite el AWS CDK para ejecutar el archivo bin/hello-cdk.js del proyecto. Para
ello, desde el directorio raíz del proyecto, ejecute el comando npm con la acción run y especifique el
valor del comando build en el archivo package.json, tal y como se indica a continuación.

npm run build

El comando anterior ejecuta el compilador TypeScript, lo que añade los archivos de soporte bin/
hello-cdk.d.ts y lib/hello-cdk-stack.d.ts. El compilador también transpone los archivos
hello-cdk.ts y hello-cdk-stack.ts en los archivos hello-cdk.js y hello-cdk-stack.js.

Paso 3: Ejecutar el código


En este paso, le indica al AWS CDK que cree una plantilla de pila de AWS CloudFormation basada en el
código del archivo bin/hello-cdk.js. A continuación, indique a AWS CDK que implemente la pila, lo
que crea el tema de Amazon SNS y la cola de Amazon SQS y, a continuación, suscribe la cola al tema.
Luego, confirme que el tema y la cola se han implementado correctamente enviando un mensaje del tema
a la cola.

1. Haga que el AWS CDK cree la plantilla de pila de AWS CloudFormation. Para ello, con la sesión del
terminal aún abierta en el IDE, desde el directorio raíz del proyecto, ejecute el comando cdk con la
acción synth y el nombre de la pila.

cdk synth HelloCdkStack

416
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código

Si se ejecuta correctamente, la salida muestra la sección AWS CloudFormation de la plantilla de pila


de Resources.
2. La primera vez que implemente una aplicación del AWS CDK en un entorno para una combinación
específica de cuenta de AWS y región de AWS, debe instalar una pila de arranque. Esta pila incluye
diferentes recursos que el AWS CDK necesita para completar sus diversas operaciones. Por ejemplo,
esta pila incluye un bucket de Amazon S3 que AWS CDK utiliza para almacenar plantillas y recursos
durante los procesos de implementación. Para instalar la pila de arranque, ejecute el comando cdk
con la acción bootstrap .

cdk bootstrap

Note

Si ejecuta cdk bootstrap sin especificar ninguna opción, se utilizan la cuenta de AWS
y la región de AWS predeterminadas. También puede arrancar un entorno específico
especificando una combinación de perfil y cuenta/región. Por ejemplo:

cdk bootstrap --profile test 123456789012/us-east-1

3. Haga que el AWS CDK ejecute la plantilla de pila de AWS CloudFormation para implementar la pila.
Para ello, desde el directorio raíz del proyecto, ejecute el comando cdk con la acción deploy y el
nombre de la pila.

cdk deploy HelloCdkStack

Si se ejecuta correctamente, la salida muestra que la pila HelloCdkStack se ha implementado sin


errores.
Note

Si el resultado muestra un mensaje en el que se indica que la pila no define un entorno y


que las credenciales de AWS no se han podido obtener de ubicaciones estándar, o bien
que no hay ninguna región configurada, asegúrese de que sus credenciales de AWS estén
establecidas correctamente en el IDE y, a continuación, vuelva a ejecutar el comando cdk
deploy . Para obtener más información, consulte Llamar a los servicios de AWS desde un
entorno en AWS Cloud9 (p. 81).
4. Para confirmar que el tema de Amazon SNS y la cola de Amazon SQS se han implementado
correctamente, envíe un mensaje al tema y, luego, verifique la cola para ver si se ha recibido el
mensaje. Para ello, puede utilizar una herramienta como la AWS Command Line Interface (AWS CLI)
o el aws-shell. Para obtener más información sobre estas herramientas, consulte Muestra de AWS
Command Line Interface y aws-shell para AWS Cloud9 (p. 390).

Por ejemplo, para enviar un mensaje al tema, con la sesión del terminal aún abierta en el IDE, use
AWS CLI para ejecutar el comando publish de Amazon SNS, y especifique el asunto y cuerpo del
mensaje, la región de AWS del tema y el nombre de recurso de Amazon (ARN) del tema.

aws sns publish --subject "Hello from the AWS CDK" --message "This is a message
from the AWS CDK." --topic-arn arn:aws:sns:us-east-2:123456789012:HelloCdkStack-
HelloCdkTopic1A234567-8BCD9EFGHIJ0K

En el comando anterior, reemplace arn:aws:sns:us-east-2:123456789012:HelloCdkStack-


HelloCdkTopic1A234567-8BCD9EFGHIJ0K por el ARN que AWS CloudFormation asigna al tema.
Para obtener el ID, puede ejecutar el comando list-topics de Amazon SNS.

417
AWS Cloud9 Guía del usuario
Paso 4: limpieza

aws sns list-topics --output table --query 'Topics[*].TopicArn'

Si se ejecuta correctamente, la salida del comando publish muestra el valor de MessageId del
mensaje que se publicó.

Para verificar la cola para ver si se ha recibido el mensaje, ejecute el comando receive-message
de Amazon SQS y proporcione la URL de la cola.

aws sqs receive-message --queue-url https://queue.amazonaws.com/123456789012/


HelloCdkStack-HelloCdkQueue1A234567-8BCD9EFGHIJ0K

En el comando anterior, reemplace https://queue.amazonaws.com/123456789012/


HelloCdkStack-HelloCdkQueue1A234567-8BCD9EFGHIJ0K por el ARN que AWS
CloudFormation asigna a la cola. Para obtener la URL, puede ejecutar el comando list-queues de
Amazon SQS.

aws sqs list-queues --output table --query 'QueueUrls[*]'

Si se ejecuta correctamente, la salida del comando receive-message muestra información del


mensaje que se recibió.

Paso 4: limpieza
Para evitar que se realicen cargos continuos en su cuenta de AWS después de que haya terminado de
usar esta muestra, elimine la pila de AWS CloudFormation. De esta forma se eliminan el tema de Amazon
SNS y la cola de Amazon SQS. También debe eliminar el entorno.

Paso 4.1: Eliminar la pila


Con la sesión del terminal aún abierta en el IDE, desde el directorio raíz del proyecto, ejecute el comando
cdk con la acción destroy y el nombre de la pila.

cdk destroy HelloCdkStack

Cuando se le pida que elimine la pila, escriba y y, a continuación, pulse Enter.

Si se ejecuta correctamente, la salida muestra que la pila HelloCdkStack se ha eliminado sin errores.

Paso 4.2: Eliminar el entorno


Para eliminar el entorno, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).

Muestra de LAMP para AWS Cloud9


Este ejemplo le permite configurar y ejecutar LAMP (Linux, Apache HTTP Server, MySQL y PHP) en un
entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2). Para obtener más información,
consulte Precios de Amazon EC2.

418
AWS Cloud9 Guía del usuario
Requisitos previos

Temas
• Requisitos previos (p. 419)
• Paso 1: Instalar las herramientas (p. 419)
• Paso 2: Configurar MySQL (p. 421)
• Paso 3: Configurar un sitio web (p. 422)
• Paso 4: limpieza (p. 425)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas


En este paso, instalará las siguientes herramientas:

• Apache HTTP Server, un servidor web host.


• PHP, un lenguaje de scripting especialmente indicado para el desarrollo web y que se puede incluir en
HTML.
• MySQL, un sistema de administración de bases de datos.

Debe finalizar este paso iniciando Apache HTTP Server y después MySQL.

1. Asegúrese de que las últimas actualizaciones de seguridad y correcciones de errores están instaladas
en la instancia. Para ello, en una sesión del terminal del IDE de AWS Cloud9, ejecute el comando yum
update (para Amazon Linux) o apt update (para Ubuntu Server). (Para iniciar una nueva sesión del
terminal, en la barra de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]).

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt -y update

2. Compruebe si Apache HTTP Server ya está instalado. Para ello, ejecute el comando httpd -v (para
Amazon Linux) o apache2 -v (para Ubuntu Server).

Si está instalado, el resultado contendrá el número de versión de Apache HTTP Server.

Si aparece un error, instale Apache HTTP Server ejecutando el comando install .

Para Amazon Linux:

419
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas

sudo yum install -y httpd24

Para Ubuntu Server:

sudo apt install -y apache2

3. Confirme si PHP ya está instalado ejecutando el comando php -v .

Si es así, el resultado contendrá el número de versión de PHP.

Si aparece un error, instale PHP ejecutando el comando install .

Para Amazon Linux:

sudo yum install -y php56

Para Ubuntu Server:

sudo apt install -y php libapache2-mod-php php-xml

4. Confirme si MySQL ya está instalado ejecutando el comando mysql --version .

Si ya está instalado, el resultado contendrá el número de versión de MySQL.

Si aparece un error, instale MySQL ejecutando el comando install .

Para Amazon Linux:

sudo yum install -y mysql-server

Para Ubuntu Server:

sudo apt install -y mysql-server

5. Después de instalar Apache HTTP Server, PHP y MySQL, inicie Apache HTTP Server y, a
continuación, confirme que se ha iniciado ejecutando el siguiente comando.

Para Amazon Linux (es posible que tenga que ejecutar el comando dos veces):

sudo service httpd start && sudo service httpd status

Para Ubuntu Server (para volver a la línea de comandos, pulse q):

sudo service apache2 start && sudo service apache2 status

6. Inicie MySQL y, a continuación, confirme que se ha iniciado ejecutando el siguiente comando.

Para Amazon Linux:

sudo service mysqld start && sudo service mysqld status

Para Ubuntu Server (para volver a la línea de comandos, pulse q):

420
AWS Cloud9 Guía del usuario
Paso 2: Configurar MySQL

sudo service mysql start && sudo service mysql status

Paso 2: Configurar MySQL


En este paso, configurará MySQL para seguir las prácticas de seguridad recomendadas de MySQL.
Estas prácticas de seguridad recomendadas incluyen configurar una contraseña para las cuentas raíz,
eliminar las cuentas raíz que están accesibles desde fuera del host local, eliminar las cuentas de usuarios
anónimos, eliminar la base de datos de prueba y eliminar los privilegios que permiten a cualquier usuario
obtener acceso a las bases de datos con nombres que comienzan por test_.

Para terminar este paso, practique el inicio y la salida del cliente de línea de comandos de MySQL.

1. Implemente las prácticas de seguridad recomendadas de MySQL para la instalación de MySQL. Para
ello, ejecute el siguiente comando en una sesión del terminal en el IDE de AWS Cloud9.

sudo mysql_secure_installation

2. Cuando se le solicite, responda a las siguientes preguntas.

Para Amazon Linux:

1. Enter current password for root (enter for none) (Ingrese la contraseña raíz actual [Intro para
ninguna]: pulse Enter (sin contraseña).
2. Set root password (Establecer la contraseña raíz): escriba Y y, a continuación, pulse Enter.
3. New password (Nueva contraseña): escriba una contraseña y, a continuación, pulse Enter.
4. Re-enter new password (Volver a ingresar la nueva contraseña): escriba la contraseña de nuevo
y, a continuación, pulse Enter. (Asegúrese de almacenar la contraseña en un lugar seguro para
usarla más adelante).
5. Remove anonymous users (Eliminar usuarios anónimos): escriba Y y, a continuación, pulse Enter.
6. Disallow root login remotely (No permitir el inicio de sesión raíz de forma remota): escriba Y y, a
continuación, pulse Enter.
7. Remove test database and access to it (Eliminar la base de datos de prueba y acceder a ella):
escriba Y y, a continuación, pulse Enter.
8. Reload privilege tables now (Volver a cargar tablas de privilegios ahora): escriba Y y, a
continuación, pulse Enter.

Para Ubuntu Server:

1. Would you like to setup VALIDATE PASSWORD plugin (¿Quiere configurar el complemento
VALIDATE PASSWORD?): escriba y y, a continuación, pulse Enter.
2. There are three levels of password validation policy (Existen tres niveles de política de validación de
contraseñas): escriba 0, 1, o 2 y, a continuación, pulse Enter.
3. New password (Nueva contraseña): escriba una contraseña y, a continuación, pulse Enter.
4. Re-enter new password (Volver a ingresar la nueva contraseña): escriba la contraseña de nuevo
y, a continuación, pulse Enter. (Asegúrese de almacenar la contraseña en un lugar seguro para
usarla más adelante).
5. Do you wish to continue with the password provided (¿Desea continuar con la contraseña
proporcionada?): escriba y y, a continuación, pulse Enter.
6. Remove anonymous users (Eliminar usuarios anónimos): escriba y y, a continuación, pulse Enter.
7. Disallow root login remotely (No permitir el inicio de sesión raíz de forma remota): escriba y y, a
continuación, pulse Enter.

421
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web

8. Remove test database and access to it (Eliminar la base de datos de prueba y acceder a ella):
escriba y y, a continuación, pulse Enter.
9. Reload privilege tables now (Volver a cargar tablas de privilegios ahora): escriba y y, a
continuación, pulse Enter.
3. Para interactuar directamente con MySQL, inicie el cliente de línea de comandos de MySQL como
usuario raíz mediante la ejecución del siguiente comando. Cuando se le solicite, escriba la contraseña
del usuario raíz que ha definido anteriormente y, a continuación, pulse Enter. (El símbolo cambia a
mysql> mientras se encuentra en el cliente de línea de comandos de MySQL).

sudo mysql -uroot -p

4. Para salir del cliente de línea de comandos de MySQL, ejecute el siguiente comando. (El símbolo
vuelve a cambiar a ). $.)

exit;

Paso 3: Configurar un sitio web


En este paso, configurará la raíz del sitio web predeterminado para Apache HTTP Server con los
propietarios y los permisos de acceso recomendados. Seguidamente, creará una página web basada en
PHP dentro de esa raíz del sitio web predeterminado.

A continuación, habilitará el tráfico web entrante para ver esa página web mediante la configuración
del grupo de seguridad de Amazon EC2 y la lista de control de acceso de red (ACL de red) en Amazon
Virtual Private Cloud (Amazon VPC) que están asociados a este entorno de EC2. Cada entorno de EC2
debe estar asociado a un grupo de seguridad de Amazon EC2 y a una ACL de red de Amazon VPC. Sin
embargo, aunque la ACL de red predeterminada de una cuenta de AWS permite todo el tráfico de entrada
y salida del entorno, el grupo de seguridad predeterminado permite únicamente el tráfico entrante mediante
SSH a través del puerto 22. Para obtener más información, consulte the section called “Configuración de
Amazon VPC” (p. 500).

Para finalizar este paso, debe ver correctamente la página web desde fuera del IDE de AWS Cloud9.

1. Configure la raíz del sitio web predeterminado para Apache HTTP Server (/var/www/html) con los
propietarios y los permisos de acceso recomendados. Para ello, ejecute los seis comandos siguientes,
de uno en uno, en el orden que se indica a continuación, desde una sesión del terminal en el IDE de
AWS Cloud9. Para entender lo que hace cada comando, lea la información que aparece detrás del
comando # en cada comando.

Para Amazon Linux:

sudo groupadd web-content # Create a group named web-content.

sudo usermod -G web-content -a ec2-user # Add the user ec2-user (your default user for
this environment) to the group web-content.

sudo usermod -G web-content -a apache # Add the user apache (Apache HTTP Server) to the
group web-content.

sudo chown -R ec2-user:web-content /var/www/html # Change the owner of /var/www/html


and its files to user ec2-user and group web-content.

sudo find /var/www/html -type f -exec chmod u=rw,g=rx,o=rx {} \; # Change all file
permissions within /var/www/html to user read/write, group read-only, and others read/
execute.

422
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web

sudo find /var/www/html -type d -exec chmod u=rwx,g=rx,o=rx {} \; # Change /var/www/


html directory permissions to user read/write/execute, group read/execute, and others
read/execute.

Para Ubuntu Server:

sudo groupadd web-content # Create a group named web-content.

sudo usermod -G web-content -a ubuntu # Add the user ubuntu (your default user for this
environment) to the group web-content.

sudo usermod -G web-content -a www-data # Add the user www-data (Apache HTTP Server) to
the group web-content.

sudo chown -R ubuntu:web-content /var/www/html # Change the owner of /var/www/html and


its files to user ubuntu and group web-content.

sudo find /var/www/html -type f -exec chmod u=rw,g=rx,o=rx {} \; # Change all file
permissions within /var/www/html to user read/write, group read-only, and others read/
execute.

sudo find /var/www/html -type d -exec chmod u=rwx,g=rx,o=rx {} \; # Change /var/www/


html directory permissions to user read/write/execute, group read/execute, and others
read/execute.

2. Cree una página web basada en PHP denominada index.php en la carpeta raíz del sitio web
predeterminado para Apache HTTP Server (que es /var/www/html) ejecutando el siguiente
comando.

Para Amazon Linux:

sudo touch /var/www/html/index.php && sudo chown -R ec2-user:web-content /var/www/html/


index.php && sudo chmod u=rw,g=rx,o=rx /var/www/html/index.php && sudo printf '%s\n%s\n
%s' '<?php' ' phpinfo();' '?>' >> /var/www/html/index.php

El comando anterior de Amazon Linux también cambia el propietario del archivo a ec2-user, el grupo
del archivo a web-content y los permisos del archivo a lectura/escritura para el usuario y a lectura/
ejecución para el grupo y otros usuarios.

Para Ubuntu Server:

sudo touch /var/www/html/index.php && sudo chown -R ubuntu:web-content /var/www/html/


index.php && sudo chmod u=rw,g=rx,o=rx /var/www/html/index.php && sudo printf '%s\n%s\n
%s' '<?php' ' phpinfo();' '?>' >> /var/www/html/index.php

El comando anterior de Ubuntu Server cambia también el propietario del archivo a ubuntu, cambia
el grupo del archivo a web-content y cambia los permisos del archivo a lectura/escritura para el
usuario y a lectura/ejecución para el grupo y otros usuarios.

Si se ejecuta correctamente, los comandos anteriores crean el archivo index.php con el siguiente
contenido.

<?php
phpinfo();
?>

3. Habilite el tráfico web entrante a través del puerto 80 para ver la nueva página web. Para ello,
configure la ACL de red en Amazon VPC y el grupo de seguridad en Amazon EC2 que están
asociados a este entorno de EC2. Para ello, ejecute los ocho comandos siguientes, de uno en uno, en

423
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web

el orden que se indica a continuación. Para entender lo que hace cada comando, lea la información
que aparece detrás del comando # en cada comando.
Important

La ejecución de los siguientes comandos permite el tráfico web entrante a través del puerto
80 para todos los entornos de EC2 de instancias de Amazon EC2 que están asociados al
grupo de seguridad y a la ACL de red de este entorno. Esto podría provocar la habilitación
inesperada del tráfico web entrante a través del puerto 80 para entornos de EC2 e instancias
de Amazon EC2 distintos del actual.
Note

Los comandos del segundo al cuarto siguientes habilitan el grupo de seguridad para permitir
el tráfico web entrante a través del puerto 80. Si tiene un grupo de seguridad predeterminado,
que solo permite el tráfico SSH a través del puerto 22, debe ejecutar el primer comando y
después los comandos del segundo al cuarto. Sin embargo, si tiene un grupo de seguridad
personalizado que ya permite el tráfico web entrante a través del puerto 80, puede omitir sin
problemas la ejecución de estos comandos.
Los comandos del quinto al octavo siguientes habilitan la ACL de red para permitir el tráfico
web entrante a través del puerto 80. Si tiene una ACL de red predeterminada, que ya permite
todo el tráfico entrante a través de todos los puertos, puede pasar por alto la ejecución de
dichos comandos. Sin embargo, si tiene una ACL de red personalizada que no permite que el
tráfico web entrante a través del puerto 80, debe ejecutar el primer comando seguido de los
comandos quinto hasta el octavo.

MY_INSTANCE_ID=$(curl http://169.254.169.254/latest/meta-data/instance-id) # Get the ID


of the instance for the environment, and store it temporarily.

MY_SECURITY_GROUP_ID=$(aws ec2 describe-instances --instance-id $MY_INSTANCE_ID --query


'Reservations[].Instances[0].SecurityGroups[0].GroupId' --output text) # Get the ID of
the security group associated with the instance, and store it temporarily.

aws ec2 authorize-security-group-ingress --group-id $MY_SECURITY_GROUP_ID --protocol


tcp --cidr 0.0.0.0/0 --port 80 # Add an inbound rule to the security group to allow
all incoming IPv4-based traffic over port 80.

aws ec2 authorize-security-group-ingress --group-id $MY_SECURITY_GROUP_ID --ip-


permissions IpProtocol=tcp,Ipv6Ranges='[{CidrIpv6=::/0}]',FromPort=80,ToPort=80 # Add
an inbound rule to the security group to allow all incoming IPv6-based traffic over
port 80.

MY_SUBNET_ID=$(aws ec2 describe-instances --instance-id $MY_INSTANCE_ID --query


'Reservations[].Instances[0].SubnetId' --output text) # Get the ID of the subnet
associated with the instance, and store it temporarily.

MY_NETWORK_ACL_ID=$(aws ec2 describe-network-acls --filters Name=association.subnet-


id,Values=$MY_SUBNET_ID --query 'NetworkAcls[].Associations[0].NetworkAclId' --output
text) # Get the ID of the network ACL associated with the subnet, and store it
temporarily.

aws ec2 create-network-acl-entry --network-acl-id $MY_NETWORK_ACL_ID --ingress --


protocol tcp --rule-action allow --rule-number 10000 --cidr-block 0.0.0.0/0 --port-
range From=80,To=80 # Add an inbound rule to the network ACL to allow all IPv4-based
traffic over port 80. Advanced users: change this suggested rule number as desired.

aws ec2 create-network-acl-entry --network-acl-id $MY_NETWORK_ACL_ID --ingress --


protocol tcp --rule-action allow --rule-number 10100 --ipv6-cidr-block ::/0 --port-
range From=80,To=80 # Add an inbound rule to the network ACL to allow all IPv6-based
traffic over port 80. Advanced users: change this suggested rule number as desired.

424
AWS Cloud9 Guía del usuario
Paso 4: limpieza

4. Obtenga la URL al archivo index.php en la raíz del servidor web. Para ello, ejecute el siguiente
comando y utilice una nueva pestaña del navegador web o un navegador web distinto desde el IDE
de AWS Cloud9 para ir a la URL que se muestra. Si se ejecuta correctamente, la página web muestra
información acerca de Apache HTTP Server, MySQL, PHP y otra configuración relacionada.

MY_PUBLIC_IP=$(curl http://169.254.169.254/latest/meta-data/public-ipv4) && echo


http://$MY_PUBLIC_IP/index.php # Get the URL to the index.php file within the web
server root.

Paso 4: limpieza
Si desea seguir usando este entorno, pero desactivar el tráfico web entrante a través del puerto 80, ejecute
los ocho comandos siguientes, uno por uno, en el orden que se indica a continuación, para eliminar las
reglas de tráfico entrante correspondientes que configuró anteriormente en el grupo de seguridad y en la
ACL de red que están asociados al entorno. Para entender lo que hace cada comando, lea la información
que aparece detrás del comando # en cada comando.
Important

La ejecución de los siguientes comandos desactiva el tráfico web entrante a través del puerto 80
para todos los entornos de EC2 y las instancias de Amazon EC2 que están asociados al grupo de
seguridad y a la ACL de red de este entorno. Esto podría provocar la desactivación inesperada
del tráfico web entrante a través del puerto 80 para entornos de EC2 e instancias de Amazon EC2
distintos del actual.
Note

Los comandos del quinto al octavo siguientes eliminan las reglas existentes para impedir que
la ACL de red permita el tráfico web entrante a través del puerto 80. Si tiene una ACL de red
predeterminada, que ya permite todo el tráfico entrante a través de todos los puertos, puede pasar
por alto la ejecución de dichos comandos. Sin embargo, si tiene una ACL de red personalizada
con reglas existentes que permite el tráfico web entrante a través del puerto 80 y desea eliminar
estas reglas, debe ejecutar el primer comando seguido de los comandos quinto hasta el octavo.

MY_INSTANCE_ID=$(curl http://169.254.169.254/latest/meta-data/instance-id) # Get the ID of


the instance for the environment, and store it temporarily.

MY_SECURITY_GROUP_ID=$(aws ec2 describe-instances --instance-id $MY_INSTANCE_ID --query


'Reservations[].Instances[0].SecurityGroups[0].GroupId' --output text) # Get the ID of the
security group associated with the instance, and store it temporarily.

aws ec2 revoke-security-group-ingress --group-id $MY_SECURITY_GROUP_ID --protocol tcp --


cidr 0.0.0.0/0 --port 80 # Delete the existing inbound rule from the security group to
block all incoming IPv4-based traffic over port 80.

aws ec2 revoke-security-group-ingress --group-id $MY_SECURITY_GROUP_ID --ip-permissions


IpProtocol=tcp,Ipv6Ranges='[{CidrIpv6=::/0}]',FromPort=80,ToPort=80 # Delete the existing
inbound rule from the security group to block all incoming IPv6-based traffic over port
80.

MY_SUBNET_ID=$(aws ec2 describe-instances --instance-id $MY_INSTANCE_ID --query


'Reservations[].Instances[0].SubnetId' --output text) # Get the ID of the subnet
associated with the instance, and store it temporarily.

MY_NETWORK_ACL_ID=$(aws ec2 describe-network-acls --filters Name=association.subnet-


id,Values=$MY_SUBNET_ID --query 'NetworkAcls[].Associations[0].NetworkAclId' --output text)
# Get the ID of the network ACL associated with the subnet, and store it temporarily.

aws ec2 delete-network-acl-entry --network-acl-id $MY_NETWORK_ACL_ID --ingress --rule-


number 10000 # Delete the existing inbound rule from the network ACL to block all IPv4-

425
AWS Cloud9 Guía del usuario
Muestra de WordPress

based traffic over port 80. Advanced users: if you originally created this rule with a
different number, change this suggested rule number to match.

aws ec2 delete-network-acl-entry --network-acl-id $MY_NETWORK_ACL_ID --ingress --rule-


number 10100 # Delete the existing inbound rule from the network ACL to block all IPv6-
based traffic over port 80. Advanced users: if you originally created this rule with a
different number, change this suggested rule number to match.

Si ha terminado de usar este entorno, debe eliminarlo para evitar que se apliquen cargos continuos en su
cuenta de AWS. Para obtener instrucciones, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).

Instalación de WordPress para AWS Cloud9


Esta muestra le permite ejecutar WordPress en un entorno de desarrollo de AWS Cloud9. WordPress es
un sistema de administración de contenidos (CMS) de código abierto muy utilizado para la entrega de
contenido web.
Note

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen
posibles cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2). Para obtener
más información, consulte Precios de Amazon EC2.

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

• Tiene una instancia EC2 actualizada con todos los paquetes de software más recientes. En la ventana
del terminal del IDE de AWS Cloud9, puede ejecutar yum update con la opción -y para instalar
actualizaciones sin necesidad de confirmación. Si le gustaría examinar las actualizaciones antes de la
instalación, puede omitir esta opción.

sudo yum update -y

Información general de la instalación


La instalación de WordPress en la instancia EC2 de su entorno implica los siguientes pasos:

1. Instalación y configuración del servidor MariaDB, que es una base de datos relacional de código abierto
que almacena información de las instalaciones de WordPress
2. Instalación y configuración de WordPress, que incluye la edición del archivo de configuración
wordpress.conf
3. Configuración del servidor Apache que aloja el sitio de WordPress
4. Vista previa del contenido web de WordPress alojado en el servidor Apache

426
AWS Cloud9 Guía del usuario
Paso 1: Instalación y configuración del servidor MariaDB

Paso 1: Instalación y configuración del servidor


MariaDB
1. En el IDE de AWS Cloud9, elija Window (Ventana), New Terminal (Nuevo terminal) e ingrese los
comandos siguientes para instalar e iniciar una instalación del servidor MariaDB:

sudo yum install -y mariadb-server


sudo systemctl start mariadb

2. A continuación, ejecute el script de mysql_secure_installation para mejorar la seguridad de la


instalación del servidor MariaDB.

Cuando proporcione respuestas al script, presione Intro en la primera pregunta para mantener la
contraseña raíz en blanco. Pulse n para Set root password? y, luego, y para cada una de las
demás opciones de seguridad.

mysql_secure_installation

3. Ahora cree una tabla de base de datos para almacenar información de WordPress utilizando el cliente
MariaDB.

(Pulse Intro cuando se le solicite la contraseña).

sudo mysql -u root -p


MariaDB [(none)]> create database wp_test;
MariaDB [(none)]> grant all privileges on wp_test.* to wp_user@localhost identified by
'YourSecurePassword';

4. Para cerrar la sesión en el cliente MariaDB, ejecute el comando exit.

Paso 2: Instalación y configuración de WordPress


1. En la ventana del terminal del IDE, diríjase al directorio environment y, a continuación, cree los
directorios config y wordpress. A continuación, ejecute el comando touch para crear un archivo
denominado wordpress.conf en el directorio config:

cd /home/ec2-user/environment
mkdir config wordpress
touch config/wordpress.conf

2. Utilice el editor del IDE o vim para actualizar el archivo wordpress.conf con información de
configuración del anfitrión que permita al servidor Apache servir contenido de WordPress:

# Ensure that Apache listens on port 80


Listen 8080
<VirtualHost *:8080>
DocumentRoot "/var/www/wordpress"
ServerName www.example.org
# Other directives here
</VirtualHost>

3. A continuación, ejecute los comandos siguientes para recuperar el archivo necesario e instalar
WordPress:

cd /home/ec2-user/environment

427
AWS Cloud9 Guía del usuario
Paso 3: Configurar el servidor HTTP Apache

wget https://wordpress.org/latest.tar.gz
tar xvf latest.tar.gz

4. Ejecute el comando touch para crear un archivo denominado wp-config.php en el directorio


environment/wordpress:

touch wordpress/wp-config.php

5. Utilice el editor del IDE o vim para actualizar wp-config.php con los detalles de configuración base
de su sitio web de WordPress:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wp_test' );

/** MySQL database username */


define( 'DB_USER', 'wp_user' );

/** MySQL database password */


define( 'DB_PASSWORD', 'YourSecurePassword' );

/** MySQL hostname */


define( 'DB_HOST', 'localhost' );

/** Database Charset to use in creating database tables. */


define( 'DB_CHARSET', 'utf8' );

/** The Database Collate type. Don't change this if in doubt. */


define( 'DB_COLLATE', '' );

define('FORCE_SSL', true);

if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS'] = 'on';

Paso 3: Configurar el servidor HTTP Apache


1. En la ventana del terminal del IDE de AWS Cloud9, asegúrese de que tiene Apache instalado:

httpd -v

Para instalar el servidor HTTP de Apache, ejecute el siguiente comando:

sudo yum install -y httpd

2. Vaya al directorio /etc/httpd/conf.d, que es la ubicación de los archivos de configuración


del anfitrión virtual de Apache. A continuación, utilice el comando ln para vincular el archivo
wordpress.conf que creó anteriormente al directorio de trabajo actual (/etc/httpd/conf.d):

cd /etc/httpd/conf.d
sudo ln -s /home/ec2-user/environment/config/wordpress.conf

3. Ahora diríjase al directorio /var/www, que es la carpeta raíz predeterminada para los servidores
Apache. A continuación, utilice el comando ln para vincular el directorio wordpress que creó
anteriormente al directorio de trabajo actual (/var/www):

cd /var/www
sudo ln -s /home/ec2-user/environment/wordpress

428
AWS Cloud9 Guía del usuario
Paso 4: Vista previa del contenido web de WordPress

4. Ejecute el comando chmod para permitir que el servidor Apache ejecute contenido en el subdirectorio
wordpress:

sudo chmod +x /home/ec2-user/

5. Ahora reinicie el servidor Apache para permitirle detectar las nuevas configuraciones:

sudo service httpd restart

Paso 4: Vista previa del contenido web de WordPress


1. Uso del IDE de AWS Cloud9 para crear un nuevo archivo denominado index.html en el siguiente
directorio: environment/wordpress.
2. Agregue texto con formato HTML al archivo index.html. Por ejemplo:

<h1>Hello World!</h1>

3. En la ventana Environment (Entorno), elija la carpeta wordpress y, a continuación, elija Preview


(Vista previa), Preview Running Application (Vista previa de aplicación en ejecución).

La página web, que muestra el mensaje ¡Hola, mundo!, aparece en la pestaña de vista previa de la
aplicación. Para ver el contenido web en su navegador preferido, elija Pop Out Into a New Window
(Mostrar en una ventana nueva).

Si elimina el archivo index.html y actualiza la pestaña de vista previa de la aplicación, se muestra la


página de configuración de WordPress.

Administración de errores de contenido mixto


Los navegadores web muestran errores de contenido mixto para un sitio de WordPress si carga scripts
HTTPS y HTTP o contenido al mismo tiempo. La redacción de los mensajes de error depende del
navegador web que esté utilizando, pero se le informa de que su conexión a un sitio es insegura o no
totalmente segura. Asimismo, el navegador web bloquea el acceso al contenido mixto.
Important

De forma predeterminada, todas las páginas web a las que accede en la pestaña de vista previa
de la aplicación del IDE de AWS Cloud9 utilizan automáticamente el protocolo HTTPS. Si el URI
de una página presenta el protocolo no seguro http, se reemplaza automáticamente por https.
Para acceder al contenido no seguro, tampoco puede restablecer https a http manualmente.
Para obtener orientación sobre cómo implementar HTTPS para su sitio web, consulte la
documentación de WordPress.

Muestra de Java para AWS Cloud9


Important

Si utiliza un entorno de desarrollo de AWS Cloud9 respaldado por una instancia de EC2 con
2 GiB o más de memoria, recomendamos que active la compatibilidad con Java mejorada. Esto
proporciona acceso a características de productividad clave como la finalización de código, lint de
errores, acciones específicas del contexto y opciones de depuración, como puntos de interrupción
e incrementos.

429
AWS Cloud9 Guía del usuario
Requisitos previos

Para obtener más información, consulte Compatibilidad con el desarrollo de Java


mejorada (p. 138).

Esta muestra le permite ejecutar código Java en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 430)
• Paso 1: Instalar las herramientas necesarias (p. 430)
• Paso 2: Agregar el código (p. 432)
• Paso 3: Compilar y ejecutar el código (p. 432)
• Paso 4: Configurar el uso del AWS SDK for Java (p. 432)
• Paso 5: Configurar la administración de credenciales de AWS en su entorno (p. 437)
• Paso 6: Agregar el código de AWS SDK (p. 437)
• Paso 7: Compilar y ejecutar el código de AWS SDK (p. 439)
• Paso 8: eliminar (p. 439)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso, instalará un conjunto de herramientas de desarrollo de Java en su entorno de desarrollo de
AWS Cloud9. Si ya tiene un conjunto de herramientas de desarrollo de Java como Oracle JDK u OpenJDK
instalado en su entorno, continúe en Paso 2: Agregar el código (p. 432). Esta muestra se desarrolló con
OpenJDK 8, que puede instalar en su entorno realizando el siguiente procedimiento.

1. Confirme si OpenJDK 8 ya está instalado. Para ello, en una sesión del terminal en el IDE de AWS
Cloud9, ejecute la versión de la línea de comandos del ejecutador de Java con la opción -version .
(Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window [Ventana], New
Terminal [Nuevo terminal]).

java -version

En función del resultado del comando anterior, realice una de las siguientes acciones:

• Si el resultado indica que no se encuentra el comando java, continúe con el paso 2 de este
procedimiento para instalar OpenJDK 8.

430
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias

• Si el resultado contiene valores que comienzan con Java(TM), Java Runtime Environment,
Java SE, J2SE o Java2, el OpenJDK no está instalado o no se ha establecido como el conjunto de
herramientas de desarrollo de Java predeterminado. Continúe con el paso 2 de este procedimiento
para instalar OpenJDK 8 y, a continuación, cambie a OpenJDK 8.
• Si el resultado contiene valores que comienzan por java version 1.8 y OpenJDK, continúe en
Paso 2: Agregar el código (p. 432). OpenJDK 8 se instala correctamente para esta muestra.
• Si el resultado contiene un java version menor que 1.8 y valores que comienzan por OpenJDK,
continúe con el paso 2 de este procedimiento para actualizar la versión de OpenJDK instalada a
OpenJDK 8.
2. Asegúrese de que las últimas actualizaciones de seguridad y correcciones de errores están
instaladas. Para ello, ejecute la herramienta yum (para Amazon Linux) o la herramienta apt (para
Ubuntu Server) con el comando update .

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

3. Instale OpenJDK 8. Para ello, ejecute la herramienta yum (para Amazon Linux) o la herramienta apt
(para Ubuntu Server) con el comando install y especifique el paquete OpenJDK 8.

Para Amazon Linux:

sudo yum -y install java-1.8.0-openjdk-devel

Para Ubuntu Server:

sudo apt install -y openjdk-8-jdk

Para obtener más información, consulte Cómo descargar e instalar paquetes OpenJDK
preconfigurados en el sitio web de OpenJDK.
4. Cambie o actualice el conjunto de herramientas de desarrollo Java predeterminado a OpenJDK
8. Para ello, ejecute el comando update-alternatives con la opción --config. Ejecute este
comando dos veces para cambiar o actualizar las versiones de la línea de comandos del ejecutor y
compilador de Java.

sudo update-alternatives --config java


sudo update-alternatives --config javac

En cada solicitud, escriba el número de selección para OpenJDK 8 (el que contiene java-1.8).
5. Confirme que las versiones de la línea de comandos del ejecutor y el compilador de Java utilizan
OpenJDK 8. Para ello, ejecute las versiones de la línea de comandos del ejecutor y el compilador de
Java con la opción -version.

java -version
javac -version

Si OpenJDK 8 está instalado y configurado correctamente, la salida de la versión del ejecutador


de Java contiene un valor que comienza por openjdk version 1.8 y la salida de la versión del
compilador de Java comienza por el valor javac 1.8.

431
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

Paso 2: Agregar el código


En el IDE de AWS Cloud9, cree un archivo con el siguiente código y guárdelo con el nombre hello.java.
(Para crear un archivo, en la barra de menús, elija File [Archivo], New File [Archivo nuevo]. Para guardar el
archivo, elija File [Archivo], Save [Guardar]).

public class hello {

public static void main(String []args) {


System.out.println("Hello, World!");

System.out.println("The sum of 2 and 3 is 5.");

int sum = Integer.parseInt(args[0]) + Integer.parseInt(args[1]);

System.out.format("The sum of %s and %s is %s.\n",


args[0], args[1], Integer.toString(sum));
}
}

Paso 3: Compilar y ejecutar el código


1. Utilice la versión de la línea de comandos del compilador de Java para compilar el archivo
hello.java en un archivo hello.class. Para ello, con el terminal del IDE de AWS Cloud9, desde
el mismo directorio que el archivo hello.java, ejecute el compilador de Java y especifique el archivo
hello.java.

javac hello.java

2. Utilice la versión de la línea de comandos del ejecutador de Java para ejecutar el archivo
hello.class. Para ello, desde el mismo directorio que el archivo hello.class, ejecute el
ejecutador de Java, especificando el nombre de la clase hello que se declaró en el archivo
hello.java, con dos enteros para añadirlos (por ejemplo, 5 y 9).

java hello 5 9

3. Compare sus resultados.

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

Paso 4: Configurar el uso del AWS SDK for Java


Puede mejorar esta muestra para utilizar el AWS SDK for Java y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este paso, instale Apache Maven o Gradle en su entorno. Maven y Gradle son sistemas de
automatización de compilación comunes que se pueden utilizar con proyectos Java. Después de instalar
Maven o Gradle, se usa para generarlo un nuevo proyecto Java. En este nuevo proyecto, añada una
referencia al AWS SDK for Java. Este AWS SDK for Java proporciona una forma práctica de interactuar
con los servicios de AWS como Amazon S3, desde su código Java.

Temas

432
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java

• Configuración con Maven (p. 433)


• Configuración con Gradle (p. 435)

Configuración con Maven


1. Instale Maven en su entorno. Para determinar si Maven ya está instalado, use el terminal del IDE de
AWS Cloud9 y ejecute Maven con la opción -version .

mvn -version

Si es así, el resultado contendrá el número de versión de Maven. Si Maven ya está instalado, vaya al
paso 4 de este procedimiento para utilizar Maven con el fin de generar un nuevo proyecto Java en su
entorno.
2. Instale Maven utilizando el terminal para ejecutar los siguientes comandos.

Para Amazon Linux, los siguientes comandos obtienen información sobre el repositorio de paquetes
donde se almacena Maven y, a continuación, utilizan esta información para instalar Maven.

sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo


-O /etc/yum.repos.d/epel-apache-maven.repo
sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
sudo yum install -y apache-maven

Para obtener más información sobre los comandos anteriores, consulte Paquetes Extra para
Enterprise Linux (EPEL) en el sitio web wiki del proyecto Fedora.

Para Ubuntu Server, ejecute en cambio el siguiente comando.

sudo apt install -y maven

3. Confirme la instalación ejecutando Maven con la opción -version .

mvn -version

4. Utilice Maven para generar un nuevo proyecto Java. Para ello, utilice el terminal para ejecutar el
siguiente comando desde el directorio donde desea que Maven genere el proyecto (por ejemplo, el
directorio raíz de su entorno).

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -


DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

El comando anterior crea la siguiente estructura de directorios para el proyecto en su entorno.

my-app
|- src
| `- main
| `- java
| `- com
| `- mycompany
| `- app
| `-App.java
|- test
| `- java
| `- com
| `- mycompany
| `- app

433
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java

| `- AppTest.java
`- pom.xml

Para obtener más información sobre la estructura de directorios anterior, consulte Arquetipo de inicio
rápido de Maven e Introducción al diseño de directorios estándar en el sitio web del proyecto Apache
Maven.
5. Modifique el archivo Project Object Model (POM) del proyecto. (Un archivo POM define la
configuración de un proyecto Maven). Para ello, en la ventana Environment (Entorno), abra el archivo
my-app/pom.xml. En el editor, reemplace el contenido actual del archivo por el siguiente código y, a
continuación, guarde el archivo pom.xml.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/


XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/
maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.mycompany.app.App</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.330</version>
</dependency>
</dependencies>
</project>

434
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java

El archivo POM anterior incluye la configuración del proyecto que especifica declaraciones como las
siguientes:

• La configuración artifactid de my-app establece el nombre del directorio raíz del proyecto y la
configuración group-id de com.mycompany.app establece la estructura de subdirectorios com/
mycompany/app y la declaración package en los archivos App.Java y AppTest.java.
• La configuración artifactId de my-app, con la configuración packaging de jar, la
configuración version de 1.0-SNAPSHOT y la configuración descriptorRef de jar-with-
dependencies establece el nombre del archivo JAR de salida de my-app-1.0-SNAPSHOT-jar-
with-dependencies.jar.
• La sección plugin declara que se creará un único JAR, que incluye todas las dependencias.
• La sección dependency con la configuración groupId de com.amazon.aws y la configuración
artifactId de aws-java-sdk incluye los archivos de biblioteca de AWS SDK for Java. La
versión de AWS SDK for Java que se usará se declara mediante la configuración version. Para
utilizar otra versión, reemplace este número de versión.

Vaya a Paso 5: Configurar la administración de credenciales de AWS en su entorno (p. 437).

Configuración con Gradle


1. Instale Gradle en su entorno. Para determinar si Gradle ya está instalado, utilice el terminal del IDE de
AWS Cloud9 y ejecute Gradle con la opción -version .

gradle -version

Si es así, el resultado contendrá el número de versión de Gradle. Si Gradle ya está instalado, vaya al
paso 4 de este procedimiento para utilizar Gradle con el fin de generar un nuevo proyecto Java en su
entorno.
2. Instale Gradle utilizando el terminal para ejecutar los siguientes comandos. Estos comandos instalan y
ejecutan la herramienta SDKMAN! y, a continuación, utilizan SDKMAN! para instalar la última versión
de Gradle.

curl -s "https://get.sdkman.io" | bash


source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install gradle

Para obtener más información sobre los comandos anteriores, consulte Installation en el sitio web de
SDKMAN e Install with a package manager en el sitio web Gradle.
3. Confirme la instalación ejecutando Gradle con la opción -version .

gradle -version

4. Utilice Gradle para generar un nuevo proyecto Java en su entorno. Para ello, use el terminal para
ejecutar los siguientes comandos con el fin de crear un directorio para el proyecto y, a continuación,
cambie a ese directorio.

mkdir my-app
cd my-app

5. Ejecute el siguiente comando para que Gradle genere un nuevo proyecto de aplicación Java en el
directorio my-app de su entorno.

gradle init --type java-application

435
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java

El comando anterior crea la siguiente estructura de directorios para el proyecto en su entorno.

my-app
|- .gradle
| `- (various supporting project folders and files)
|- gradle
| `- (various supporting project folders and files)
|- src
| |- main
| | `- java
| | `- App.java
| `- test
| `- java
| `- AppTest.java
|- build.gradle
|- gradlew
|- gradlew.bat
`- settings.gradle

6. Modifique AppTest.java para el proyecto. (Si no lo hace, es posible que el proyecto no se compile
ni ejecute del modo previsto). Para ello, en la ventana Environment (Entorno), abra el archivo my-
app/src/test/java/AppTest.java. En el editor, reemplace el contenido actual del archivo por el
siguiente código y, a continuación, guarde el archivo AppTest.java.

import org.junit.Test;
import static org.junit.Assert.*;

public class AppTest {


@Test public void testAppExists () {
try {
Class.forName("com.mycompany.app.App");
} catch (ClassNotFoundException e) {
fail("Should have a class named App.");
}
}
}

7. Modifique el archivo build.gradle para el proyecto. (Un archivo build.gradle define la


configuración de un proyecto Gradle). Para ello, en la ventana Environment (Entorno), abra el archivo
my-app/build.gradle. En el editor, reemplace el contenido actual del archivo por el siguiente
código y, a continuación, guarde el archivo build.gradle.

apply plugin: 'java'


apply plugin: 'application'

repositories {
jcenter()
mavenCentral()
}

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.3.RELEASE"
}
}

apply plugin: "io.spring.dependency-management"

dependencyManagement {

436
AWS Cloud9 Guía del usuario
Paso 5: Configurar la administración
de credenciales de AWS en su entorno

imports {
mavenBom 'com.amazonaws:aws-java-sdk-bom:1.11.330'
}
}

dependencies {
compile 'com.amazonaws:aws-java-sdk-s3'
testCompile group: 'junit', name: 'junit', version: '4.12'
}

run {
if (project.hasProperty("appArgs")) {
args Eval.me(appArgs)
}
}

mainClassName = 'App'

El archivo build.gradle anterior incluye la configuración del proyecto que especifica declaraciones
como las siguientes:

• El complemento io.spring.dependency-management se utiliza para importar la lista de


materiales (BOM) de AWS SDK for Java de Maven para administrar las dependencias AWS SDK
for Java del proyecto. classpath declara la versión que se utilizará. Para utilizar otra versión,
reemplace este número de versión.
• com.amazonaws:aws-java-sdk-s3 incluye la parte de Amazon S3 de los archivos de la
biblioteca de AWS SDK for Java. mavenBom declara la versión que se utilizará. Si desea utilizar otra
versión, reemplace este número de versión.

Paso 5: Configurar la administración de credenciales


de AWS en su entorno
Cada vez que utilice el AWS SDK for Java para llamar a un servicio de AWS, debe proporcionar un
conjunto de credenciales de AWS con la llamada. Estas credenciales determinan si el AWS SDK for
Java tiene los permisos adecuados para realizar esa llamada. Si las credenciales no cubren los permisos
adecuados, la llamada no se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.

Para obtener más información, consulte Configurar las credenciales y la región de AWS para el desarrollo
en la Guía para desarrolladores de AWS SDK for Java.

Paso 6: Agregar el código de AWS SDK


En este paso, agregará código para interactuar con Amazon S3 y crear un bucket, enumerará los buckets
disponibles y, a continuación, eliminará el bucket que acaba de crear.

En la ventana Environment (Entorno) abra el archivo my-app/src/main/java/com/mycompany/app/


App.java para Maven o el archivo my-app/src/main/java/App.java para Gradle. En el editor,
reemplace el contenido actual del archivo por el siguiente código y, a continuación, guarde el archivo
App.java.

package com.mycompany.app;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;

437
AWS Cloud9 Guía del usuario
Paso 6: Agregar el código de AWS SDK

import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.amazonaws.services.s3.model.AmazonS3Exception;
import com.amazonaws.services.s3.model.Bucket;
import com.amazonaws.services.s3.model.CreateBucketRequest;

import java.util.List;

public class App {

private static AmazonS3 s3;

public static void main(String[] args) {


if (args.length < 2) {
System.out.format("Usage: <the bucket name> <the AWS Region to use>\n" +
"Example: my-test-bucket us-east-2\n");
return;
}

String bucket_name = args[0];


String region = args[1];

s3 = AmazonS3ClientBuilder.standard()
.withCredentials(new ProfileCredentialsProvider())
.withRegion(region)
.build();

// List current buckets.


ListMyBuckets();

// Create the bucket.


if (s3.doesBucketExistV2(bucket_name)) {
System.out.format("\nCannot create the bucket. \n" +
"A bucket named '%s' already exists.", bucket_name);
return;
} else {
try {
System.out.format("\nCreating a new bucket named '%s'...\n\n",
bucket_name);
s3.createBucket(new CreateBucketRequest(bucket_name, region));
} catch (AmazonS3Exception e) {
System.err.println(e.getErrorMessage());
}
}

// Confirm that the bucket was created.


ListMyBuckets();

// Delete the bucket.


try {
System.out.format("\nDeleting the bucket named '%s'...\n\n", bucket_name);
s3.deleteBucket(bucket_name);
} catch (AmazonS3Exception e) {
System.err.println(e.getErrorMessage());
}

// Confirm that the bucket was deleted.


ListMyBuckets();

private static void ListMyBuckets() {


List<Bucket> buckets = s3.listBuckets();
System.out.println("My buckets now are:");

for (Bucket b : buckets) {

438
AWS Cloud9 Guía del usuario
Paso 7: Compilar y ejecutar el código de AWS SDK

System.out.println(b.getName());
}
}

Paso 7: Compilar y ejecutar el código de AWS SDK


Para ejecutar el código desde el paso anterior, ejecute los siguientes comandos desde el terminal. Estos
comandos usan Maven o Gradle para crear un archivo JAR ejecutable para el proyecto y, a continuación,
usan el ejecutador de Java para ejecutar el archivo JAR. El archivo JAR se ejecuta con el nombre del
bucket que se va a crear en Amazon S3 (por ejemplo, my-test-bucket) y el ID de la región de AWS
para crear el bucket como entrada (por ejemplo, us-east-2).

Para Maven, ejecute los siguientes comandos.

cd my-app
mvn package
java -cp target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar com.mycompany.app.App my-
test-bucket us-east-2

Para Gradle, ejecute los siguientes comandos.

gradle build
gradle run -PappArgs="['my-test-bucket', 'us-east-2']"

Compare sus resultados con la siguiente salida.

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

My buckets now are:

Paso 8: eliminar
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Muestra de C++ para AWS Cloud9


Esta muestra le permite ejecutar código de C++ en un entorno de desarrollo de AWS Cloud9. El
código también utiliza los recursos proporcionados por el AWS SDK for C++, una biblioteca modular,
multiplataforma y de código abierto que puede utilizar para conectarse a Amazon Web Services.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

439
AWS Cloud9 Guía del usuario
Requisitos previos

Temas
• Requisitos previos (p. 440)
• Paso 1: Instalar g++ y los paquetes de desarrollo necesarios (p. 440)
• Paso 2: Instalar CMake (p. 441)
• Paso 3: Obtener y compilar el SDK para C++ (p. 441)
• Paso 4: Crear archivos de C++ y CMakeLists (p. 442)
• Paso 5: Compilar y ejecutar el código de C++ (p. 445)
• Paso 6: Limpieza (p. 446)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar g++ y los paquetes de desarrollo


necesarios
Para compilar y ejecutar una aplicación de C++, necesita una utilidad como g++, que sea un compilador de
C++ proporcionado por GNU Complier Collection (GCC).

También tiene que agregar archivos de encabezado (paquetes -dev) para libcurl, libopenssl,
libuuid, zlib y, de manera opcional, libpulse para obtener asistencia de Amazon Polly.

El proceso de instalación de herramientas de desarrollo varía ligeramente según si utiliza una instancia de
Amazon Linux/Amazon Linux 2 o una instancia de Ubuntu.

Amazon Linux-based systems

Para verificar si ya tiene gcc instalado, puede ejecutar el siguiente comando en el terminal de AWS
Cloud9:

g++ --version

Si g++ no está instalado, puede instalarlo fácilmente como parte del grupo de paquetes denominado
“Herramientas de desarrollo”. Estas herramientas se agregan a una instancia con el comando yum
groupinstall:

sudo yum groupinstall "Development Tools"

Ejecute g++ --version de nuevo para confirmar que se ha instalado el compilador.

Ahora instale los paquetes para las bibliotecas requeridas mediante el administrador de paquetes del
sistema:

440
AWS Cloud9 Guía del usuario
Paso 2: Instalar CMake

sudo yum install libcurl-devel openssl-devel libuuid-devel pulseaudio-libs-devel

Ubuntu-based systems

Para verificar si ya tiene gcc instalado, puede ejecutar el siguiente comando en el terminal de AWS
Cloud9:

g++ --version

Si GCC no está instalado, puede instalarlo en un sistema basado en Ubuntu mediante los siguientes
comandos:

sudo apt update


sudo apt install build-essential
sudo apt-get install manpages-dev

Ejecute g++ --version de nuevo para confirmar que se ha instalado el compilador.

Ahora instale los paquetes para las bibliotecas requeridas mediante el administrador de paquetes del
sistema:

sudo apt-get install libcurl4-openssl-dev libssl-dev uuid-dev zlib1g-dev libpulse-dev

Paso 2: Instalar CMake


Debe instalar la herramienta cmake, que automatiza el proceso de compilación de archivos ejecutables a
partir del código fuente.

1. En la ventana del terminal del IDE, ejecute el siguiente comando para obtener el archivo requerido:

wget https://cmake.org/files/v3.18/cmake-3.18.0.tar.gz

2. Extraiga los archivos del archivo y vaya al directorio que contiene los archivos desempaquetados:

tar xzf cmake-3.18.0.tar.gz


cd cmake-3.18.0

3. A continuación, ejecute un script de arranque y ejecute los comandos siguientes para instalar cmake:

./bootstrap
make
sudo make install

4. Para confirmar que ha instalado la herramienta, ejecute el comando siguiente:

cmake --version

Paso 3: Obtener y compilar el SDK para C++


Para configurar AWSSDK para C++, puede crear el SDK usted mismo directamente desde la fuente o
descargar las bibliotecas utilizando un administrador de paquetes. Puede encontrar detalles sobre las

441
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists

opciones disponibles en Introducción al uso de AWS SDK para C++ en la Guía para desarrolladores de
AWS SDK for C++.

En esta muestra se explica cómo usar git para clonar el código fuente del SDK y cmake para crear el
SDK para C++.

1. Clone el repositorio remoto y obtenga todos los submódulos de Git repetidamente para su entorno de
AWS Cloud9 ejecutando el siguiente comando en el terminal:

git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp

2. Desplácese hasta el nuevo directorio aws-sdk-cpp, cree un subdirectorio en el que crear el AWS
SDK para C++ y, a continuación, diríjase a:

cd aws-sdk-cpp
mkdir sdk_build
cd sdk_build

3. Note

Para ahorrar tiempo, en este paso se crea solo la sección Amazon S3 del AWS SDK for C
++. Si desea crear el SDK completo, omita el fragmento -DBUILD_ONLY=s3 del comando
cmake.
La creación del SDK para C++ completo puede tardar más de una hora en completarse en
función de los recursos informáticos disponibles para su instancia de Amazon EC2 o para su
propio servidor.

Use cmake para compilar la sección Amazon S3 del SDK para C++ en el directorio sdk_build
mediante la ejecución del siguiente comando:

cmake .. -DBUILD_ONLY=s3

4. A continuación, ejecute el comando make install para que se pueda acceder al SDK creado:

sudo make install


cd ..

Paso 4: Crear archivos de C++ y CMakeLists


En este paso va a crear un archivo de C++ que permita a los usuarios del proyecto interactuar con los
buckets de Amazon S3.

También puede crear un archivo CMakeLists.txt con instrucciones que cmake utiliza para crear su
biblioteca de C++.

1. En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3-
demo.cpp en la raíz (/) de su entorno.

#include <iostream>
#include <aws/core/Aws.h>
#include <aws/s3/S3Client.h>
#include <aws/s3/model/Bucket.h>
#include <aws/s3/model/CreateBucketConfiguration.h>
#include <aws/s3/model/CreateBucketRequest.h>
#include <aws/s3/model/DeleteBucketRequest.h>

// Look for a bucket among all currently available Amazon S3 buckets.

442
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists

bool FindTheBucket(const Aws::S3::S3Client& s3Client,


const Aws::String& bucketName) {

Aws::S3::Model::ListBucketsOutcome outcome = s3Client.ListBuckets();

if (outcome.IsSuccess()) {

std::cout << "Looking for a bucket named '" << bucketName << "'..."
<< std::endl << std::endl;

Aws::Vector<Aws::S3::Model::Bucket> bucket_list =
outcome.GetResult().GetBuckets();

for (Aws::S3::Model::Bucket const& bucket : bucket_list)


{
if (bucket.GetName() == bucketName)
{
std::cout << "Found the bucket." << std::endl << std::endl;

return true;
}
}

std::cout << "Could not find the bucket." << std::endl << std::endl;

return true;
}
else {
std::cout << "ListBuckets error: "
<< outcome.GetError().GetMessage() << std::endl;
}

return false;
}

// Create an Amazon S3 bucket.


bool CreateTheBucket(const Aws::S3::S3Client& s3Client,
const Aws::String& bucketName) {

std::cout << "Creating a bucket named '"


<< bucketName << "'..." << std::endl << std::endl;

Aws::S3::Model::CreateBucketRequest request;
request.SetBucket(bucketName);

Aws::S3::Model::CreateBucketOutcome outcome =
s3Client.CreateBucket(request);

if (outcome.IsSuccess()) {
std::cout << "Bucket created." << std::endl << std::endl;

return true;
}
else {
std::cout << "CreateBucket error: "
<< outcome.GetError().GetMessage() << std::endl;

return false;
}
}

// Delete an existing Amazon S3 bucket.


bool DeleteTheBucket(const Aws::S3::S3Client& s3Client,
const Aws::String& bucketName) {

std::cout << "Deleting the bucket named '"

443
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists

<< bucketName << "'..." << std::endl << std::endl;

Aws::S3::Model::DeleteBucketRequest request;
request.SetBucket(bucketName);

Aws::S3::Model::DeleteBucketOutcome outcome =
s3Client.DeleteBucket(request);

if (outcome.IsSuccess()) {
std::cout << "Bucket deleted." << std::endl << std::endl;

return true;
}
else {
std::cout << "DeleteBucket error: "
<< outcome.GetError().GetMessage() << std::endl;

return false;
}
}

// Create an Amazon S3 bucket and then delete it.


// Before and after creating the bucket, and then after deleting the bucket,
// try to determine whether that bucket still exists.
int main(int argc, char* argv[]) {

if (argc < 3) {
std::cout << "Usage: s3-demo <bucket name> <AWS Region>" << std::endl
<< "Example: s3-demo my-bucket us-east-1" << std::endl;
return false;
}

Aws::SDKOptions options;
Aws::InitAPI(options);
{
Aws::String bucket_name = argv[1];
Aws::String region = argv[2];

Aws::Client::ClientConfiguration config;

config.region = region;

Aws::S3::S3Client s3_client(config);

if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}

if (!CreateTheBucket(s3_client, bucket_name)) {
return 1;
}

if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}

if (!DeleteTheBucket(s3_client, bucket_name)) {
return 1;
}

if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}
}
Aws::ShutdownAPI(options);

444
AWS Cloud9 Guía del usuario
Paso 5: Compilar y ejecutar el código de C++

return 0;
}

2. Cree un archivo con este contenido y guárdelo con el nombre CMakeLists.txt en la raíz (/) de su
entorno. Este archivo le permite compilar el código en un archivo ejecutable.

# A minimal CMakeLists.txt file for the AWS SDK for C++.

# The minimum version of CMake that will work.


cmake_minimum_required(VERSION 2.8)

# The project name.


project(s3-demo)

# Locate the AWS SDK for C++ package.


set(AWSSDK_ROOT_DIR, "/usr/local/")
set(BUILD_SHARED_LIBS ON)
find_package(AWSSDK REQUIRED COMPONENTS s3)

# The executable name and its source files.


add_executable(s3-demo s3-demo.cpp)

# The libraries used by your executable.


target_link_libraries(s3-demo ${AWSSDK_LINK_LIBRARIES})

Paso 5: Compilar y ejecutar el código de C++


1. En el directorio raíz de su entorno en el que ha guardado los archivos s3-demo.cpp y
CMakeLists.txt, ejecute cmake para crear su proyecto:

cmake .
make

2. Ahora puede ejecutar el programa desde la línea de comandos. En el siguiente comando, reemplace
my-unique-bucket-name por un nombre único para el bucket de Amazon S3 y, si es necesario,
reemplace us-east-1 por el identificador de otra región de AWS en la que desee crear un bucket.

./s3-demo my-unique-bucket-name us-east-1

Si el programa se ejecuta correctamente, se devolverá un resultado similar al siguiente:

Looking for a bucket named 'my-unique-bucket-name'...

Could not find the bucket.

Creating a bucket named 'my-unique-bucket-name'...

Bucket created.

Looking for a bucket named 'my-unique-bucket-name'...

Found the bucket.

Deleting the bucket named 'my-unique-bucket-name'...

Bucket deleted.

Looking for a bucket named 'my-unique-bucket-name'...

445
AWS Cloud9 Guía del usuario
Paso 6: Limpieza

Could not find the bucket.

Paso 6: Limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de usar esta muestra, elimine
el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).

Tutorial de Python para AWS Cloud9


En este tutorial se muestra cómo ejecutar código de Python en un entorno de desarrollo de AWS Cloud9.

El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2) y Amazon Simple Storage
Service (Amazon S3). Para obtener más información, consulte Precios de Amazon EC2 y Precios de
Amazon S3.

Temas
• Requisitos previos (p. 446)
• Paso 1: Instalar Python (p. 446)
• Paso 2: Agregar el código (p. 447)
• Paso 3: Ejecutar el código (p. 447)
• Paso 4: Instalar y configurar el AWS SDK for Python (Boto3) (p. 448)
• Paso 5: Agregar el código de AWS SDK (p. 449)
• Paso 6: Ejecutar el código de AWS SDK (p. 450)
• Paso 7: limpieza (p. 450)

Requisitos previos
Antes de utilizar este ejemplo, asegúrese de que cumple los siguientes requisitos.

• Tiene un entorno de desarrollo de EC2 de AWS Cloud9

En este tutorial se da por hecho que tiene un entorno de EC2 que está conectado a una instancia de
Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server. Para obtener más información, consulte
Creación de un entorno de EC2 (p. 54).

Si tiene un tipo de entorno o sistema operativo distinto, es posible que tenga que adaptar las
instrucciones de este tutorial.
• Ha abierto el IDE de AWS Cloud9 para ese entorno

Al abrir un entorno, AWS Cloud9 abre el IDE de ese entorno en el navegador web. Para obtener más
información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar Python


1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Python ya se ha instalado. Para ello,
ejecute el comando python3 --version . (Para iniciar una nueva sesión del terminal, en la barra

446
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si Python está instalado,
vaya directamente a Paso 2: Agregar el código (p. 447).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

3. Instale Python mediante la ejecución del comando install .

Para Amazon Linux:

sudo yum -y install python3

Para Ubuntu Server:

sudo apt-get install python3

Paso 2: Agregar el código


En el IDE de AWS Cloud9, cree un archivo con el siguiente contenido y guárdelo con el nombre
hello.py. (Para crear un archivo, en la barra de menús, elija File [Archivo], New File [Archivo nuevo].
Para guardar el archivo, elija File [Archivo], Save [Guardar]).

import sys

print('Hello, World!')

print('The sum of 2 and 3 is 5.')

sum = int(sys.argv[1]) + int(sys.argv[2])

print('The sum of {0} and {1} is {2}.'.format(sys.argv[1], sys.argv[2], sum))

Paso 3: Ejecutar el código


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Stopped ([Nuevo] - Detenido), introduzca hello.py 5 9 en Command
(Comando). En el código, 5 representa sys.argv[1] y 9 representa sys.argv[2].
3. Elija Run (Ejecutar) y compare los resultados.

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

4. De forma predeterminada, AWS Cloud9 selecciona automáticamente un ejecutor para el código. Para
cambiar el ejecutor, seleccione Runner (Ejecutor) y, a continuación, seleccione Python 2 o Python 3.

447
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Python (Boto3)

Note

Puede crear ejecutores personalizados para versiones específicas de Python. Para obtener
más información, consulte Crear un compilador o ejecutor (p. 183).

Paso 4: Instalar y configurar el AWS SDK for Python


(Boto3)
AWS SDK for Python (Boto3) le permite utilizar el código de Python para interactuar con los servicios de
AWS, como Amazon S3. Por ejemplo, puede utilizar el SDK para crear un bucket de Amazon S3, enumerar
los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

Instalar pip
En el IDE de AWS Cloud9, confirme si pip ya está instalado para la versión activa de Python mediante la
ejecución del comando python -m pip --version . Si pip está instalado, vaya a la siguiente sección.

Para instalar pip, ejecute los siguientes comandos. Dado que sudo se encuentra en un entorno diferente
al del usuario, tiene que especificar la versión de Python que va a utilizar si difiere de la versión con alias
actual.

curl -O https://bootstrap.pypa.io/get-pip.py # Get the install script.


sudo python36 get-pip.py # Install pip for Python 3.6.
python -m pip --version # Verify pip is installed.
rm get-pip.py # Delete the install script.

Para obtener más información, consulte Instalación en el sitio web de pip.

Instale la AWS SDK for Python (Boto3)


Después de instalar pip, instale AWS SDK for Python (Boto3) mediante la ejecución del comando pip
install.

sudo python36 -m pip install boto3 # Install boto3 for Python 3.6.
python -m pip show boto3 # Verify boto3 is installed for the current version of
Python.

Para obtener más información, consulte la sección "Instalación" de la guía Inicio rápido en AWS SDK for
Python (Boto3).

Configurar las credenciales en su entorno


Cada vez que utilice el AWS SDK for Python (Boto3) para llamar a un servicio de AWS, debe proporcionar
un conjunto de credenciales con la llamada. Estas credenciales determinan si el SDK tiene los permisos
necesarios para realizar la llamada. Si las credenciales no abarcan los permisos necesarios, se produce un
error en la llamada.

Para almacenar sus credenciales en el entorno, siga las instrucciones de Llamar a los servicios de AWS
desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este tema.

Para obtener información adicional, consulte Credenciales en la AWS SDK for Python (Boto3).

448
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

Paso 5: Agregar el código de AWS SDK


Agregue el código que utiliza Amazon S3 para crear un bucket, enumere los buckets disponibles y, de
forma opcional, elimine el bucket que acaba de crear.

En el IDE de AWS Cloud9, cree un archivo con el siguiente contenido y guárdelo con el nombre s3.py.

import sys
import boto3
from botocore.exceptions import ClientError

def list_my_buckets(s3_resource):
print('Buckets:\n\t', *[b.name for b in s3_resource.buckets.all()], sep="\n\t")

def create_and_delete_my_bucket(s3_resource, bucket_name, keep_bucket):


list_my_buckets(s3_resource)

try:
print('\nCreating new bucket:', bucket_name)
bucket = s3_resource.create_bucket(
Bucket=bucket_name,
CreateBucketConfiguration={
'LocationConstraint': s3_resource.meta.client.meta.region_name
}
)
except ClientError as e:
print(f"Couldn't create a bucket for the demo. Here's why: "
f"{e.response['Error']['Message']}")
raise

bucket.wait_until_exists()
list_my_buckets(s3_resource)

if not keep_bucket:
print('\nDeleting bucket:', bucket.name)
bucket.delete()

bucket.wait_until_not_exists()
list_my_buckets(s3_resource)
else:
print('\nKeeping bucket:', bucket.name)

def main():
import argparse

parser = argparse.ArgumentParser()
parser.add_argument('bucket_name', help='The name of the bucket to create.')
parser.add_argument('region', help='The region in which to create your bucket.')
parser.add_argument('--keep_bucket', help='Keeps the created bucket. When not '
'specified, the bucket is deleted '
'at the end of the demo.',
action='store_true')

args = parser.parse_args()
s3_resource = (
boto3.resource('s3', region_name=args.region) if args.region
else boto3.resource('s3'))
try:
create_and_delete_my_bucket(s3_resource, args.bucket_name, args.keep_bucket)
except ClientError:
print('Exiting the demo.')

449
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

if __name__ == '__main__':
main()

Paso 6: Ejecutar el código de AWS SDK


1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En Command (Comando), introduzca s3.py my-test-bucket us-west-2, donde my-test-
bucket es el nombre del bucket que va a crear y us-west-2 es el ID de la región de AWS en la que
se ha creado el bucket. De forma predeterminada, el bucket se elimina antes de que el script salga.
Para conservar el bucket, añada --keep_bucket al comando. Para ver una lista de ID de región
de AWS, consulte Puntos de enlace y cuotas de Amazon Simple Storage Service en la Referencia
general de AWS.
Note

Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
3. Elija Run (Ejecutar) y compare los resultados.

Buckets:

a-pre-existing-bucket

Creating new bucket: my-test-bucket


Buckets:

a-pre-existing-bucket
my-test-bucket

Deleting bucket: my-test-bucket


Buckets:

a-pre-existing-bucket

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS cuando finalice este tutorial, elimine
el entorno de AWS Cloud9. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Muestra de .NET Core para AWS Cloud9


Esta muestra le permite ejecutar código de .NET Core en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas

450
AWS Cloud9 Guía del usuario
Requisitos previos

• Requisitos previos (p. 451)


• Paso 1: Instalar las herramientas necesarias (p. 451)
• Paso 2 (opcional): Instalar la extensión de la CLI de .NET para las funciones de Lambda (p. 453)
• Paso 3: Crear un proyecto de aplicación de consola de .NET Core (p. 453)
• Paso 4: Agregar el código (p. 454)
• Paso 5: Compilar y ejecutar el código (p. 454)
• Paso 6: Crear y configurar un proyecto de aplicación de consola de .NET Core que use AWS SDK
for .NET (p. 456)
• Paso 7: Agregar el código de AWS SDK (p. 457)
• Paso 8: Compilar y ejecutar el código de AWS SDK (p. 458)
• Paso 9: limpieza (p. 459)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso, debe instalar el SDK de .NET Core en su entorno, lo cual es necesario para ejecutar esta
muestra.

1. Confirme si la versión más reciente del SDK de .NET Core ya está instalada en su entorno. Para ello,
en una sesión del terminal en el IDE de AWS Cloud9, ejecute la interfaz de la línea de comandos (CLI)
de .NET Core con la opción --version .

dotnet --version

Si se muestra la versión de las herramientas de la línea de comandos de .NET y es la versión 2.0 o


posterior, vaya a Paso 3: Crear un proyecto de aplicación de consola de .NET Core (p. 453). Si la
versión es anterior a 2.0, o si se muestra un error como bash: dotnet: command not found,
continúe con la instalación del SDK de .NET Core.
2. Para Amazon Linux, en una sesión del terminal en el IDE de AWS Cloud9, ejecute los siguientes
comandos para garantizar que se instalen las últimas actualizaciones de seguridad y correcciones
de errores, así como para instalar un paquete libunwind necesario para el SDK de .NET Core.
[Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window, New Terminal
(Ventana, Nuevo terminal)].

sudo yum -y update


sudo yum -y install libunwind

Para Ubuntu Server, en una sesión del terminal en el IDE de AWS Cloud9, ejecute el siguiente
comando para garantizar que las últimas actualizaciones de seguridad y correcciones de errores estén

451
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias

instaladas. [Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window, New
Terminal (Ventana, Nuevo terminal)].

sudo apt -y update

3. Descargue el script de instalación del SDK de .NET Core en el entorno ejecutando el siguiente
comando.

wget https://dot.net/v1/dotnet-install.sh

4. Haga que el script de instalación sea ejecutable por el usuario actual mediante la ejecución del
siguiente comando.

sudo chmod u=rx dotnet-install.sh

5. Ejecute el script de instalación, que descarga e instala el SDK de .NET Core, mediante la ejecución
del siguiente comando.

./dotnet-install.sh -c Current

6. Agregue el SDK de .NET Core a su PATH. Para ello, en el perfil de shell del entorno (por ejemplo, el
archivo .bashrc), agregue el subdirectorio $HOME/.dotnet a la variable PATH del entorno, como se
indica a continuación.

a. Abra el archivo .bashrc para editarlo mediante el comando vi .

vi ~/.bashrc

b. Para Amazon Linux, con la flecha hacia abajo o la tecla j, vaya a la línea que comienza por
export PATH.

Para Ubuntu Server, vaya a la última línea del archivo escribiendo G.


c. Con la flecha derecha o la tecla $, vaya al final de esa línea.
d. Cambie a modo de inserción pulsando la tecla i. (Aparecerá -- INSERT --- al final de la
pantalla).
e. Para Amazon Linux, agregue el subdirectorio $HOME/.dotnet a la variable PATH , para lo cual
debe escribir :$HOME/.dotnet. Asegúrese de incluir el carácter de dos puntos (:). La línea
ahora debería tener un aspecto similar al siguiente.

export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet

Para Ubuntu Server, pulse la tecla de flecha derecha, pulse Enter dos veces y, a continuación,
escriba la siguiente línea sola al final del archivo.

export PATH=$HOME/.dotnet:$PATH

f. Guarde el archivo. Para ello, pulse la tecla Esc (desaparecerá -- INSERT --- desde el final de
la pantalla), escriba :wq (para escribir y, a continuación, salir del archivo) y, a continuación, pulse
Enter.
7. Cargue el SDK de .NET Core mediante el aprovisionamiento del archivo .bashrc.

. ~/.bashrc

8. Confirme que el SDK de .NET Core está cargado mediante la ejecución de la CLI de .NET Core con la
opción --help .
452
AWS Cloud9 Guía del usuario
Paso 2 (opcional): Instalar la extensión de la
CLI de .NET para las funciones de Lambda

dotnet --help

Si se ejecuta correctamente, se muestra el número de versión del SDK de .NET Core, con información
de uso adicional.
9. Si ya no desea mantener el script de instalación del SDK de .NET Core en su entorno, puede
eliminarlo del siguiente modo.

rm dotnet-install.sh

Paso 2 (opcional): Instalar la extensión de la CLI


de .NET para las funciones de Lambda
Aunque no es necesario para este tutorial, puede implementar funciones de AWS Lambda y aplicaciones
de AWS Serverless Application Model mediante la CLI de dotnet si también instala el paquete
Amazon.Lambda.Tools.

1. Para instalar este paquete, ejecute el comando siguiente:

dotnet tool install -g Amazon.Lambda.Tools

2. Ahora configure la propiedad PATH y la variable de entorno DOTNET_ROOT para que apunten a la
herramienta Lambda instalada. En el archivo .bashrc, busque la sección export PATH y edítela
para que se parezca a la siguiente (consulte el Paso 1 para obtener más detalles sobre la edición de
este archivo):

export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet:$HOME/.dotnet/tools
export DOTNET_ROOT=$HOME/.dotnet

Paso 3: Crear un proyecto de aplicación de consola


de .NET Core
En este paso, se utiliza .NET Core para crear un proyecto denominado hello. Este proyecto contiene
todos los archivos que necesita .NET Core para ejecutar una aplicación simple desde el terminal en el IDE.
El código de la aplicación está escrito en C#.

Cree un proyecto de aplicación de consola de .NET Core. Para ello, ejecute la CLI de .NET Core con el
comando new , especificando el tipo de plantilla de proyecto de aplicación de consola y el lenguaje de
programación que se utilizará (en esta muestra, C#).

La opción -n indica que el proyecto se emite en un nuevo directorio, hello. A continuación, vaya a ese
directorio.

dotnet new console -lang C# -n hello


cd hello

El comando anterior añade un subdirectorio llamado obj con varios archivos, y algunos archivos
independientes adicionales, al directorio hello. Debe tener en cuenta los dos archivos clave siguientes:

• El archivo hello/hello.csproj contiene información sobre el proyecto de aplicación de consola.

453
AWS Cloud9 Guía del usuario
Paso 4: Agregar el código

• El archivo hello/Program.cs contiene el código de la aplicación que se ejecutará.

Paso 4: Agregar el código


En este paso, añadirá código a la aplicación.

En la ventana Environment (Entorno) en el IDE de AWS Cloud9, abra el archivo hello/Program.cs.

En el editor, reemplace el contenido actual del archivo por el siguiente código y, a continuación, guarde el
archivo Program.cs.

using System;

namespace hello
{
class Program
{
static void Main(string[] args)
{
if (args.Length < 2) {
Console.WriteLine("Please provide 2 numbers");
return;
}

Console.WriteLine("Hello, World!");

Console.WriteLine("The sum of 2 and 3 is 5.");

int sum = Int32.Parse(args[0]) + Int32.Parse(args[1]);

Console.WriteLine("The sum of {0} and {1} is {2}.",


args[0], args[1], sum);

}
}
}

Paso 5: Compilar y ejecutar el código


En este paso, compilará el proyecto y sus dependencias en un conjunto de archivos binarios, incluido un
archivo de aplicación ejecutable. A continuación, ejecutará la aplicación.

1. En el IDE, cree un constructor para .NET Core de la siguiente manera.

a. En la barra de menús, seleccione Run, Build System, New Build System (Ejecutar, Sistema de
compilación, Nuevo sistema de compilación).
b. En la pestaña My Builder.build (Mi Builder.build), reemplace el contenido de la pestaña por el
código siguiente.

{
"cmd" : ["dotnet", "build"],
"info" : "Building..."
}

c. Elija File, Save As (Archivo, Guardar como).


d. En Filename (Nombre de archivo), escriba .NET Core.build.
e. En Folder (Carpeta), escriba /.c9/builders.

454
AWS Cloud9 Guía del usuario
Paso 5: Compilar y ejecutar el código

f. Seleccione Save.
2. Con el contenido del archivo Program.cs mostrado en el editor, seleccione Run, Build System, .NET
Core (Ejecutar, Sistema de compilación, .NET Core). A continuación, elija Run, Build (Ejecutar,
Compilar).

Este constructor añade los subdirectorios bin y Debug al subdirectorio hello/obj. Tenga en cuenta
los siguientes tres archivos clave.

• El archivo hello/bin/Debug/netcoreapp3.1/hello.dll es el archivo de aplicación


ejecutable.
• El archivo hello/bin/Debug/netcoreapp3.1/hello.deps.json enumera las dependencias
de la aplicación.
• El archivo hello/bin/Debug/netcoreapp3.1/hello.runtimeconfig.json especifica el
tiempo de ejecución compartido y su versión para la aplicación.

Note

El nombre de la carpeta, netcoreapp3.1, refleja la versión del SDK de .NET Core. Es


posible que vea un número diferente en el nombre de la carpeta dependiendo de la versión
que haya instalado.
3. Cree un ejecutor para .NET Core de la siguiente manera.

a. En la barra de menús, seleccione Run, Run With, New Runner (Ejecutar, Ejecutar con, Nuevo
ejecutor).
b. En la pestaña My Runner.run (Mi Runner.run), reemplace el contenido de la pestaña por el código
siguiente.

{
"cmd" : ["dotnet", "run", "$args"],
"working_dir": "$file",
"info" : "Running..."
}

c. Elija File, Save As (Archivo, Guardar como).


d. En Filename (Nombre de archivo), escriba .NET Core.run.
e. En Folder (Carpeta), escriba /.c9/runners.
f. Seleccione Save.
4. Ejecute la aplicación con dos números enteros que se añadirán (por ejemplo, 5 y 9) de la siguiente
manera.

a. Con el contenido del archivo Program.cs mostrado en el editor, seleccione Run, Run
Configurations, New Run Configuration (Ejecutar, Configuraciones de ejecución, Nueva
configuración de ejecución).
b. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija .NET Core.
c. En el cuadro Command (Comando), escriba hello 5 9.
d. Elija Run (Ejecutar).

De forma predeterminada, este ejecutor indica a .NET Core que ejecute el archivo hello.dll en
el directorio hello/bin/Debug/netcoreapp3.1.

Compare la salida con la siguiente.

Hello, World!
455
AWS Cloud9 Guía del usuario
Paso 6: Crear y configurar un proyecto de aplicación
de consola de .NET Core que use AWS SDK for .NET

The sum of 2 and 3 is 5.


The sum of 5 and 9 is 14.

Paso 6: Crear y configurar un proyecto de aplicación


de consola de .NET Core que use AWS SDK for .NET
Puede mejorar esta muestra para utilizar el AWS SDK for .NET y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este nuevo proyecto, añada una referencia al AWS SDK for .NET. AWS SDK for .NET proporciona un
método práctico para interactuar con servicios de AWS, como Amazon S3, desde su código de .NET. A
continuación, configure la administración de credenciales de AWS en su entorno. El AWS SDK for .NET
necesita estas credenciales para interactuar con los servicios de AWS.

Para crear el proyecto


1. Cree un proyecto de aplicación de consola de .NET Core. Para ello, ejecute la CLI de .NET Core con
el comando new , especificando el tipo de plantilla de proyecto de aplicación de consola y el lenguaje
de programación que se utilizará.

La opción -n indica que el proyecto se emite en un nuevo directorio, s3. A continuación, vaya a ese
directorio.

dotnet new console -lang C# -n s3


cd s3

2. Agregue una referencia de proyecto al paquete de Amazon S3 en AWS SDK for .NET. Para ello,
ejecute la CLI de .NET Core con el comando add package y especifique el nombre del paquete de
Amazon S3 en NuGet. (NuGet define cómo se crean, alojan y consumen los paquetes para .NET, y
proporciona las herramientas para cada uno de esos roles).

dotnet add package AWSSDK.S3

Al agregar una referencia de proyecto al paquete de Amazon S3, NuGet también agrega una
referencia de proyecto al resto del AWS SDK for .NET.
Note

En el caso de nombres y versiones de otros paquetes relacionados con AWS en NuGet,


consulte Paquetes de NuGet etiquetados con aws-sdk en el sitio web NuGet.

Para configurar la administración de credenciales de AWS


Cada vez que utilice el AWS SDK for .NET para llamar a un servicio de AWS, debe proporcionar un
conjunto de credenciales de AWS con la llamada. Estas credenciales determinan si el AWS SDK for .NET
tiene los permisos adecuados para realizar esa llamada. Si las credenciales no cubren los permisos
adecuados, la llamada no se realizará correctamente.

Para almacenar sus credenciales en el entorno, siga las instrucciones de Llamar a los servicios de AWS
desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este tema.

Para obtener información adicional, consulte Configuración de credenciales de AWS en la Guía para
desarrolladores de AWS SDK for .NET.

456
AWS Cloud9 Guía del usuario
Paso 7: Agregar el código de AWS SDK

Paso 7: Agregar el código de AWS SDK


En este paso, agregará código para interactuar con Amazon S3 y crear un bucket, eliminará el bucket que
acaba de crear y, a continuación, enumerará los buckets disponibles.

En la ventana Environment (Entorno) en el IDE de AWS Cloud9, abra el archivo s3/Program.cs. En


el editor, reemplace el contenido actual del archivo por el siguiente código y, a continuación, guarde el
archivo Program.cs.

using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using Amazon.S3.Util;
using System;
using System.Threading.Tasks;

namespace s3
{
class Program
{
async static Task Main(string[] args)
{
if (args.Length < 2) {
Console.WriteLine("Usage: <the bucket name> <the AWS Region to use>");
Console.WriteLine("Example: my-test-bucket us-east-2");
return;
}

if (args[1] != "us-east-2") {
Console.WriteLine("Cannot continue. The only supported AWS Region ID is " +
"'us-east-2'.");
return;
}

var bucketRegion = RegionEndpoint.USEast2;


// Note: You could add more valid AWS Regions above as needed.

using (var s3Client = new AmazonS3Client(bucketRegion)) {


var bucketName = args[0];

// Create the bucket.


try
{
if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName))
{
Console.WriteLine("Cannot continue. Cannot create bucket. \n" +
"A bucket named '{0}' already exists.", bucketName);
return;
} else {
Console.WriteLine("\nCreating the bucket named '{0}'...", bucketName);
await s3Client.PutBucketAsync(bucketName);
}
}
catch (AmazonS3Exception e)
{
Console.WriteLine("Cannot continue. {0}", e.Message);
}
catch (Exception e)
{
Console.WriteLine("Cannot continue. {0}", e.Message);
}

// Confirm that the bucket was created.


if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName))

457
AWS Cloud9 Guía del usuario
Paso 8: Compilar y ejecutar el código de AWS SDK

{
Console.WriteLine("Created the bucket named '{0}'.", bucketName);
} else {
Console.WriteLine("Did not create the bucket named '{0}'.", bucketName);
}

// Delete the bucket.


Console.WriteLine("\nDeleting the bucket named '{0}'...", bucketName);
await s3Client.DeleteBucketAsync(bucketName);

// Confirm that the bucket was deleted.


if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName))
{
Console.WriteLine("Did not delete the bucket named '{0}'.", bucketName);
} else {
Console.WriteLine("Deleted the bucket named '{0}'.", bucketName);
};

// List current buckets.


Console.WriteLine("\nMy buckets now are:");
var response = await s3Client.ListBucketsAsync();

foreach (var bucket in response.Buckets)


{
Console.WriteLine(bucket.BucketName);
}
}
}
}
}

Paso 8: Compilar y ejecutar el código de AWS SDK


En este paso, compilará el proyecto y sus dependencias en un conjunto de archivos binarios, incluido un
archivo de aplicación ejecutable. A continuación, ejecutará la aplicación.

1. Compile el proyecto. Para ello, con el contenido del archivo s3/Program.cs mostrado en el editor,
en la barra de menú, elija Run, Build (Ejecutar, Compilar).
2. Ejecute la aplicación con el nombre del bucket de Amazon S3 que desea crear y el ID de la región de
my-test-bucket en la que desea crearlo (por ejemplo, AWS y us-east-2) de la siguiente manera.

a. Con el contenido del archivo s3/Program.cs aún mostrado en el editor, seleccione Run,
Run Configurations, New Run Configuration (Ejecutar, Configuraciones de ejecución, Nueva
configuración de ejecución).
b. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija .NET Core.
c. En el cuadro Command (Comando), escriba el nombre de la aplicación, el nombre del bucket de
Amazon S3 que desea crear y el ID de la región de AWS donde desea crearlo (por ejemplo, s3
my-test-bucket us-east-2).
d. Elija Run (Ejecutar).

De forma predeterminada, este ejecutor indica a .NET Core que ejecute el archivo s3.dll en el
directorio s3/bin/Debug/netcoreapp3.1.

Compare sus resultados con la siguiente salida.

Creating a new bucket named 'my-test-bucket'...


Created the bucket named 'my-test-bucket'.

Deleting the bucket named 'my-test-bucket'...

458
AWS Cloud9 Guía del usuario
Paso 9: limpieza

Deleted the bucket named 'my-test-bucket'.

My buckets now are:

Paso 9: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Muestra de Node.js para AWS Cloud9


Esta muestra permite ejecutar algunos scripts de Node.js en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 459)
• Paso 1: Instalar las herramientas necesarias (p. 459)
• Paso 2: Agregar el código (p. 460)
• Paso 3: Ejecutar el código (p. 460)
• Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js (p. 461)
• Paso 5: Agregar el código de AWS SDK (p. 462)
• Paso 6: Ejecutar el código de AWS SDK (p. 465)
• Paso 7: limpieza (p. 466)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso instalará Node.js, necesario para ejecutar esta muestra.

1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Node.js, ya se ha instalado. Para
ello, ejecute el comando node --version . (Para iniciar una nueva sesión del terminal, en la barra
de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, el resultado
contendrá el número de versión de Node.js. Si Node.js está instalado, continúe en Paso 2: Agregar el
código (p. 460).

459
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

3. Para instalar Node.js, comience por ejecutar este comando para descargar Node Version Manager
(nvm). (nvm es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de
Node.js. Para obtener más información, consulte Node Version Manager en el sitio web de GitHub).

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

4. Para comenzar a utilizar nvm, cierre la sesión del terminal e iníciela de nuevo, o cargue el archivo
~/.bashrc que contiene los comandos para cargar nvm.

. ~/.bashrc

5. Ejecute este comando para instalar la versión más reciente de Node.js.

nvm install node

Paso 2: Agregar el código


En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre hello.js. (Para
crear un archivo, en la barra de menús, elija File [Archivo], New File [Archivo nuevo]. Para guardar el
archivo, elija File [Archivo], Save [Guardar]).

console.log('Hello, World!');

console.log('The sum of 2 and 3 is 5.');

var sum = parseInt(process.argv[2], 10) + parseInt(process.argv[3], 10);

console.log('The sum of ' + process.argv[2] + ' and ' +


process.argv[3] + ' is ' + sum + '.');

Paso 3: Ejecutar el código


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
3. En Command (Comando), escriba hello.js 5 9. En el código, 5 representa process.argv[2] y
9 representa process.argv[3]. (process.argv[0] representa el nombre del tiempo de ejecución
(node) y process.argv[1] representa el nombre del archivo (hello.js)).
4. Elija el botón Run (Ejecutar) y compare los resultados.

Hello, World!

460
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar AWS
SDK for JavaScript in Node.js

The sum of 2 and 3 is 5.


The sum of 5 and 9 is 14.

Paso 4: Instalar y configurar AWS SDK for JavaScript


in Node.js
Al ejecutar scripts de Node.js en AWS Cloud9, puede elegir entre AWS SDK for JavaScript versión 3
(V3) y la versión 2 (V2) anterior de AWS SDK for JavaScript. Al igual que con V2, V3 le permite trabajar
fácilmente con Amazon Web Services, pero se ha escrito en TypeScript y agrega varias características
solicitadas con frecuencia, como paquetes modularizados.

AWS SDK for JavaScript (V3)

Puede mejorar esta muestra para utilizar AWS SDK for JavaScript in Node.js y crear un bucket de
Amazon S3, mostrar una lista de los buckets disponibles y, a continuación, eliminar el bucket que
acaba de crear.

En este paso, instalará y configurará el módulo de cliente de servicio de Amazon S3 de AWS SDK for
JavaScript in Node.js, que proporciona una forma cómoda de interactuar con el servicio de AWS de
Amazon S3, desde su código de JavaScript.

Si desea usar otros servicios de AWS, tiene que instalarlos por separado. Para obtener más
información acerca de la instalación de módulos de AWS, consulte en la Guía para desarrolladores de
AWS(V3).

Una vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de
credenciales en su entorno. AWS SDK for JavaScript in Node.js necesita estas credenciales para
interactuar con los servicios de AWS.

Para instalar AWS SDK for JavaScript in Node.js

Use npm para ejecutar el comando install.

npm install @aws-sdk/client-s3

Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.

461
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

Para configurar la administración de credenciales en su entorno

Cada vez que utilice AWS SDK for JavaScript in Node.js para llamar a un servicio de AWS, debe
proporcionar un conjunto de credenciales con la llamada. Estas credenciales determinan si AWS SDK
for JavaScript in Node.js tiene los permisos adecuados para realizar esa llamada. Si las credenciales
no cubren los permisos adecuados, la llamada no se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a
este tema.

Para obtener información adicional, consulte Configuración de credenciales en Node.js en la Guía


para desarrolladores de AWS SDK for JavaScript.
AWS SDK for JavaScript (V2)

Puede mejorar esta muestra para utilizar AWS SDK for JavaScript in Node.js y crear un bucket de
Amazon S3, mostrar una lista de los buckets disponibles y, a continuación, eliminar el bucket que
acaba de crear.

En este paso va a instalar y configurar AWS SDK for JavaScript in Node.js, que ofrece un método
práctico para interactuar con servicios de AWS, como Amazon S3, desde el código de JavaScript. Una
vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de credenciales
en su entorno. AWS SDK for JavaScript in Node.js necesita estas credenciales para interactuar con
los servicios de AWS.

Para instalar AWS SDK for JavaScript in Node.js

Use npm para ejecutar el comando install.

npm install aws-sdk

Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.

Para configurar la administración de credenciales en su entorno

Cada vez que utilice AWS SDK for JavaScript in Node.js para llamar a un servicio de AWS, debe
proporcionar un conjunto de credenciales con la llamada. Estas credenciales determinan si AWS SDK
for JavaScript in Node.js tiene los permisos adecuados para realizar esa llamada. Si las credenciales
no cubren los permisos adecuados, la llamada no se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a
este tema.

Para obtener información adicional, consulte Configuración de credenciales en Node.js en la Guía


para desarrolladores de AWS SDK for JavaScript.

Paso 5: Agregar el código de AWS SDK


AWS SDK for JavaScript (V3)

En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un
bucket, ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear.
Ejecutará este código más adelante.

462
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.js.

if (process.argv.length < 4) {
console.log(
"Usage: node s3.js <the bucket name> <the AWS Region to use>\n" +
"Example: node s3.js my-test-bucket us-east-2"
);
process.exit(1);
}
import {
ListBucketsCommand,
CreateBucketCommand,
DeleteBucketCommand}
from "@aws-sdk/client-s3";
import {s3Client} from "./libs/s3Client" // Helper function that creates an Amazon S3
service client module.

const async = require("async"); // To call AWS operations asynchronously.

const bucket_name = process.argv[2];


const region = process.argv[3];

const create_bucket_params = {
Bucket: bucket_name,
CreateBucketConfiguration: {
LocationConstraint: region,
},
};

export const delete_bucket_params = { Bucket: bucket_name };

// List all of your available buckets in this AWS Region.

export const run = async () => {


try {
const data = await s3Client.send(new ListBucketsCommand({}));
return data; // For unit tests.
console.log("My buckets now are:\n");

for (var i = 0; i < data.Buckets.length; i++) {


console.log(data.Buckets[i].Name);
}
} catch (err) {
console.log("Error", err);
}
try {
console.log("\nCreating a bucket named " + bucket_name + "...\n");
const data = await s3Client.send(new CreateBucketCommand(create_bucket_params));
return data; // For unit tests.
console.log("My buckets now are:\n");

for (var i = 0; i < data.Buckets.length; i++) {


console.log(data.Buckets[i].Name);
}
} catch (err) {
console.log(err.code + ": " + err.message);
}
try {
console.log("\nDeleting the bucket named " + bucket_name + "...\n");
const data = await s3Client.send(new DeleteBucketCommand(delete_bucket_params));
return data; // For unit tests.
} catch (err) {
console.log(err.code + ": " + err.message);
}

463
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

};
run();

AWS SDK for JavaScript (V2)

En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un
bucket, ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear.
Ejecutará este código más adelante.

En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.js.

if (process.argv.length < 4) {
console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' +
'Example: node s3.js my-test-bucket us-east-2');
process.exit(1);
}

var AWS = require('aws-sdk'); // To set the AWS credentials and region.


var async = require('async'); // To call AWS operations asynchronously.

AWS.config.update({
region: region
});

var s3 = new AWS.S3({apiVersion: '2006-03-01'});


var bucket_name = process.argv[2];
var region = process.argv[3];

var create_bucket_params = {
Bucket: bucket_name,
CreateBucketConfiguration: {
LocationConstraint: region
}
};

var delete_bucket_params = {Bucket: bucket_name};

// List all of your available buckets in this AWS Region.


function listMyBuckets(callback) {
s3.listBuckets(function(err, data) {
if (err) {

} else {
console.log("My buckets now are:\n");

for (var i = 0; i < data.Buckets.length; i++) {


console.log(data.Buckets[i].Name);
}
}

callback(err);
});
}

// Create a bucket in this AWS Region.


function createMyBucket(callback) {
console.log('\nCreating a bucket named ' + bucket_name + '...\n');

s3.createBucket(create_bucket_params, function(err, data) {


if (err) {
console.log(err.code + ": " + err.message);
}

464
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

callback(err);
});
}

// Delete the bucket you just created.


function deleteMyBucket(callback) {
console.log('\nDeleting the bucket named ' + bucket_name + '...\n');

s3.deleteBucket(delete_bucket_params, function(err, data) {


if (err) {
console.log(err.code + ": " + err.message);
}

callback(err);
});
}

// Call the AWS operations in the following order.


async.series([
listMyBuckets,
createMyBucket,
listMyBuckets,
deleteMyBucket,
listMyBuckets
]);

Paso 6: Ejecutar el código de AWS SDK


1. Habilite el código para llamar a las operaciones de Amazon S3 de forma asincrónica mediante la
utilización de npm para ejecutar el comando install .

npm install async

2. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
3. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
4. En Command (Comando), escriba s3.js my-test-bucket us-east-2, donde my-test-bucket
es el nombre del bucket que quiere crear y después eliminar y us-east-2 es el ID de la región de
AWS en la que desea crear el bucket. Para obtener más ID, consulte Amazon Simple Storage Service
(Amazon S3) en la Referencia general de Amazon Web Services.
Note

Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
5. Elija el botón Run (Ejecutar) y compare los resultados.

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

465
AWS Cloud9 Guía del usuario
Paso 7: limpieza

My buckets now are:

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Muestra de PHP para AWS Cloud9


Esta muestra le permite ejecutar scripts de PHP en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 466)
• Paso 1: Instalar las herramientas necesarias (p. 466)
• Paso 2: Agregar el código (p. 467)
• Paso 3: Ejecutar el código (p. 468)
• Paso 4: Instalar y configurar el AWS SDK for PHP (p. 468)
• Paso 5: Agregar el código de AWS SDK (p. 469)
• Paso 6: Ejecutar el código de AWS SDK (p. 471)
• Paso 7: limpieza (p. 471)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso, instalará PHP, que es necesario para ejecutar este ejemplo.
Note

El siguiente procedimiento instala solo PHP. Para instalar herramientas relacionadas como, por
ejemplo, un servidor web Apache y una base de datos MySQL, consulte el Tutorial: Instalar un

466
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

servidor web LAMP en Amazon Linux en la Guía del usuario de Amazon EC2 para instancias de
Linux.

1. En una sesión del terminal en el IDE de AWS Cloud9, confirme si PHP ya se ha instalado. Para
ello, ejecute el comando php --version . (Para iniciar una nueva sesión del terminal, en la barra
de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, el resultado
contendrá el número de versión de PHP. Si PHP está instalado, continúe en Paso 2: Agregar el
código (p. 467).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux 2 y Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

3. Instale PHP ejecutando el comando install .

En Amazon Linux 2:

sudo amazon-linux-extras install -y php7.2

Para Amazon Linux:

sudo yum -y install php72

Note
Puede ver la versión de Amazon Linux usando el comando siguiente:

cat /etc/system-release

Para Ubuntu Server:

sudo apt install -y php php-xml

Para obtener más información, consulte Installation and Configuration en el sitio web de PHP.

Paso 2: Agregar el código


En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre hello.php.
(Para crear un archivo, en la barra de menús, elija File [Archivo], New File [Archivo nuevo]. Para guardar
el archivo, elijaFile [Archivo], Save [Guardar], escriba hello.php para Filename [Nombre de archivo] y, a
continuación, elija Save [Guardar]).

<?php
print('Hello, World!');

print("\nThe sum of 2 and 3 is 5.");

$sum = (int)$argv[1] + (int)$argv[2];

467
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código

print("\nThe sum of $argv[1] and $argv[2] is $sum.");


?>

Note

El código anterior no depende de archivos externos. Sin embargo, si alguna vez incluye o necesita
otros archivos PHP en su archivo y quiere que AWS Cloud9 utilice esos archivos para finalizar
el código mientras escribe, active la configuración Project, PHP Support, Enable PHP code
completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) en Preferences
(Preferencias) y, a continuación, agregue las rutas de esos archivos a la configuración Project,
PHP Support, PHP Completion Include Paths (Proyecto, Soporte de PHP, Rutas de inclusión para
finalización de PHP). (Para ver y cambiar las preferencias, elija AWS Cloud9, Preferences [AWS
Cloud9, Preferencias] en la barra de menús).

Paso 3: Ejecutar el código


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija PHP (cli).
3. En Command (Comando), escriba hello.php 5 9. En el código, 5 representa $argv[1] y 9
representa $argv[2]. ($argv[0] representa el nombre del archivo (hello.php).)
4. Elija el botón Run (Ejecutar) y compare los resultados.

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

Paso 4: Instalar y configurar el AWS SDK for PHP


Puede mejorar esta muestra para utilizar el AWS SDK for PHP y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este paso, se instala y configura el AWS SDK for PHP, que proporciona un método práctico para
interactuar con los servicios de AWS, como Amazon S3, desde el código de PHP. Para poder instalar el
AWS SDK for PHP, debe instalar Composer. Una vez instalado el AWS SDK for PHP, debe configurar

468
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

la administración de credenciales en su entorno. El AWS SDK for PHP necesita estas credenciales para
interactuar con los servicios de AWS.

Para instalar Composer


Ejecute el comando curl con las opciones de silenciar (-s) y mostrar errores (-S), canalizando el
instalador de Composer a un archivo PHP (PHAR), cuyo nombre es composer.phar por convención.

curl -sS https://getcomposer.org/installer | php

Para instalar AWS SDK for PHP


Para Ubuntu Server, instale los paquetes adicionales que Composer necesita para instalar el AWS SDK for
PHP.

sudo apt install -y php-xml php-curl

Para Amazon Linux o Ubuntu Server, use el comando php para ejecutar el instalador de Composer para
instalar el AWS SDK for PHP.

php composer.phar require aws/aws-sdk-php

Este comando crea varias carpetas y archivos en su entorno. El archivo principal que se va a utilizar es
autoload.php, que está en la carpeta vendor de su entorno.
Note
Después de la instalación, Composer podría sugerir que se instalen dependencias adicionales.
Puede hacerlo con un comando como los siguientes, especificando la lista de dependencias que
desea instalar. Por ejemplo, el siguiente comando indica a Composer que instale la siguiente lista
de dependencias.

php composer.phar require psr/log ext-curl doctrine/cache aws/aws-php-sns-message-


validator

Para obtener más información, consulte Instalación en la Guía para desarrolladores de AWS SDK for PHP.

Para configurar la administración de credenciales en su entorno


Cada vez que utilice el AWS SDK for PHP para llamar a un servicio de AWS, debe proporcionar un
conjunto de credenciales con la llamada. Estas credenciales determinan si el AWS SDK for PHP tiene los
permisos adecuados para realizar esa llamada. Si las credenciales no cubren los permisos adecuados, la
llamada no se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.

Para obtener información adicional, consulte la sección sobre creación de un cliente de Uso básico en la
Guía para desarrolladores de AWS SDK for PHP.

Paso 5: Agregar el código de AWS SDK


En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un bucket,
ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear. Ejecutará este
código más adelante.

469
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.php.

<?php
require './vendor/autoload.php';

if ($argc < 4) {
exit("Usage: php s3.php <the time zone> <the bucket name> <the AWS Region to use>\n" .
"Example: php s3.php America/Los_Angeles my-test-bucket us-east-2");
}

$timeZone = $argv[1];
$bucketName = $argv[2];
$region = $argv[3];

date_default_timezone_set($timeZone);

$s3 = new Aws\S3\S3Client([


'region' => $region,
'version' => '2006-03-01'
]);

# Lists all of your available buckets in this AWS Region.


function listMyBuckets($s3) {
print("\nMy buckets now are:\n");

$promise = $s3->listBucketsAsync();

$result = $promise->wait();

foreach ($result['Buckets'] as $bucket) {


print("\n");
print($bucket['Name']);
}
}

listMyBuckets($s3);

# Create a new bucket.


print("\n\nCreating a new bucket named '$bucketName'...\n");

try {
$promise = $s3->createBucketAsync([
'Bucket' => $bucketName,
'CreateBucketConfiguration' => [
'LocationConstraint' => $region
]
]);

$promise->wait();

} catch (Exception $e) {


if ($e->getCode() == 'BucketAlreadyExists') {
exit("\nCannot create the bucket. " .
"A bucket with the name '$bucketName' already exists. Exiting.");
}
}

listMyBuckets($s3);

# Delete the bucket you just created.


print("\n\nDeleting the bucket named '$bucketName'...\n");

$promise = $s3->deleteBucketAsync([
'Bucket' => $bucketName
]);

470
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

$promise->wait();

listMyBuckets($s3);

?>

Paso 6: Ejecutar el código de AWS SDK


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija PHP (cli).
3. En Command (Comando), escriba s3.php America/Los_Angeles my-test-bucket us-
east-2, donde:

• America/Los_Angeles es el ID de zona horaria predeterminado. Para varios ID, consulte la lista


de zonas horarias admitidas en el sitio web de PHP.
• my-test-bucket es el nombre del bucket que desea crear y, a continuación, eliminar.
Note

Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
• us-east-2 es el ID de la región de AWS en la que desea crear el bucket. Para obtener más ID,
consulte Amazon Simple Storage Service (Amazon S3) en la Referencia general de Amazon Web
Services.
4. Elija el botón Run (Ejecutar) y compare los resultados.

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

My buckets now are:

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Tutorial: Ruby en AWS Cloud9


En este tutorial se muestra cómo ejecutar scripts de Ruby en un entorno de desarrollo de AWS Cloud9.

471
AWS Cloud9 Guía del usuario
Requisitos previos

Note

El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre estos se incluyen
posibles cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información,
consulte Precios de Amazon EC2 y Precios de Amazon S3.

Requisitos previos
Antes de utilizar este ejemplo, asegúrese de que cumple los siguientes requisitos.

• Tiene un entorno de desarrollo de EC2 de AWS Cloud9

En este tutorial se da por hecho que tiene un entorno de EC2 que está conectado a una instancia de
Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server. Para obtener más información, consulte
Creación de un entorno de EC2 (p. 54).

Si tiene un tipo de entorno o sistema operativo distinto, es posible que tenga que adaptar las
instrucciones de este tutorial.
• Ha abierto el IDE de AWS Cloud9 para ese entorno

Al abrir un entorno, AWS Cloud9 abre el IDE de ese entorno en el navegador web. Para obtener más
información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).

Pasos
• Paso 1: Instalar las herramientas necesarias (p. 472)
• Paso 2: Agregar el código (p. 473)
• Paso 3: Ejecutar el código (p. 473)
• Paso 4: Instalar y configurar el AWS SDK for Ruby (p. 474)
• Paso 5: Agregar el código de AWS SDK (p. 476)
• Paso 6: Ejecutar el código de AWS SDK (p. 477)
• Paso 7: limpieza (p. 477)

Paso 1: Instalar las herramientas necesarias


(Primer paso del Tutorial: Ruby en AWS Cloud9 (p. 471))

En este paso instalará Ruby, que es necesario para ejecutar este tutorial.

1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Ruby ya está instalado mediante
la ejecución del comando ruby --version . (Para iniciar una nueva sesión del terminal, en la
barra de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, la salida
contendrá el número de versión de Ruby. Si Ruby está instalado, continúe en Paso 2: Agregar el
código (p. 473).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

472
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

sudo apt update

3. Instale Ruby ejecutando el comando install .

Para Amazon Linux:

sudo yum -y install ruby

Para Ubuntu Server:

sudo apt install -y ruby

Para obtener más información sobre el cifrado, consulte Installing Ruby en el sitio web de Ruby.

Paso siguiente
Paso 2: Agregar el código (p. 473)

Paso 2: Agregar el código


(Paso anterior: Paso 1: Instalar las herramientas necesarias (p. 472))

1. En el IDE de AWS Cloud9, cree un archivo nuevo (File [Archivo], New File [Archivo nuevo] en la barra
de menús).
2. Añada el código siguiente.

puts "Hello, World!"

puts "The sum of 2 and 3 is 5."

argv0 = ARGV[0]
argv1 = ARGV[1]
sum = argv0.to_i + argv1.to_i

puts "The sum of #{argv0} and #{argv1} is #{sum}."

3. Guarde el archivo con el nombre hello.rb (File (Archivo), Save (Guardar)).

Paso siguiente
Paso 3: Ejecutar el código (p. 473)

Paso 3: Ejecutar el código


(Paso anterior: Paso 2: Agregar el código (p. 473))

1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle ([Nuevo] - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Ruby (elemento 1 en la captura de pantalla que se muestra a continuación).
3. En Command (Comando) (elemento 2 en la captura de pantalla), escriba hello.rb 5 9. Dado este
comando, ARGV[0] en el código recibe un valor de 5 y ARGV[1] recibe un valor de 9.

473
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Ruby

4. Elija el botón Run (Ejecutar) (elemento 3 a continuación) y compare la salida con la siguiente.

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

Paso siguiente
Paso 4: Instalar y configurar el AWS SDK for Ruby (p. 474)

Paso 4: Instalar y configurar el AWS SDK for Ruby


(Paso anterior: Paso 3: Ejecutar el código (p. 473))
Note

Si no desea realizar estos procedimientos mejorados, asegúrese de realizar al menos Paso 7:


limpieza (p. 477).

Puede mejorar este tutorial para utilizar el AWS SDK for Ruby y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este paso, se instala y se configura el AWS SDK for Ruby, que proporciona un método práctico para
interactuar con los servicios de AWS, como Amazon S3, desde el código de Ruby.

• Para poder instalar el AWS SDK for Ruby, debe instalar RubyGems.
• Una vez instalado el AWS SDK for Ruby, debe configurar la administración de credenciales en su
entorno. El AWS SDK for Ruby necesita estas credenciales para interactuar con los servicios de AWS.

4.1: Instalar RubyGems


1. En una sesión del terminal del IDE de AWS Cloud9, confirme si RubyGems ya está instalado mediante
la ejecución del comando gem --version . Si es así, la salida contendrá el número de versión de
RubyGems. De lo contrario, se muestra un mensaje de error.

474
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Ruby

Si RubyGems está instalado, continúe en 4.2: Instalar AWS SDK for Ruby (p. 475).
2. Para instalar RubyGems, ejecute el comando install como se indica a continuación.

Para Amazon Linux:

sudo yum -y install gem

Para Ubuntu Server:

sudo apt install -y gem

Para obtener más información, consulte Download RubyGems (Descargar RubyGems) en el sitio web
de RubyGems.

4.2: Instalar AWS SDK for Ruby


Después de instalar RubyGems, ejecute el comando install de RubyGems en una sesión de terminal
como se indica a continuación.
Note

La instalación del paquete aws-sdk completo puede ejecutarse varios minutos antes de que
comience a mostrar el progreso en la ventana del terminal.

gem install aws-sdk

Note

Si no utiliza una instancia de EC2 administrada por AWS Cloud9 (es decir, un entorno de EC2),
en función de los permisos y la configuración del usuario de la instancia, es posible que tenga que
utilizar sudo para instalar el SDK, tal y como se muestra en el siguiente comando.

sudo gem install aws-sdk

En este caso, utilice prácticas estándar basadas en Unix.

Para obtener más información, consulte Instalación de AWS SDK for Ruby en la Guía para desarrolladores
de AWS SDK for Ruby.

4.3: Configurar la administración de credenciales en su entorno


Cada vez que utilice el AWS SDK for Ruby para llamar a un servicio de AWS, debe proporcionar un
conjunto de credenciales con la llamada. Estas credenciales determinan si el AWS SDK for Ruby tiene los
permisos adecuados para realizar esa llamada. Si las credenciales no cubren los permisos adecuados, la
llamada no se realizará correctamente.

Si está siguiendo este tutorial estrictamente, habrá permitido a AWS Cloud9 crear y administrar su
instancia de EC2. Si este es el caso, AWS Cloud9 también administra las credenciales temporales
automáticamente, por lo que puede omitir este paso.

De lo contrario, tendrá que almacenar sus credenciales en el entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.

475
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

Para obtener información adicional, consulte Configuración de AWS SDK for Ruby en la Guía para
desarrolladores de AWS SDK for Ruby.

Paso siguiente
Paso 5: Agregar el código de AWS SDK (p. 476)

Paso 5: Agregar el código de AWS SDK


(Paso anterior: Paso 4: Instalar y configurar el AWS SDK for Ruby (p. 474))

En este paso, se facilita el código para interactuar con Amazon S3. Este código crea un bucket, enumera
los buckets disponibles y, a continuación, elimina el bucket que se creó. (Ejecutará este código en el
siguiente paso).

En el IDE de AWS Cloud9, cree un archivo con el siguiente código y guárdelo con el nombre s3.rb.

require "aws-sdk"
# Replace us-west-2 with the AWS Region you're using for Amazon S3.
if ARGV.length < 2
puts "Usage: ruby s3.rb <the bucket name> <the AWS Region to use>\n" +
"Example: ruby s3.rb my-test-bucket us-west-2"
end

bucket_name = ARGV[0]
region = ARGV[1]
s3 = Aws::S3::Client.new(region: region)

# Lists all of your available buckets in this AWS Region.


def list_my_buckets(s3)
resp = s3.list_buckets
puts "My buckets now are:\n\n"

resp.buckets.each do |bucket|
puts bucket.name
end

end

list_my_buckets(s3)

# Create a new bucket.


begin
puts "\nCreating a new bucket named '#{bucket_name}'...\n\n"
s3.create_bucket({
bucket: bucket_name,
create_bucket_configuration: {
location_constraint: region
}
})

s3.wait_until(:bucket_exists, {bucket: bucket_name, })


rescue Aws::S3::Errors::BucketAlreadyExists
puts "Cannot create the bucket. " +
"A bucket with the name '#{bucket_name}' already exists. Exiting."
exit(false)
end

list_my_buckets(s3)

# Delete the bucket you just created.


puts "\nDeleting the bucket named '#{bucket_name}'...\n\n"

476
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

s3.delete_bucket(bucket: bucket_name)

s3.wait_until(:bucket_not_exists, {bucket: bucket_name, })

list_my_buckets(s3)

Paso siguiente
Paso 6: Ejecutar el código de AWS SDK (p. 477)

Paso 6: Ejecutar el código de AWS SDK


(Paso anterior: Paso 5: Agregar el código de AWS SDK (p. 476))

1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Ruby.
3. En Command (Comando), escriba s3.rb YOUR_BUCKET_NAME THE_AWS_REGION, donde:

• YOUR_BUCKET_NAME es el nombre del bucket que desea crear y, a continuación, eliminar.

Los nombres de bucket de Amazon S3 deben ser únicos globalmente en AWS, no solo en su cuenta
de AWS.
• THE_AWS_REGION es el ID de la región de AWS en la que desea crear el bucket.

Por ejemplo, para la región EE.UU. Este (Ohio), utilice us-east-2. Para obtener más ID, consulte
Amazon Simple Storage Service (Amazon S3) en la Referencia general de Amazon Web Services.
4. Seleccione el botón Run (Ejecutar). El resultado debería ser similar al siguiente.

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

My buckets now are:

Paso siguiente
Paso 7: limpieza (p. 477)

Paso 7: limpieza
(Paso anterior: Paso 6: Ejecutar el código de AWS SDK (p. 477))

Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar este
tutorial, elimine el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

(Volver a Tutorial: Ruby (p. 471))

477
AWS Cloud9 Guía del usuario
Ejemplo de Go

Ejemplo de Go para AWS Cloud9


Esta muestra le permite ejecutar código de Go en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 478)
• Paso 1: Instalar las herramientas necesarias (p. 478)
• Paso 2: Agregar el código (p. 479)
• Paso 3: Ejecutar el código (p. 480)
• Paso 4: Instalar y configurar el AWS SDK for Go (p. 481)
• Paso 5: Agregar el código de AWS SDK (p. 482)
• Paso 6: Ejecutar el código de AWS SDK (p. 483)
• Paso 7: limpieza (p. 484)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

Paso 1: Instalar las herramientas necesarias


En este paso, va a instalar y configurar Go, necesario para ejecutar este ejemplo.

1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Go ya está instalado. Para ello,
ejecute el comando go version . (Para iniciar una nueva sesión del terminal, en la barra de
menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si se ejecuta correctamente,
el resultado debería contener el número de versión de Go. De lo contrario, se debería obtener
un mensaje de error como resultado. Si Go está instalado, continúe en Paso 2: Agregar el
código (p. 479).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

478
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

sudo apt update

3. Para instalar Go, ejecute estos comandos de uno en uno.

wget https://storage.googleapis.com/golang/go1.9.3.linux-amd64.tar.gz # Download the Go


installer.
sudo tar -C /usr/local -xzf ./go1.9.3.linux-amd64.tar.gz # Install Go.
rm ./go1.9.3.linux-amd64.tar.gz # Delete the
installer.

Los comandos anteriores suponen que se emplea la última versión estable de Go en el momento
en que este tema se escribió. Para obtener más información, consulte Downloads en el sitio web del
lenguaje de programación Go.
4. Agregue la ruta de los binarios de Go a la variable de entorno PATH, como se muestra a continuación.

a. Abra el archivo de perfil de shell (por ejemplo, ~/.bashrc) para editarlo.


b. Al final de esta línea de código, escriba lo siguiente, de forma que el código ahora pasará a tener
este aspecto.

PATH=$PATH:/usr/local/go/bin

c. Guarde el archivo.
5. Dé el origen del archivo ~/.bashrc para que el terminal pueda encontrar el binario de Go al que
acaba de hacer referencia.

. ~/.bashrc

6. Confirme que Go ya está instalado y configurado correctamente ejecutando el comando go version


. Si es así, el resultado contendrá el número de versión de Go.

Paso 2: Agregar el código


En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre hello.go. (Para
crear un archivo, en la barra de menús, elija File [Archivo], New File [Archivo nuevo]. Para guardar el
archivo, elija File [Archivo], Save [Guardar]).

package main

import (
"fmt"
"os"
"strconv"
)

func main() {
fmt.Printf("Hello, World!\n")

fmt.Printf("The sum of 2 and 3 is 5.\n")

first, _ := strconv.Atoi(os.Args[1])
second, _ := strconv.Atoi(os.Args[2])
sum := first + second

fmt.Printf("The sum of %s and %s is %s.",


os.Args[1], os.Args[2], strconv.Itoa(sum))
}

479
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código

Paso 3: Ejecutar el código


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Go.
Note

Si Go no está disponible, puede crear un ejecutor personalizado para Go.

1. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija New Runner (Ejecutor nuevo).
2. En la pestaña My Runner.run (Mi Runner.run), sustituya el contenido de la pestaña por
este código.

{
"cmd" : ["go", "run", "$file", "$args"],
"info" : "Running $project_path$file_name...",
"selector" : "source.go"
}

3. Elija File (Archivo), Save As (Guardar como) en la barra de menús y guarde el archivo
como Go.run en la carpeta /.c9/runners.
4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Go.
5. Elija la pestaña hello.go para hacerla activa.
3. En Command (Comando), escriba hello.go 5 9. En el código, 5 representa os.Args[1] y 9
representa os.Args[2].

4. Elija el botón Run (Ejecutar) y compare los resultados.

480
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Go

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

Paso 4: Instalar y configurar el AWS SDK for Go


Puede mejorar esta muestra para utilizar el AWS SDK for Go y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este paso, se instala y configura el AWS SDK for Go, que proporciona un práctico método para
interactuar con los servicios de AWS, como Amazon S3, desde el código de Go. Antes de instalar el
AWS SDK for Go, debe configurar la variable de entorno GOPATH. Una vez instalado el AWS SDK for
Go y establecida la variable de entorno GOPATH, debe configurar la administración de credenciales en el
entorno. El AWS SDK for Go necesita estas credenciales para interactuar con los servicios de AWS.

Para establecer la variable de entorno GOPATH


1. Abra el archivo ~/.bashrc para editarlo.
2. Después de la última línea, escriba este código.

GOPATH=~/environment/go

export GOPATH

3. Guarde el archivo.
4. Dé el origen del archivo ~/.bashrc para que el terminal pueda encontrar la variable de entorno
GOPATH a la que acaba de hacer referencia.

. ~/.bashrc

5. Confirme que la variable de entorno GOPATH está establecida correctamente ejecutando el comando
echo $GOPATH . Si es correcto, el resultado debe ser /home/ec2-user/environment/go o /
home/ubuntu/environment/go.

Para instalar AWS SDK for Go


Ejecute el comando go get especificando la ubicación del código fuente del AWS SDK for Go.

go get -u github.com/aws/aws-sdk-go/...

Go instala la fuente de AWS SDK for Go en la ubicación especificada en la variable de entorno GOPATH,
que es la carpeta go de su entorno.

Para configurar la administración de credenciales en su entorno


Cada vez que utilice el AWS SDK for Go para llamar a un servicio de AWS, debe proporcionar un conjunto
de credenciales con la llamada. Estas credenciales determinan si el AWS SDK for Go tiene los permisos
adecuados para realizar esa llamada. Si las credenciales no cubren los permisos adecuados, la llamada no
se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.

481
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

Para obtener información adicional, consulte Especificación de credenciales en la Guía para


desarrolladores de AWS SDK for Go.

Paso 5: Agregar el código de AWS SDK


En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un bucket,
ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear. Ejecutará este
código más adelante.

En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.go.

package main

import (
"fmt"
"os"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
)

func main() {

if len(os.Args) < 3 {
fmt.Printf("Usage: go run s3.go <the bucket name> <the AWS Region to use>\n" +
"Example: go run s3.go my-test-bucket us-east-2\n")
os.Exit(1)
}

sess := session.Must(session.NewSessionWithOptions(session.Options{
SharedConfigState: session.SharedConfigEnable,
}))
svc := s3.New(sess, &aws.Config{
Region: aws.String(os.Args[2]),
})

listMyBuckets(svc)
createMyBucket(svc, os.Args[1], os.Args[2])
listMyBuckets(svc)
deleteMyBucket(svc, os.Args[1])
listMyBuckets(svc)
}

// List all of your available buckets in this AWS Region.


func listMyBuckets(svc *s3.S3) {
result, err := svc.ListBuckets(nil)

if err != nil {
exitErrorf("Unable to list buckets, %v", err)
}

fmt.Println("My buckets now are:\n")

for _, b := range result.Buckets {


fmt.Printf(aws.StringValue(b.Name) + "\n")
}

fmt.Printf("\n")
}

// Create a bucket in this AWS Region.


func createMyBucket(svc *s3.S3, bucketName string, region string) {
fmt.Printf("\nCreating a new bucket named '" + bucketName + "'...\n\n")

482
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

_, err := svc.CreateBucket(&s3.CreateBucketInput{
Bucket: aws.String(bucketName),
CreateBucketConfiguration: &s3.CreateBucketConfiguration{
LocationConstraint: aws.String(region),
},
})

if err != nil {
exitErrorf("Unable to create bucket, %v", err)
}

// Wait until bucket is created before finishing


fmt.Printf("Waiting for bucket %q to be created...\n", bucketName)

err = svc.WaitUntilBucketExists(&s3.HeadBucketInput{
Bucket: aws.String(bucketName),
})
}

// Delete the bucket you just created.


func deleteMyBucket(svc *s3.S3, bucketName string) {
fmt.Printf("\nDeleting the bucket named '" + bucketName + "'...\n\n")

_, err := svc.DeleteBucket(&s3.DeleteBucketInput{
Bucket: aws.String(bucketName),
})

if err != nil {
exitErrorf("Unable to delete bucket, %v", err)
}

// Wait until bucket is deleted before finishing


fmt.Printf("Waiting for bucket %q to be deleted...\n", bucketName)

err = svc.WaitUntilBucketNotExists(&s3.HeadBucketInput{
Bucket: aws.String(bucketName),
})
}

// If there's an error, display it.


func exitErrorf(msg string, args ...interface{}) {
fmt.Fprintf(os.Stderr, msg+"\n", args...)
os.Exit(1)
}

Paso 6: Ejecutar el código de AWS SDK


1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Go.
3. En Command (Comando), escriba s3.go YOUR_BUCKET_NAME THE_AWS_REGION ,
donde YOUR_BUCKET_NAME es el nombre del bucket que quiere crear y después eliminar y
THE_AWS_REGION es el ID de la región de AWS en la que desea crear el bucket. Por ejemplo, para
la región EE.UU. Este (Ohio), utilice us-east-2. Para obtener más ID, consulte Amazon Simple
Storage Service (Amazon S3) en la Referencia general de Amazon Web Services.
Note

Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.

483
AWS Cloud9 Guía del usuario
Paso 7: limpieza

4. Elija el botón Run (Ejecutar) y compare los resultados.

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

My buckets now are:

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Muestra de TypeScript para AWS Cloud9


En esta muestra se indica cómo trabajar con TypeScript en un entorno de desarrollo de AWS Cloud9.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.

Temas
• Requisitos previos (p. 484)
• Paso 1: Instalar las herramientas necesarias (p. 485)
• Paso 2: Agregar el código (p. 486)
• Paso 3: Ejecutar el código (p. 486)
• Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js (p. 487)
• Paso 5: Agregar el código de AWS SDK (p. 488)
• Paso 6: Ejecutar el código de AWS SDK (p. 489)
• Paso 7: limpieza (p. 490)

Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:

• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).

484
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias

Paso 1: Instalar las herramientas necesarias


En este paso, instale TypeScript mediante Node Version Manager ( npm ). Para instalar npm, use Node
Version Manager (nvm). Si no tiene nvm, instálelo primero en este paso.

1. En una sesión del terminal en el IDE de AWS Cloud9, confirme que TypeScript ya esté instalado.
Para ello, ejecute el compilador TypeScript de la línea de comandos con la opción --version .
(Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window [Ventana],
New Terminal [Nuevo terminal]). Si es así, la salida contendrá el número de versión de TypeScript. Si
TypeScript está instalado, continúe en Paso 2: Agregar el código (p. 486).

tsc --version

2. Confirme si npm ya está instalado mediante la ejecución de npm con la opción --version. Si es así,
el resultado contendrá el número de versión de npm. Si npm está instalado, vaya al paso 10 de este
procedimiento para utilizar npm para instalar TypeScript.

npm --version

3. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.

Para Amazon Linux:

sudo yum -y update

Para Ubuntu Server:

sudo apt update

4. Para instalar npm, comience por ejecutar el siguiente comando para descargar Node Version Manager
(nvm). (nvm es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de
Node.js. Para obtener más información, consulte Node Version Manager en el sitio web de GitHub).

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

5. Para comenzar a utilizar nvm, cierre la sesión del terminal e iníciela de nuevo, o cargue el archivo
~/.bashrc que contiene los comandos para cargar nvm.

. ~/.bashrc

6. Confirme que nvm está instalado mediante la ejecución de nvm con la opción --version.

nvm --version

7. Instale la versión más reciente de Node.js ejecutando nvm. (npm se incluye en Node.js).

nvm install node

8. Confirme que Node.js está instalado ejecutando la versión de la línea de comandos de Node.js con la
opción --version.

node --version

9. Confirme que npm está instalado mediante la ejecución de npm con la opción --version.

485
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código

npm --version

10. Instale TypeScript ejecutando npm con la opción -g. De este modo se instala TypeScript como un
paquete global en el entorno.

npm install -g typescript

11. Confirme que TypeScript está instalado ejecutando el compilador de TypeScript de la línea de
comandos con la opción --version.

tsc --version

Paso 2: Agregar el código


1. En el IDE de AWS Cloud9, cree un archivo llamado hello.ts. (Para crear un archivo, en la barra de
menús, elija File [Archivo], New File [Archivo nuevo]. Para guardar el archivo, elija File [Archivo], Save
[Guardar]).
2. En un terminal del IDE, desde el mismo directorio que el archivo hello.ts, ejecute npm para
instalar la biblioteca @types/node.

npm install @types/node

De este modo se añade una carpeta node_modules/@types/node en el mismo directorio


que el archivo hello.ts. Esta nueva carpeta contiene las definiciones de tipo de Node.js que
TypeScript necesitará más adelante en este procedimiento para las propiedades console.log y
process.argv que añadirá al archivo hello.ts.
3. Añada el siguiente código al archivo hello.ts:

console.log('Hello, World!');

console.log('The sum of 2 and 3 is 5.');

const sum: number = parseInt(process.argv[2], 10) + parseInt(process.argv[3], 10);

console.log('The sum of ' + process.argv[2] + ' and ' +


process.argv[3] + ' is ' + sum + '.');

Paso 3: Ejecutar el código


1. En el terminal, desde el mismo directorio que el archivo hello.ts, ejecute el compilador TypeScript.
Especifique el archivo hello.ts y las bibliotecas adicionales que se incluirán.

tsc hello.ts --lib es6

TypeScript utiliza el archivo hello.ts y un conjunto de archivos de biblioteca ECMAScript 6 (ES6)


para transponer el código TypeScript del archivo hello.ts a código JavaScript equivalente en un
archivo llamado hello.js.
2. En la ventana Environment (Entorno), abra el archivo hello.js.
3. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).

486
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar AWS
SDK for JavaScript in Node.js

4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
5. En Command (Comando), escriba hello.js 5 9. En el código, 5 representa process.argv[2] y
9 representa process.argv[3]. (process.argv[0] representa el nombre del tiempo de ejecución
(node) y process.argv[1] representa el nombre del archivo (hello.js)).
6. Elija Run (Ejecutar) y compare los resultados. Cuando haya terminado, elija Stop (Detener).

Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.

Note

En lugar de crear una nueva configuración de ejecución en el IDE, también puede ejecutar este
código si ejecuta el comando node hello.js 5 9 desde el terminal.

Paso 4: Instalar y configurar AWS SDK for JavaScript


in Node.js
Puede mejorar esta muestra para utilizar AWS SDK for JavaScript in Node.js y crear un bucket de Amazon
S3, mostrar una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.

En este paso, va a instalar y configurar AWS SDK for JavaScript in Node.js El SDK proporciona un método
práctico para interactuar con servicios de AWS, como Amazon S3, desde su código de JavaScript. Una
vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de credenciales en su
entorno. El SDK necesita estas credenciales para interactuar con los servicios de AWS.

Para instalar AWS SDK for JavaScript in Node.js


En una sesión del terminal en el IDE de AWS Cloud9, en el mismo directorio que el archivo hello.js de
Paso 3: Ejecutar el código (p. 486), ejecute npm para instalar el SDK de AWS para JavaScript in Node.js.

npm install aws-sdk

Este comando agrega varias carpetas a la carpeta node_modules del Paso 3: Ejecutar el
código (p. 486). Estas carpetas contienen código fuente y dependencias para AWS SDK for JavaScript

487
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK

in Node.js. Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.

Para configurar la administración de credenciales en su entorno


Cada vez que utilice AWS SDK for JavaScript in Node.js para llamar a un servicio de AWS, debe
proporcionar un conjunto de credenciales con la llamada. Estas credenciales determinan si AWS SDK
for JavaScript in Node.js tiene los permisos adecuados para realizar esa llamada. Si las credenciales no
cubren los permisos adecuados, la llamada no se realizará correctamente.

En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.

Para obtener información adicional, consulte Configuración de credenciales en Node.js en la Guía para
desarrolladores de AWS SDK for JavaScript.

Paso 5: Agregar el código de AWS SDK


En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un bucket,
ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear. Ejecutará este
código más adelante.

1. En el IDE de AWS Cloud9, en el mismo directorio que el archivo hello.js de los pasos anteriores,
cree un archivo denominado s3.ts.
2. Desde un terminal del IDE de AWS Cloud9, en el mismo directorio que el archivo s3.ts, habilite el
código para llamar a operaciones de Amazon S3 de forma asincrónica ejecutando dos veces npm
para instalar la biblioteca asíncrona para TypeScript y de nuevo para JavaScript.

npm install @types/async # For TypeScript.


npm install async # For JavaScript.

3. Añada el siguiente código al archivo s3.ts:

import * as async from 'async';


import * as AWS from 'aws-sdk';

if (process.argv.length < 4) {
console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' +
'Example: node s3.js my-test-bucket us-east-2');
process.exit(1);
}

const AWS = require('aws-sdk'); // To set the AWS credentials and AWS Region.
const async = require('async'); // To call AWS operations asynchronously.

const s3: AWS.S3 = new AWS.S3({apiVersion: '2006-03-01'});


const bucket_name: string = process.argv[2];
const region: string = process.argv[3];

AWS.config.update({
region: region
});

const create_bucket_params: any = {


Bucket: bucket_name,
CreateBucketConfiguration: {
LocationConstraint: region
}
};

488
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK

const delete_bucket_params: any = {


Bucket: bucket_name
};

// List all of your available buckets in this AWS Region.


function listMyBuckets(callback): void {
s3.listBuckets(function(err, data) {
if (err) {

} else {
console.log("My buckets now are:\n");

for (let i: number = 0; i < data.Buckets.length; i++) {


console.log(data.Buckets[i].Name);
}
}

callback(err);
});
}

// Create a bucket in this AWS Region.


function createMyBucket(callback): void {
console.log("\nCreating a bucket named '" + bucket_name + "'...\n");

s3.createBucket(create_bucket_params, function(err, data) {


if (err) {
console.log(err.code + ": " + err.message);
}

callback(err);
});
}

// Delete the bucket you just created.


function deleteMyBucket(callback): void {
console.log("\nDeleting the bucket named '" + bucket_name + "'...\n");

s3.deleteBucket(delete_bucket_params, function(err, data) {


if (err) {
console.log(err.code + ": " + err.message);
}

callback(err);
});
}

// Call the AWS operations in the following order.


async.series([
listMyBuckets,
createMyBucket,
listMyBuckets,
deleteMyBucket,
listMyBuckets
]);

Paso 6: Ejecutar el código de AWS SDK


1. En el terminal, desde el mismo directorio que el archivo s3.ts, ejecute el compilador TypeScript.
Especifique el archivo s3.ts y las bibliotecas adicionales que se incluirán.

489
AWS Cloud9 Guía del usuario
Paso 7: limpieza

tsc s3.ts --lib es6

TypeScript utiliza el archivo s3.ts, AWS SDK for JavaScript in Node.js, la biblioteca asíncrona y un
conjunto de archivos de biblioteca ECMAScript 6 (ES6) para transponer el código de TypeScript del
archivo s3.ts a código de JavaScript equivalente en un archivo llamado s3.js.
2. En la ventana Environment (Entorno), abra el archivo s3.js.
3. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
5. En Command (Comando), escriba s3.js YOUR_BUCKET_NAME THE_AWS_REGION ,
donde YOUR_BUCKET_NAME el nombre del bucket que quiere crear y después eliminar y
THE_AWS_REGION es el ID de la región de AWS en la que se creará el bucket. Por ejemplo, para la
región EE.UU. Este (Ohio), utilice us-east-2. Para obtener más ID, consulte Amazon Simple Storage
Service (Amazon S3) en la Referencia general de Amazon Web Services.
Note

Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
6. Elija Run (Ejecutar) y compare los resultados. Cuando haya terminado, elija Stop (Detener).

My buckets now are:

Creating a new bucket named 'my-test-bucket'...

My buckets now are:

my-test-bucket

Deleting the bucket named 'my-test-bucket'...

My buckets now are:

Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).

Ejemplo de Docker para AWS Cloud9


En esta muestra se explica cómo conectar un entorno de desarrollo de SSH de AWS Cloud9 a un
contenedor de Docker en ejecución en una instancia de Amazon Linux en Amazon EC2. Esto le permite
usar el IDE de AWS Cloud9 para trabajar con código y archivos en un contenedor de Docker y para
ejecutar comandos en dicho contenedor. Para obtener información acerca de Docker, consulte Qué es
Docker en el sitio web de Docker.

La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre ellos, se incluyen posibles
cargos por servicios como Amazon EC2. Para obtener más información, consulte Precios de Amazon EC2.

Temas

490
AWS Cloud9 Guía del usuario
Requisitos previos

• Requisitos previos (p. 491)


• Paso 1: instalar y ejecutar Docker (p. 491)
• Paso 2: Crear la imagen (p. 492)
• Paso 3: Ejecutar el contenedor (p. 494)
• Paso 4: Crear el entorno (p. 495)
• Paso 5: Ejecutar el código (p. 496)
• Paso 6: Limpieza (p. 497)

Requisitos previos
• Debe tener una instancia de Amazon EC2 que ejecute Amazon Linux o Ubuntu Server. Esta muestra
supone que ya tiene una instancia de Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server en su
cuenta de AWS. Para lanzar una instancia de Amazon EC2, consulte Lanzar una máquina virtual Linux.
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 de AWS Cloud9 (p. 500).
• 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
Modificación de un volumen en la Guía del usuario de Amazon EC2 para instancias de Linux.

Paso 1: instalar y ejecutar Docker


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.
2. 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.
3. Instalar 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

491
AWS Cloud9 Guía del usuario
Paso 2: Crear la imagen

4. 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.
5. Ejecute Docker. Para ello, ejecute el comando service con el servicio docker y la acción start.

sudo service docker start

6. 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


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

2. 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

492
AWS Cloud9 Guía del usuario
Paso 2: Crear la imagen

# 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.

a. Utilice vi para abrir el archivo /tmp/Dockerfile.

sudo vi /tmp/Dockerfile

b. Pegue el contenido anterior en el archivo Dockerfile. Si no sabe cómo hacerlo, consulte la


documentación de su cliente SSH.
c. Cambie al modo de comando. Para ello, pulse la tecla Esc. (-- INSERT -- desaparece de la
parte inferior de la ventana).
d. Escriba :wq (para escribir en el archivo /tmp/Dockerfile, guárdelo y, a continuación, salga de
vi ) y, a continuación, pulse Enter.

Note

Desde AWS CodeBuild, puede acceder a una lista de imágenes de Docker que se actualiza
con frecuencia. Para obtener más información, consulte Imágenes de Docker proporcionadas
por CodeBuild en la Guía del usuario de AWS CodeBuild.
3. En la instancia, cree un archivo que contenga la clave pública SSH de AWS Cloud9 para que la utilice
el contenedor 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

4. Añada la clave pública SSH de AWS Cloud9 al archivo authorized_keys. Para obtener la clave
pública SSH de AWS Cloud9 haga lo siguiente:

a. Abra la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.


b. En la barra de navegación de AWS, en el selector de región de AWS, elija la región de AWS en la
que desee crear el entorno de desarrollo de AWS Cloud9 más adelante en este tema.
c. Si aparece una página de bienvenida, en New AWS Cloud9 environment (Nuevo entorno de AWS
Cloud9), elija Create environment (Crear entorno). De lo contrario, elija Create environment (Crear
entorno).
d. 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).
e. Elija Next Step (Paso siguiente).
f. En Environment type (Tipo de entorno), elija Connect and run in remote server (SSH) (Conectar y
ejecutar en un servidor remoto (SSH)).
g. Expanda View public SSH key (Ver clave SSH pública).
h. 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).)
i. Elija Cancel.
493
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el contenedor

j. 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.
5. 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.
6. Anote la dirección IP pública de la instancia de Amazon EC2. Lo necesitará para el Paso 4: Crear el
entorno (p. 495). 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


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.

494
AWS Cloud9 Guía del usuario
Paso 4: Crear el entorno

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.
2. 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.
Note

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.
3. Para el directorio del contenedor en ejecución en el que desee que AWS Cloud9 se inicie después
de iniciar sesión, establezca sus permisos de acceso a rwxr-xr-x . Eso significa que el propietario
debe tener permisos de lectura, escritura y ejecución, el grupo debe tener permisos de lectura y
ejecución y el resto deben tener permisos de lectura y ejecución. 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 ~

4. 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 (p. 495). 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


En este paso, utilice AWS Cloud9 para crear un entorno de desarrollo de SSH de AWS Cloud9 y conéctelo
al contenedor de Docker en ejecución. Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS
Cloud9 para que pueda comenzar a trabajar con los archivos y el código en el contenedor.

1. Inicie sesión en la consola de AWS Cloud9 como sigue:

• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
2. En la barra de navegación de AWS, en el selector de región de AWS, elija la región de AWS donde
desea crear el entorno de SSH.

495
AWS Cloud9 Guía del usuario
Paso 5: Ejecutar el código

3. Si aparece una página de bienvenida, en New AWS Cloud9 environment (Nuevo entorno de AWS
Cloud9), elija Create environment (Crear entorno). De lo contrario, elija Create environment (Crear
entorno).
4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
5. Para agregar una descripción para el entorno, escríbala en Description (Descripción).
6. Elija Next Step (Paso siguiente).
7. En Environment type: (Tipo de entorno), elija Connect and run in remote server (SSH) (Conectar y
ejecutar en un servidor remoto (SSH)).
8. En User (Usuario), escriba ubuntu.
9. En Host (Anfitrión), escriba la dirección IP pública de la instancia de Amazon EC2 que anotó
anteriormente.
10. En Puerto, escriba 9090.
11. Amplíe Advanced settings (Configuración avanzada).
12. En Environment path (Ruta de entorno), escriba la ruta del directorio en el contenedor en ejecución
que desee que se inicie AWS Cloud9 después de iniciar sesión.
13. En Node.js binary path (Ruta del binario de Node.js), escriba la ruta al directorio en el contenedor en
ejecución que contiene el binario de Node.js, que anotó anteriormente.
14. Elija Next Step (Paso siguiente).
15. Seleccione Create environment (Crear entorno).
16. Cuando aparezca el cuadro de diálogo AWS Cloud9 Installer (Instalador de AWS Cloud9), elija Next
(Siguiente).
17. En la lista de componentes que se instalarán, desactive la casilla c9.ide.lambda.docker y, a
continuación, seleccione Next (Siguiente). Esto se debe a que AWS Cloud9 no puede ejecutar Docker
dentro de Docker.
18. Cuando el cuadro de diálogo AWS Cloud9 Installer (Instalador de AWS Cloud9) muestre Installation
Completed (Instalación completada), elija Next (Siguiente) y, a continuación, Finish (Finalizar).
Aparece el IDE de AWS Cloud9 para el contenedor en ejecución y puede comenzar a trabajar con los
archivos y el código del contenedor.

Note

Si el contenedor deja de funcionar, ya no podrá usar el IDE para obtener acceso al


contenedor hasta que comience a ejecutarse de nuevo. Para ello, vaya a Paso 3: Ejecutar el
contenedor (p. 494).

Paso 5: Ejecutar el código


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

1. Con el IDE de AWS Cloud9 mostrado para el contenedor en ejecución, inicie el servidor de
conversación 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).
2. 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).
3. 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.

496
AWS Cloud9 Guía del usuario
Paso 6: Limpieza

Paso 6: Limpieza
En este paso, eliminará el entorno y los archivos de soporte de AWS Cloud9 y Docker de la instancia
de Amazon EC2. Además, para evitar que se apliquen cargos continuos en su cuenta de AWS una vez
terminada esta muestra, debe terminar la instancia de Amazon EC2 que ejecuta Docker.

Paso 6.1: Eliminar el entorno


Para eliminar el entorno, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).

Paso 6.2: Eliminar los archivos de soporte de AWS Cloud9 del


contenedor
Después de eliminar el entorno, algunos archivos de soporte de AWS Cloud9 aún permanecen en el
contenedor. Si desea seguir usando el contenedor pero ya no necesita estos archivos de soporte, elimine
la carpeta .c9 del directorio en el contenedor que especificó que AWS Cloud9 se iniciara desde después
de que inicie 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
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

2. 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

3. 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

4. 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:

497
AWS Cloud9 Guía del usuario
Ejemplos relacionados

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


Para terminar la instancia de Amazon EC2, consulte Terminar una instancia en la Guía del usuario de
Amazon EC2 para instancias de Linux.

Ejemplos relacionados
• Introducción a AWS RoboMaker en la Guía para desarrolladores de AWS RoboMaker. Este ejemplo
utiliza AWS Cloud9 para modificar, crear y agrupar una aplicación de robot de muestra.

498
AWS Cloud9 Guía del usuario
Entornos de EC2 comparados con entornos de SSH

Temas avanzados para AWS Cloud9


Estos temas contienen la información siguiente:

• Información que se utiliza para la configuración avanzada y la toma de decisiones.


• Información relacionada con una tarea determinada y que puede proporcionarle un mejor conocimiento
de AWS Cloud9, pero no es fundamental para realizar dicha tarea.

Temas
• Entornos de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499)
• Configuración de VPC para entornos de desarrollo de AWS Cloud9 (p. 500)
• Requisitos de anfitrión del entorno SSH (p. 515)
• Uso del instalador de AWS Cloud9 (p. 518)
• Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520)
• Contenido de Amazon Machine Image (AMI) para un entorno de desarrollo de EC2 de AWS
Cloud9 (p. 522)
• Uso de roles vinculados a servicios de AWS Cloud9 (p. 524)
• Registro de llamadas a la API de AWS Cloud9 con AWS CloudTrail (p. 528)
• Etiquetas (p. 540)

Entornos de EC2 comparados con entornos de


SSH en AWS Cloud9
Tal y como se ha explicado en la introducción de entornos y recursos informáticos (p. 2) y en el tema sobre
el trabajo con entornos (p. 53), los entornos de AWS Cloud9 se pueden configurar como entornos de EC2
o entornos de SSH.

En la siguiente tabla se destacan las similitudes y diferencias entre el uso de entornos de EC2 y entornos
de SSH en AWS Cloud9.

Entornos de EC2 Entornos de SSH

AWS Cloud9 crea una instancia de Amazon Puede utilizar una instancia de informática
EC2 asociada y administra el ciclo de vida de la en la nube existente o su propio servidor. Es
instancia (incluidas las operaciones de comenzar, responsable de administrar su ciclo de vida.
parar y terminar).

La instancia se ejecuta en Amazon Linux o Ubuntu Puede utilizar cualquier instancia de informática en
Server. la nube que ejecute Linux, o su propio servidor con
Linux.

AWS Cloud9 configura automáticamente la Debe configurar manualmente la instancia o su


instancia para empezar a trabajar con AWS propio servidor para trabajar con AWS Cloud9.
Cloud9.

AWS Cloud9 configura automáticamente AWS Si desea utilizar AWS CLI en la instancia o en un
Command Line Interface (AWS CLI) en la servidor propio, debe configurarlo por su cuenta.
instancia.

499
AWS Cloud9 Guía del usuario
Configuración de Amazon VPC

Entornos de EC2 Entornos de SSH

La instancia tiene acceso a cientos de paquetes Es posible que tenga que descargar, instalar y
útiles, con algunos paquetes comunes ya configurar paquetes adicionales para completar
instalados y configurados, por ejemplo, Git, tareas comunes.
Docker, Node.js y Python.

Para mantener la instancia, se aplican las Se mantiene la instancia o su propio servidor.


actualizaciones del sistema periódicamente.

Al eliminar el entorno, AWS Cloud9 termina Al eliminar el entorno, la instancia o su propio


automáticamente la instancia asociada. servidor se mantienen.

Las credenciales temporales administradas de Las credenciales temporales administradas de


AWS (p. 570) están disponibles en entornos AWS (p. 570) no están disponibles en entornos
de EC2, lo que le permite activar o desactivar de SSH. Debe utilizar AWS Identity and Access
fácilmente todas las acciones de AWS para todos Management (p. 546) para administrar los
los recursos de AWS en la cuenta de AWS de la permisos que le permiten trabajar con AWS Cloud9
persona que llama (con algunas restricciones). y otros servicios y recursos de AWS.
No es necesario configurar perfiles de instancias
para la instancia de Amazon EC2 de su entorno
ni almacenar credenciales de acceso de AWS
permanentes de una entidad de AWS (por ejemplo,
un usuario de IAM).

AWS Toolkit (p. 338), el panel de Git (p. 315) y AWS Toolkit, el panel de Git y la asistencia
la asistencia mejorada para Java (p. 138) están mejorada para Java no están disponibles.
disponibles para su uso.

Configuración de VPC para entornos de desarrollo


de AWS Cloud9
Cada entorno de desarrollo de AWS Cloud9 asociado a una instancia de Amazon Virtual Private Cloud
(Amazon VPC) debe cumplir con los requisitos específicos de VPC. Estos entornos incluyen entornos de
EC2, así como entornos de SSH asociados con instancias de informática en la nube de AWS (por ejemplo,
instancias de Amazon EC2 y Amazon Lightsail) que se ejecutan en VPC.

Temas
• Requisitos de Amazon VPC para AWS Cloud9 (p. 500)
• Cree una instancia de Amazon VPC para AWS Cloud9 (p. 511)
• Crear una subred para AWS Cloud9 (p. 513)
• Configuración de una subred como pública o privada (p. 514)

Requisitos de Amazon VPC para AWS Cloud9


La instancia de Amazon VPC que AWS Cloud9 utiliza requiere las siguientes opciones de configuración. Si
ya conoce estos requisitos y solo desea crear una instancia de VPC compatible, vaya directamente a Cree
una instancia de Amazon VPC para AWS Cloud9 (p. 511).

Utilice la siguiente lista de comprobación para confirmar que la VPC cumple todos de los siguientes
requisitos.

500
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

Criterios Cómo confirmar Recursos adicionales

La VPC puede estar en la misma Ver una lista de VPC de una • Cree una instancia de
cuenta de AWS y la misma región de AWS (p. 502) Amazon VPC para AWS
región de AWS que el entorno de Cloud9 (p. 511)
desarrollo de AWS Cloud9. • Trabajar con VPC compartidas
en la Guía del usuario de
-O BIEN- Amazon VPC
La VPC puede ser una VPC
compartida en una cuenta de
AWS diferente a la del entorno.
(Sin embargo, la VPC debe
encontrarse en la misma región
de AWS que el entorno).

La VPC debe tener una única • Ver una lista de subredes de • Crear una subred para AWS
subred pública. (Una subred una VPC (p. 503) Cloud9 (p. 513)
es pública cuando su tráfico se • Confirmar si una subred es • Configuración de una
dirige a una gateway de Internet.) pública (p. 503) subred como pública o
privada (p. 514)
Si su entorno está accediendo a
su instancia EC2 directamente a • Ver o cambiar la configuración
través de SSH, la instancia solo de una gateway de
se puede iniciar en una subred internet (p. 504)
pública. • Cree un gateway de
Internet (p. 504)
Si va a acceder a una
Instancia de Amazon EC2
sin entrada (p. 68) mediante
Systems Manager, la instancia
se puede iniciar en una subred
pública o privada.

Si utiliza una subred pública,


adjunte una gateway de internet
a la VPC para que el SSM Agent
de la instancia pueda conectarse
a Systems Manager.

Si utiliza una subred privada,


permita que la instancia de
la subred se comunique con
internet mediante el alojamiento
de una gateway NAT en una
subred pública.

La subred pública debe tener • Confirmar si una subred • Crear una tabla de
una tabla de enrutamiento con un tiene una tabla de enrutamiento (p. 505)
conjunto mínimo de rutas. enrutamiento (p. 505) • Adjuntar una tabla de
• Ver o cambiar la enrutamiento a una
configuración de una tabla de subred (p. 505)
enrutamiento (p. 506)
• Configuración mínima sugerida
de la tabla de enrutamiento
para AWS Cloud9 (p. 506)

501
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

Criterios Cómo confirmar Recursos adicionales

Los grupos de seguridad • Ver una lista de los grupos • Crear un grupo de seguridad
asociados de la VPC (o de la de seguridad de una en una VPC (p. 510)
instancia de informática en la VPC (p. 506)
nube de AWS, dependiendo de • Ver una lista de los grupos de
su arquitectura) deben permitir seguridad de una instancia
un conjunto mínimo de tráfico de informática en la nube de
entrante y saliente. AWS (p. 507)
• Ver o cambiar la configuración
de un grupo de seguridad en
una VPC (p. 507)
• Ver una lista de los grupos de
seguridad de una instancia
de informática en la nube de
AWS (p. 507)
• Configuración mínima del
tráfico entrante y saliente para
AWS Cloud9 (p. 508)

Para una capa adicional de • Confirmar si una VPC Crear una ACL de red (p. 511)
seguridad, si la VPC tiene una tiene al menos una ACL de
ACL de red, esta debe permitir red (p. 510)
un conjunto mínimo de tráfico • Ver una lista de las ACL de red
entrante y saliente. para una VPC (p. 510)
• Ver o cambiar la configuración
de una ACL de red (p. 511)
• Configuración mínima del
tráfico entrante y saliente para
AWS Cloud9 (p. 508)

Note

Para los siguientes procedimientos, si utiliza las consolas de Amazon VPC o Amazon EC2,
le recomendamos que inicie sesión en la AWS Management Console y abra la consola de
Amazon VPC (https://console.aws.amazon.com/vpc) o la consola de Amazon EC2 (https://
console.aws.amazon.com/ec2) con las credenciales de un usuario administrador de IAM en su
cuenta de AWS.
Si utiliza AWS CLI o aws-shell, le recomendamos que configure AWS CLI o aws-shell con las
credenciales de un usuario administrador de IAM en su cuenta de AWS. Si no puede hacerlo,
consulte con el administrador de su cuenta de AWS.

Ver una lista de VPC de una región de AWS


Para usar la consola de Amazon VPC, en la barra de navegación de AWS, elija la región de AWS en la que
AWS Cloud9 creará el entorno. Después, elija Your VPCs (Sus VPC) en el panel de navegación.

Para usar AWS CLI o aws-shell, ejecute el comando describe-vpcs de Amazon EC2, por ejemplo, de
la siguiente manera.

aws ec2 describe-vpcs --output table --query 'Vpcs[*].VpcId' --region us-east-2

502
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

En el comando anterior, reemplace us-east-2 por la región de AWS en la que AWS Cloud9 creará el
entorno. Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas
dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

El resultado contiene la lista de los ID de VPC.

Ver una lista de subredes de una VPC


Para utilizar la consola de Amazon VPC, elija Your VPCs (Sus VPC) en el panel de navegación. Anote el
ID de la VPC de la columna VPC ID (ID de VPC). A continuación, elija Subnets (Subredes) en el panel de
navegación y busque subredes que contengan ese ID en la columna VPC.

Para usar AWS CLI o aws-shell, ejecute el comando describe-subnets de Amazon EC2, por ejemplo,
de la siguiente manera.

aws ec2 describe-subnets --output table --query 'Subnets[*].[SubnetId,VpcId]' --region us-


east-2

En el comando anterior, reemplace us-east-2 por el ID de la región de AWS que contiene las subredes.
Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas dobles. Para
ejecutar el comando anterior con aws-shell, omita aws.

En la salida, busque las subredes que coincidan con el ID de la VPC.

Confirmar si una subred es pública


Important

Si va a iniciar la instancia EC2 de su entorno en una subred privada, asegúrese de que el tráfico
saliente está permitido para esa instancia para poder conectarse al servicio SSM. Para las
subredes privadas, el tráfico saliente se configura normalmente a través de una gateway de
traducción de direcciones de red (NAT) o de puntos de enlace de la VPC. (Una gateway NAT
requiere una subred pública).
Si elige puntos de enlace de la VPC en lugar de una gateway NAT para acceder a SSM, es
posible que las actualizaciones automáticas y los parches de seguridad de la instancia no
funcionen.

Para usar la consola de Amazon VPC, elija Subnets (Subredes) en el panel de navegación. Seleccione
la casilla junto a la subred que desea que AWS Cloud9 utilice. En la pestaña Route Table (Tabla de
enrutamiento), si hay una entrada en la columna Target (Destino) que comience por igw-, la subred es
pública.

Para usar AWS CLI o aws-shell, ejecute el comando describe-route-tables de Amazon EC2.

aws ec2 describe-route-tables --output table --query 'RouteTables[*].Routes[*].


{GatewayIds:GatewayId}' --region us-east-2 --filters Name=association.subnet-
id,Values=subnet-12a3456b

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la subred y reemplace
subnet-12a3456b por el ID de subred. Para ejecutar el comando anterior en Windows, reemplace las
comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

En la salida, si hay al menos un resultado que comience por igw-, la subred es pública.

En la salida, si no hay resultados, la tabla de enrutamiento podría estar asociada con la VPC en lugar de
estarlo con la subred. Para confirmarlo, ejecute el comando describe-route-tables de Amazon
EC2 para la VPC relacionada con la subred en lugar de la propia subred, por ejemplo, como se indica a
continuación.

503
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

aws ec2 describe-route-tables --output table --query 'RouteTables[*].Routes[*].


{GatewayIds:GatewayId}' --region us-east-1 --filters Name=vpc-id,Values=vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

En la salida, si hay al menos un resultado que comience por igw-, la VPC contiene una gateway de
internet.

Ver o cambiar la configuración de una gateway de internet


Para usar la consola de Amazon VPC, elija Internet Gateways (Gateways de Internet) en el panel de
navegación. Seleccione la casilla situada junto a la gateway de Internet. Para ver la configuración, fíjese
en cada una de las pestañas. Para cambiar una configuración de una pestaña, elija Edit (Editar), si
corresponde, y siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-internet-
gateways de Amazon EC2.

aws ec2 describe-internet-gateways --output table --region us-east-2 --internet-gateway-id


igw-1234ab5c

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la gateway de Internet
y reemplace igw-1234ab5c por el ID de gateway de Internet. Para ejecutar el comando anterior con aws-
shell, omita aws.

Cree un gateway de Internet


Para usar la consola de Amazon VPC, elija Internet Gateways (Gateways de Internet) en el panel de
navegación. Elija Create Internet Gateway (Crear gateway de Internet) y siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell, ejecute el comando create-internet-gateway de Amazon EC2.

aws ec2 create-internet-gateway --output text --query 'InternetGateway.InternetGatewayId'


--region us-east-2

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la nueva gateway
de Internet. Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas
dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

La salida contiene el ID de la nueva gateway de Internet.

Adjuntar un gateway de Internet a una VPC


Para usar la consola de Amazon VPC, elija Internet Gateways (Gateways de Internet) en el panel de
navegación. Seleccione la casilla situada junto a la gateway de Internet. Elija Actions, Attach to VPC
(Acciones, Asociar a VPC), si está disponible, y siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell, ejecute el comando attach-internet-gateway de Amazon EC2, por
ejemplo, de la siguiente manera.

aws ec2 attach-internet-gateway --region us-east-2 --internet-gateway-id igw-a1b2cdef --


vpc-id vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la gateway de Internet,
reemplace igw-a1b2cdef por el ID de gateway de Internet y reemplace vpc-1234ab56 por el ID de
VPC. Para ejecutar el comando anterior con aws-shell, omita aws.

504
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

Confirmar si una subred tiene una tabla de enrutamiento


Para usar la consola de Amazon VPC, elija Subnets (Subredes) en el panel de navegación. Seleccione la
casilla junto a la subred pública de la VPC que desea que AWS Cloud9 utilice. En la pestaña Route table
(Tabla de enrutamiento), si hay un valor para Route Table (Tabla de enrutamiento), la subred pública tiene
una tabla de enrutamiento.

Para usar AWS CLI o aws-shell, ejecute el comando describe-route-tables de Amazon EC2.

aws ec2 describe-route-tables --output table --query 'RouteTables[*].Associations[*].


{RouteTableIds:RouteTableId}' --region us-east-2 --filters Name=association.subnet-
id,Values=subnet-12a3456b

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la subred pública
y reemplace subnet-12a3456b por el ID de subred pública. Para ejecutar el comando anterior en
Windows, reemplace las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-
shell, omita aws.

Si hay valores en la salida, la subred pública tiene al menos una tabla de ruteo.

En la salida, si no hay resultados, la tabla de enrutamiento podría estar asociada con la VPC en lugar de
estarlo con la subred. Para confirmarlo, ejecute el comando describe-route-tables de Amazon
EC2 para la VPC relacionada con la subred en lugar de la propia subred, por ejemplo, como se indica a
continuación.

aws ec2 describe-route-tables --output table --query 'RouteTables[*].Associations[*].


{RouteTableIds:RouteTableId}' --region us-east-2 --filters Name=vpc-id,Values=vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

En la salida, si hay al menos un resultado, la VPC tiene al menos una tabla de enrutamiento.

Adjuntar una tabla de enrutamiento a una subred


Para usar la consola de Amazon VPC, elija Route Tables (Tablas de enrutamiento) en el panel de
navegación. Seleccione la casilla situada junto a la tabla de ruteo que desea asociar. En la pestaña Subnet
Associations (Asociaciones de subred), elija Edit (Editar), active la casilla situada junto a la subred a la que
desea asociarla y, a continuación, elija Save (Guardar).

Para usar AWS CLI o aws-shell, ejecute el comando associate-route-table de Amazon EC2, por
ejemplo, de la siguiente manera.

aws ec2 associate-route-table --region us-east-2 --subnet-id subnet-12a3456b --route-table-


id rtb-ab12cde3

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la tabla de ruteo,
reemplace subnet-12a3456b por el ID de subred y reemplace rtb-ab12cde3 por el ID de tabla de
ruteo. Para ejecutar el comando anterior con aws-shell, omita aws.

Crear una tabla de enrutamiento


Para usar la consola de Amazon VPC, elija Route Tables (Tablas de enrutamiento) en el panel de
navegación. Elija Create Route Table (Crear tabla de ruteo de Internet) y luego siga las instrucciones en
pantalla.

505
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

Para usar AWS CLI o aws-shell, ejecute el comando create-route-table de Amazon EC2, por
ejemplo, de la siguiente manera.

aws ec2 create-route-table --output text --query 'RouteTable.RouteTableId' --region us-


east-2 --vpc-id vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la nueva tabla de ruteo
y reemplace vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace
las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

La salida contiene el ID de la nueva tabla de ruteo.

Ver o cambiar la configuración de una tabla de enrutamiento


Para usar la consola de Amazon VPC, elija Route Tables (Tablas de enrutamiento) en el panel
de navegación. Seleccione la casilla de verificación que hay junto a la tabla de ruteo. Para ver la
configuración, fíjese en cada una de las pestañas. Para cambiar una configuración de una pestaña, elija
Edit (Editar) y luego siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-route-tables
de Amazon EC2, por ejemplo, de la siguiente manera.

aws ec2 describe-route-tables --output table --region us-east-2 --route-table-ids rtb-


ab12cde3

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la tabla de ruteo y
reemplace rtb-ab12cde3 por el ID de tabla de ruteo. Para ejecutar el comando anterior con aws-shell,
omita aws.

Configuración mínima sugerida de la tabla de enrutamiento para


AWS Cloud9

Destino Objetivo Estado Propagado

CIDR-BLOCK local Activa No

0.0.0.0/0 igw-INTERNET- Activa No


GATEWAY-ID

En esta configuración, CIDR-BLOCK es el bloque de CIDR de la subred y igw-INTERNET-GATEWAY-ID


es el ID de una gateway de internet compatible.

Ver una lista de los grupos de seguridad de una VPC


Para usar la consola de Amazon VPC, elija Security Groups (Grupos de seguridad) en el panel de
navegación. En el cuadro Search Security Groups (Buscar grupos de seguridad), ingrese el ID o el nombre
de la VPC y, a continuación, pulse Enter. Los grupos de seguridad de esa VPC aparecen en la lista de
resultados de búsqueda.

Para usar AWS CLI o aws-shell, ejecute el comando describe-security-groups de Amazon EC2.

aws ec2 describe-security-groups --output table --query 'SecurityGroups[*].GroupId' --


region us-east-2 --filters Name=vpc-id,Values=vpc-1234ab56

506
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

La salida contiene la lista de ID de grupo de seguridad para esa VPC.

Ver una lista de los grupos de seguridad de una instancia de


informática en la nube de AWS
Para usar la consola de Amazon EC2, expanda Instances (Instancias) en el panel de navegación, y,
a continuación, elija Instances (Instancias). En la lista de instancias, active la casilla situada junto a la
instancia. Los grupos de seguridad de esa instancia aparecen en la pestaña Description (Descripción)
junto a Security groups (Grupos de seguridad).

Para usar AWS CLI o aws-shell, ejecute el comando describe-security-groups de Amazon EC2,
por ejemplo, de la siguiente manera.

aws ec2 describe-instances --output table --query


'Reservations[*].Instances[*].NetworkInterfaces[*].Groups[*].GroupId' --region us-east-2
--instance-ids i-12a3c456d789e0123

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace i-12a3c456d789e0123 por el ID de instancia. Para ejecutar el comando anterior en Windows,
reemplace las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita
aws.

La salida contiene la lista de ID de grupo de seguridad para esa instancia.

Ver o cambiar la configuración de un grupo de seguridad en una


VPC
Para usar la consola de Amazon VPC, elija Security Groups (Grupos de seguridad) en el panel de
navegación. Seleccione la casilla de verificación situada junto al grupo de seguridad. Para ver la
configuración, fíjese en cada una de las pestañas. Para cambiar una configuración de una pestaña, elija
Edit (Editar), si corresponde, y siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-security-
groups de Amazon EC2, por ejemplo, de la siguiente manera.

aws ec2 describe-security-groups --output table --region us-east-2 --group-ids sg-12a3b456

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace sg-12a3b456 por el ID de grupo de seguridad. Para ejecutar el comando anterior con aws-
shell, omita aws.

Ver o cambiar la configuración de un grupo de seguridad para


una instancia de informática en la nube de AWS
Para usar la consola de Amazon EC2, expanda Instances (Instancias) en el panel de navegación, y, a
continuación, elija Instances (Instancias). En la lista de instancias, marque la casilla situada junto a la
instancia. En la pestaña Description (Descripción), en Security groups (Grupos de seguridad), elija el grupo
de seguridad. Consulte cada una de las pestañas. Para cambiar una configuración de una pestaña, elija
Edit (Editar), si corresponde, y siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-security-
groups de Amazon EC2, por ejemplo, de la siguiente manera.

507
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

aws ec2 describe-security-groups --output table --region us-east-2 --group-ids sg-12a3b456

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace sg-12a3b456 por el ID de grupo de seguridad. Para ejecutar el comando anterior con aws-
shell, omita aws.

Configuración mínima del tráfico entrante y saliente para AWS


Cloud9
Important

Si un grupo de seguridad de una instancia no tiene una regla de entrada, esto significa que no
se permite el tráfico entrante procedente de otro anfitrión a la instancia. Para obtener información
sobre el uso de instancias EC2 sin entrada, consulte Acceder a instancias EC2 sin entrada con
AWS Systems Manager (p. 68).

• Entrada: Todas las direcciones IP que usan SSH a través del puerto 22. Sin embargo, puede restringir
estas direcciones IP a la que AWS Cloud9 utiliza únicamente. Para obtener más información, consulte
Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
Note

Para los entornos de EC2 creados el 31 de julio de 2018 o después, AWS Cloud9 utiliza grupos
de seguridad para restringir las direcciones IP entrantes mediante SSH en el puerto 22 solo a
las direcciones que utiliza AWS Cloud9. Para obtener más información, consulte Intervalos de
direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
• Entrada (ACL de red solo): para los entornos de EC2 y para los entornos de SSH asociados con
instancias de Amazon EC2 que ejecutan Amazon Linux o Ubuntu Server, todas las direcciones IP que
usan TCP en los puertos 32768-61000. Para obtener más información, así como los rangos de puertos
de otros tipos de instancias de Amazon EC2, consulte Puertos efímeros en la Guía del usuario de
Amazon VPC.
• Salida: todos los orígenes de tráfico con cualquier protocolo y puerto.

Puede configurar este comportamiento en el nivel del grupo de seguridad. Para un nivel adicional de
seguridad, también puede utilizar una ACL de red. Para obtener más información, consulteComparación de
grupos de seguridad y ACL de red en la Guía del usuario de Amazon VPC.

Por ejemplo, para añadir reglas de entrada y salida a un grupo de seguridad, configure dichas reglas tal y
como se indica a continuación.

Reglas de entrada

Tipo Protocolo Rango de puerto Source

SSH (22) TCP (6) 22 0.0.0.0 (pero consulte


la siguiente nota
y los Intervalos de
direcciones IP de
entrada con SSH para
AWS Cloud9 (p. 520).)

Note

Para los entornos de EC2 creados el 31 de julio de 2018 o después, AWS Cloud9 agrega una
regla de entrada para restringir las direcciones IP entrantes mediante SSH en el puerto 22 solo

508
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

a las direcciones que utiliza AWS Cloud9. Para obtener más información, consulte Intervalos de
direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).

Reglas de salida

Tipo Protocolo Rango de puerto Source

Todo el tráfico ALL ALL 0.0.0.0/0

Si también decide añadir reglas de entrada y salida a una ACL de red, configure dichas reglas tal y como
se indica a continuación.

Reglas de entrada

Regla n.º # Tipo Protocolo Rango de Source Permitir/


puerto Denegar

100 SSH (22) TCP (6) 22 0.0.0.0 (pero PERMITIR


consulte los
Intervalos de
direcciones IP
de entrada con
SSH para AWS
Cloud9 (p. 520).)

200 Regla TCP TCP (6) 32768-61000 0.0.0.0/0 PERMITIR


personalizada (para las
instancias
de Amazon
Linux y Ubuntu
Server. Para
otros tipos de
instancias,
consulte
Puertos
efímeros).

* Todo el tráfico ALL ALL 0.0.0.0/0 DENEGAR

Reglas de salida

Regla n.º # Tipo Protocolo Rango de Source Permitir/


puerto Denegar

100 Todo el tráfico ALL ALL 0.0.0.0/0 PERMITIR

* Todo el tráfico ALL ALL 0.0.0.0/0 DENEGAR

Para obtener más información acerca de los grupos de seguridad y las ACL de red, consulte lo siguiente
en la Guía del usuario de Amazon VPC.

• Seguridad
• Grupos de seguridad de su VPC

509
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9

• ACL de red

Crear un grupo de seguridad en una VPC


Para utilizar las consolas de Amazon VPC o Amazon EC2, realice una de las siguientes acciones:

• En la consola de Amazon VPC, elija Security Groups (Grupos de seguridad) en el panel de navegación.
Elija Create Security Group (Crear grupo de seguridad) y luego siga las instrucciones en pantalla.
• En la consola de Amazon EC2, expanda Network & Security (Red y seguridad) en el panel de
navegación y, a continuación, elija Security Groups (Grupos de seguridad). Elija Create Security Group
(Crear grupo de seguridad) y luego siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell, ejecute el comando create-security-group de Amazon EC2, por
ejemplo, de la siguiente manera.

aws ec2 create-security-group --region us-east-2 --vpc-id vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior con aws-shell, omita aws.

Confirmar si una VPC tiene al menos una ACL de red


Para utilizar la consola de Amazon VPC, elija Your VPCs (Sus VPC) en el panel de navegación. Elija la
casilla junto a la VPC que desea que AWS Cloud9 utilice. En la pestaña Summary (Resumen), si hay un
valor para Network ACL (ACL de red), la VPC tiene al menos una ACL de red.

Para usar AWS CLI o aws-shell, ejecute el comando describe-network-acls de Amazon EC2.

aws ec2 describe-network-acls --output table --query


'NetworkAcls[*].Associations[*].NetworkAclId' --region us-east-2 --filters Name=vpc-
id,Values=vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

Si la salida contiene al menos una entrada en la lista, la VPC tiene al menos una ACL de red.

Ver una lista de las ACL de red para una VPC


Para usar la consola de Amazon VPC, elija Network ACLs (ACL de red) en el panel de navegación. En
el cuadro Search Network ACLs (ACL de red de búsqueda), ingrese el ID o el nombre de la VPC y, a
continuación, pulse Enter. Las ACL de red para esa VPC aparecen en la lista de resultados de búsqueda.

Para usar AWS CLI o aws-shell, ejecute el comando describe-network-acls de Amazon EC2.

aws ec2 describe-network-acls --output table --query


'NetworkAcls[*].Associations[*].NetworkAclId' --region us-east-2 --filters Name=vpc-
id,Values=vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.

La salida contiene una lista de ACL de red para esa VPC.

510
AWS Cloud9 Guía del usuario
Cree una instancia de Amazon VPC para AWS Cloud9

Ver o cambiar la configuración de una ACL de red


Para usar la consola de Amazon VPC, elija Network ACLs (ACL de red) en el panel de navegación. Active
la casilla que hay junto a la ACL de red. Para ver la configuración, fíjese en cada una de las pestañas.
Para cambiar una opción de configuración de una pestaña, elija Edit (Editar), si corresponde, y siga las
instrucciones en pantalla.

Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-network-acls
de Amazon EC2.

aws ec2 describe-network-acls --output table --region us-east-2 --network-acl-ids


acl-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la ACL de red y
reemplace acl-1234ab56 por el ID de ACL de red. Para ejecutar el comando anterior con aws-shell,
omita aws.

Crear una ACL de red


Para usar la consola de Amazon VPC, elija Network ACLs (ACL de red) en el panel de navegación. Elija
Create Network ACL (Crear ACL de red) y luego siga las instrucciones en pantalla.

Para usar AWS CLI o aws-shell, ejecute el comando create-network-acl de Amazon EC2.

aws ec2 create-network-acl --region us-east-2 --vpc-id vpc-1234ab56

En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC a la que desea
conectar la nueva ACL de red y reemplace vpc-1234ab56 por el ID de la VPC. Para ejecutar el comando
anterior con aws-shell, omita aws.

Cree una instancia de Amazon VPC para AWS Cloud9


Puede utilizar la consola de Amazon VPC para crear una instancia de Amazon VPC compatible con AWS
Cloud9.
Note

En este procedimiento, recomendamos que inicie sesión en la AWS Management Console y que
abra la consola de Amazon VPC con las credenciales de un administrador de IAM en su cuenta
de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
En algunas organizaciones no se permite crear VPC. Si no puede crear una VPC, consulte al
administrador de su cuenta de AWS o al administrador de red.

1. Si la consola de Amazon VPC aún no está abierta, inicie sesión en la AWS Management Console y
abra la consola de Amazon VPC en https://console.aws.amazon.com/vpc.
2. En la barra de navegación, si la región de AWS no es la misma que la del entorno, elija la región de
AWS correcta.
3. Elija VPC Dashboard (Panel de VPC) en el panel de navegación, si todavía no se muestra la página
VPC Dashboard (Panel de VPC).
4. Elija Launch VPC Wizard (Lanzar el asistente de VPC).
5. En Step 1: Select a VPC Configuration (Paso 1: Seleccionar una configuración de la VPC), asegúrese
de que esté seleccionada la opción VPC with a Single Public Subnet (VPC con una única subred
pública) y, luego, elija Select (Seleccionar).
6. Para Step 2: VPC with a Single Public Subnet (Paso 2: VPC con una sola subred pública), le
recomendamos que deje la siguiente configuración predeterminada. (Sin embargo, puede cambiar la

511
AWS Cloud9 Guía del usuario
Cree una instancia de Amazon VPC para AWS Cloud9

configuración de CIDR si tiene CIDR personalizados que desea utilizar. Para obtener más información,
consulte Tamaño de VPC y subred en la Guía del usuario de Amazon VPC).

• Bloque de CIDR IPv: 10.0.0.0/16


• Bloque de CIDR IPv6: Ningún bloque de CIDR IPv6
• CIDR IPv4 de subred pública: 10.0.0.0/24
• Zona de disponibilidad: sin preferencia.
• Habilitar nombres de host DNS: Sí
• Propiedad de hardware: predeterminada
7. En VPC name (Nombre de la VPC), ingrese un nombre para la VPC.
8. En Subnet name (Nombre de subred), escriba un nombre para la subred en la VPC.
9. Elija Create new VPC (Crear nueva VPC).

Amazon VPC crea los siguientes recursos que son compatibles con AWS Cloud9:

• Una VPC
• Una subred pública para la VPC
• Una tabla de enrutamiento para la subred pública con la configuración mínima requerida
• Una gateway de internet para la subred pública
• Una ACL de red para la subred pública con la configuración mínima requerida
10. De forma predeterminada, la VPC permite el tráfico entrante de todos los tipos, protocolos, puertos y
las direcciones IP. Puede restringir este comportamiento para permitir únicamente las direcciones IP
procedentes de AWS Cloud9 usando SSH en el puerto 22. Un enfoque es definir reglas entrantes en
la ACL de red predeterminada de la VPC, tal y como se indica a continuación.

a. En el panel de navegación de la consola de Amazon VPC, elija Your VPCs (Sus VPC).
b. Seleccione la casilla de la VPC que acaba de crear.
c. En la pestaña Description (Descripción), seleccione el enlace situado junto a Network ACL (ACL
de red).
d. Seleccione la casilla situada junto a la ACL de red que se muestra.
e. En la pestaña Inbound Rules (Reglas de entrada), seleccione Edit inbound rules (Editar reglas de
entrada).
f. En Rule # 100 (Regla n.º 100), en Type (Tipo), elija SSH (22).
g. En Source (Fuente), ingrese uno de los bloques de CIDR de la lista Intervalos de direcciones IP
de entrada con SSH para AWS Cloud9 (p. 520) que coincide con la región de AWS de esta
VPC.
h. Elija Add another rule.
i. Para Rule # (Regla n.º), ingrese 200.
j. En Type, seleccione SSH (22).
k. En Source (Fuente), ingrese el otro bloque de CIDR de la lista Intervalos de direcciones IP de
entrada con SSH para AWS Cloud9 (p. 520) que coincide con la región de AWS de esta VPC.
l. Como mínimo, también debe permitir el tráfico entrante de todas las direcciones IP con TCP en
los puertos 32768-61000 para los tipos de instancia de Amazon Linux y Ubuntu Server. (Para
obtener más información, así como los rangos de puertos de otros tipos de instancias de Amazon
EC2, consulte Puertos efímeros en la Guía del usuario de Amazon VPC). Para hacerlo, elija Add
another rule (Agregar otra regla).
m. Para Rule # (Regla n.º), ingrese 300.
n. En Type, elija Custom TCP Rule.
o. En Port Range (Rango de puertos), ingrese 32768-61000 (para los tipos de instancia de
Amazon Linux y Ubuntu Server).
p. En Source (Origen), escriba 0.0.0.0/0.

512
AWS Cloud9 Guía del usuario
Crear una subred para AWS Cloud9

q. Seleccione Save.
r. Es posible que tenga que agregar más reglas entrantes o salientes para la ACL de red, en
función de cómo tenga previsto utilizar AWS Cloud9. Consulte la documentación de los servicios
web o las API específicos en los que desea permitir las comunicaciones entrantes y salientes
para la VPC. Más específicamente, active las opciones de configuración Type (Tipo), Protocol
(Protocolo), Port Range (Rango de puertos) y Source (Fuente) para las reglas de ACL de red a fin
de permitir que el tráfico fluya hacia y desde las subredes.

Crear una subred para AWS Cloud9


Puede utilizar la consola de Amazon VPC para crear una subred para una VPC que sea compatible con
AWS Cloud9. El hecho de que pueda crear una subred privada o pública para su instancia EC2 depende
de cómo se conecte su entorno a ella:

• Acceso directo a través de SSH: solo subred pública


• Acceso a través de Systems Manager: subred pública o privada

La opción de lanzar el EC2 de su entorno en una subred privada solo está disponible si crea un entorno de
EC2 “sin entrada” mediante la consola, la línea de comandos o AWS CloudFormation (p. 68).

Siga los mismos pasos para crear una subred (p. 513) que pueda convertirse en pública o privada. Si la
subred está asociada a una tabla de enrutamiento que tiene una ruta a una gateway de internet, esta se
convierte en una subred pública. No obstante, si la subred está asociada a una tabla de enrutamiento que
no tiene ninguna ruta a una gateway de internet, se convierte en una subred privada. Para obtener más
información, consulte Configuración de una subred como pública o privada (p. 514)

Si ha seguido el procedimiento anterior para crear una VPC para AWS Cloud9, no es necesario que siga
también este procedimiento. Esto se debe a que el asistente para Create new VPC (Crear nueva VPC)
crea una subred automáticamente.
Important

• La cuenta de AWS ya debe tener una VPC compatible en la misma región de AWS para el
entorno. Para obtener más información, consulte los requisitos de VPC en Requisitos de
Amazon VPC para AWS Cloud9 (p. 500).
• En este procedimiento, recomendamos que inicie sesión en la AWS Management Console y
que abra la consola de Amazon VPC con las credenciales de un administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
• Es posible que algunas organizaciones no le permitan crear subredes. Si no puede crear una
subred, consulte con el administrador de su cuenta de AWS o el administrador de red.

Para crear una subred

1. Si la consola de Amazon VPC aún no está abierta, inicie sesión en la AWS Management Console y
abra la consola de Amazon VPC en https://console.aws.amazon.com/vpc.
2. En la barra de navegación, si la región de AWS no es la misma región de AWS que la del entorno, elija
la región de AWS correcta.
3. Elija Subnets (Subredes) en el panel de navegación, si todavía no se muestra la página Subnets
(Subredes).
4. Elija Create Subnet.
5. En el cuadro de diálogo Create Subnet (Crear subred), en Name tag (Etiqueta de nombre), ingrese el
nombre de la subred.

513
AWS Cloud9 Guía del usuario
Configuración de una subred como pública o privada

6. En VPC, elija la VPC con la que desea asociar la subred.


7. En Availability Zone (Zona de disponibilidad), elija la zona de disponibilidad dentro de la región de
AWS de la subred que se va a utilizar o elija No Preference (Sin preferencia) para que AWS elija una
zona de disponibilidad.
8. Para IPv4 CIDR block (Bloque de CIDR IPv4), ingrese el rango de direcciones IP de la subred que se
va a utilizar, en formato CIDR. Este rango de direcciones IP debe ser un subconjunto de direcciones
en la VPC.

Para obtener información acerca de los bloques de CIDR, consulte Tamaño de VPC y subred en la
Guía del usuario de Amazon VPC. Véase también 3.1. Basic Concept and Prefix Notation (Notación de
prefijos y conceptos básicos) en RFC 4632 o el artículo sobre bloques CIDR IPv4 en Wikipedia.

Después de crear la subred, configúrelo como una subred pública o privada (p. 514).

Configuración de una subred como pública o privada


Después de crear una subred, puede convertirla en pública o privada. Para ello, especifique cómo se
comunica con internet.

Una subred pública tiene una dirección IP pública y una gateway de internet (IGW) adjunta a esta que
permite la comunicación entre la instancia de la subred e internet y otros servicios de AWS.

Una instancia de una subred privada tiene una dirección IP privada y una gateway de traducción de
direcciones de red (NAT) se utiliza para enviar tráfico de ida y vuelta entre la instancia de la subred e
internet y otros servicios de AWS. La gateway NAT debe estar alojada en una subred pública.

Public subnets
Note

Incluso si la instancia de su entorno se lanza en una subred privada, la VPC debe incluir al
menos una subred pública. Esto se debe a que la gateway NAT que reenvía el tráfico hacia y
desde la instancia debe estar alojada en una subred pública.

Configurar una subred como pública implica adjuntarle una gateway de internet (IGW), configurar una
tabla de enrutamiento para especificar una ruta a esa IGW y definir la configuración de un grupo de
seguridad para controlar el tráfico entrante y saliente.

La orientación para llevar a cabo estas tareas se proporciona en Cree una instancia de Amazon VPC
para AWS Cloud9 (p. 511).
Important

Si el entorno de desarrollo usa SSM para acceder a una instancia EC2 (p. 68), asegúrese
de que la subred pública en la que se lanza la instancia asigna una dirección IP pública
a la instancia. Para ello, puede especificar su propia dirección IP o habilitar la asignación
automática de una dirección IP pública. Para ver los pasos necesarios para modificar la
configuración de asignación automática de IP, consulte Direcciones IP en su VPC en la Guía
del usuario de Amazon VPC.
Private subnets

Si va a crear una instancia sin entrada a la que se accede a través de Systems Manager, puede
lanzarla en una subred privada. Debido a que una subred privada no tiene una dirección IP pública,
se requiere una gateway NAT para asignar la dirección IP privada a una dirección pública para las
solicitudes y, a continuación, asignar la dirección IP pública a la dirección privada para la respuesta.

514
AWS Cloud9 Guía del usuario
Requisitos de anfitrión del entorno SSH

Warning

Se le cobrará por la creación y el uso de una gateway NAT en su cuenta. Se aplican las
tarifas de procesamiento de datos y uso por horas de la gateway NAT. También se aplican
cargos de Amazon EC2 por la transferencia de datos. Para obtener más información, consulte
Precios de Amazon VPC.

Antes de crear y configurar la gateway NAT, debe hacer lo siguiente:

• Cree una subred VPC pública para alojar la gateway NAT.


• Aprovisione una dirección IP elástica que se pueda asignar a la gateway NAT.
• Para la subred privada, desactive la casilla Enable auto-assign public IPv4 address (Habilitar la
asignación automática de direcciones IPv4 públicas) para que se asigne una dirección IP privada a
la instancia que se lanza en esta. Para obtener más información, consulte Direcciones IP en su VPC
en la Guía del usuario de Amazon VPC.

Para conocer los pasos de esta tarea, consulte Usar gateways NAT en la Guía del usuario de Amazon
VPC.
Important

Actualmente, si la instancia EC2 de su entorno se lanza en una subred privada, no puede


usar credenciales temporales administradas por AWS (p. 569) para permitir que el entorno
de EC2 acceda a un servicio de AWS en nombre de una entidad de AWS (un usuario de IAM,
por ejemplo).

Requisitos de anfitrión del entorno SSH


Para indicar a AWS Cloud9 que conecte un entorno con una instancia de informática en la nube existente o
con su propio servidor, puede crear un entorno de desarrollo de SSH de AWS Cloud9. No obstante, antes
de crear un entorno de SSH, considere las ventajas de crear un entorno de EC2 en su lugar.

Al crear un entorno de EC2, AWS Cloud9 crea un nuevo entorno, solicita a Amazon EC2 que lance una
nueva instancia y, a continuación, conecta esa instancia al nuevo entorno. La creación de un entorno de
EC2 tiene los siguientes beneficios:

• Lanzamiento automático de instancias. Al crear un entorno de EC2, AWS Cloud9 solicita a Amazon EC2
que cree una nueva instancia al mismo tiempo. En un entorno de SSH, debe proporcionar una instancia
de informática en la nube existente (por ejemplo, una instancia de Amazon EC2) o su propio servidor.
• Cierre automático de instancias. De forma predeterminada, AWS Cloud9 cierra automáticamente el
entorno de EC2 30 minutos después de que se cierren todas las instancias del navegador web que
estén conectadas al IDE para el entorno de EC2. Puede cambiar este comportamiento en cualquier
momento. Esto ayuda a reducir la posibilidad de que se apliquen cargos adicionales a su cuenta de AWS
por utilizar Amazon EC2.
• Limpieza automática de instancias. Cuando se elimina un entorno de EC2, la instancia de Amazon EC2
conectada se elimina automáticamente. Esto ayuda a reducir la posibilidad de que se apliquen cargos
adicionales a su cuenta de AWS por utilizar Amazon EC2. En un entorno de SSH que esté conectado a
una instancia de informática en la nube, debe acordarse de eliminar la instancia.
• Credenciales temporales administradas de AWS. Para un entorno de EC2, puede activar o desactivar
fácilmente todas las acciones de AWS para todos los recursos de AWS en la cuenta de AWS de la
persona que llama (con algunas restricciones). No es necesario configurar perfiles de instancias para la
instancia de Amazon EC2 de su entorno ni almacenar credenciales de acceso de AWS permanentes de
una entidad de AWS (por ejemplo, un usuario de IAM).

Para obtener más información, consulte Credenciales temporales administradas por AWS (p. 569).

515
AWS Cloud9 Guía del usuario
Cuándo y cómo crear un entorno de SSH

• Kit de herramientas y panel de Git de AWS. Estas herramientas para interactuar con los servicios de
AWS y usar el control de origen visual solo están disponibles en entornos de AWS Cloud9 creados con
una instancia de Amazon EC2.

Si desea crear un entorno de EC2 en su lugar, consulte Creación de un entorno de EC2 (p. 54). En caso
contrario, siga leyendo información sobre cómo crear entornos de SSH.

Cuándo y cómo crear un entorno de SSH


Debe crear un entorno de SSH en lugar de un entorno de EC2 siempre que tenga alguno de los requisitos
siguientes:

Requisito Instrucciones

No desea incurrir en cargos adicionales en su 1. Asegúrese de que su instancia o el servidor


cuenta de AWS por usar instancias de informática cumplen los requisitos (p. 517) que se
en la nube de AWS, por lo que decide conectar describen más adelante en este tema.
AWS Cloud9 a una instancia de informática en 2. Cree un entorno SSH (p. 53) para AWS
la nube existente fuera de AWS o a su propio Cloud9 al que conectar su instancia o servidor.
servidor.

Desea utilizar una instancia de informática en la 1. Asegúrese de que la instancia cumpla los
nube de AWS existente (por ejemplo, una instancia requisitos (p. 517) que se describen más
de Amazon EC2) en su cuenta de AWS en lugar adelante en este tema.
de que AWS Cloud9 lance una nueva instancia al 2. Cree un entorno de SSH (p. 53) al que AWS
mismo tiempo que se crea el entorno. Cloud9 pueda conectar la instancia.

Desea utilizar un tipo de instancias de Amazon 1. Lance una instancia de Amazon EC2 basada
EC2 que AWS Cloud9 no admite actualmente para en el tipo de instancias deseado. O bien
un entorno de EC2 (por ejemplo, R4). identifique una instancia existente en su
cuenta de AWS que ejecute el tipo de
instancias deseado.
2. Asegúrese de que la instancia cumpla los
requisitos (p. 517) que se describen más
adelante en este tema.
3. Cree un entorno de SSH (p. 53) al que AWS
Cloud9 pueda conectar la instancia.

Desea utilizar una instancia de Amazon EC2 1. Lance una instancia de Amazon EC2 basada
basada en una Amazon Machine Image (AMI) que en la AMI deseada. O bien, identifique una
no es de Amazon Linux ni Ubuntu Server. instancia existente en su cuenta de AWS que
esté basada en la AMI deseada.
2. Asegúrese de que la instancia cumpla los
requisitos (p. 517) que se describen más
adelante en este tema.
3. Cree un entorno de SSH (p. 53) al que AWS
Cloud9 pueda conectar la instancia.

Desea conectar varios entornos a una única 1. Asegúrese de que la instancia o el servidor
instancia de informática en la nube existente o a su cumplen los requisitos (p. 517) que se
propio servidor. describen más adelante en este tema.
2. Cree un entorno de SSH (p. 53) para cada
entorno al que desea que AWS Cloud9
conecte la instancia o el servidor.

516
AWS Cloud9 Guía del usuario
Requisitos del host SSH

Note

El lanzamiento de una instancia de Amazon EC2 podría incurrir en cargos en su cuenta de AWS
por Amazon EC2. Para obtener más información, consulte Precios de Amazon EC2.

Requisitos del host SSH


La instancia de informática en la nube existente o su propio servidor deben cumplir los siguientes requisitos
para que AWS Cloud9 los conecte a un entorno de SSH.

• Debe ejecutar Linux. (AWS Cloud9 no admite Windows).


• NO debe usar una arquitectura basada en ARM. (Se está revisando la compatibilidad con sistemas
basados en procesadores ARM).
• Debe ser accesible a través de la red de internet pública utilizando SSH. Si solo se puede acceder a
través de una nube virtual privada (VPC) o una red privada virtual (VPN), la VPC o la VPN debe tener
acceso a la red de Internet pública.
• Si el anfitrión es una instancia de informática en la nube de AWS existente y forma parte de una
instancia de Amazon Virtual Private Cloud (Amazon VPC), existen requisitos adicionales. Consulte
Configuración de Amazon VPC (p. 500).
• Debe tener Python instalado. Para verificar la versión, ejecute el comando desde el terminal del servidor
o de una instancia existente python3 --version . Para instalar Python 3 en la instancia o el servidor,
consulte uno de los siguientes recursos:
• Paso 1: Instalar las herramientas necesarias (p. 446) en el ejemplo de Python.
• Descargue Python del sitio web de Python y consulte Installing Packages en la guía Python Packaging
User Guide.
Note

Para conectar una instancia de informática en la nube de AWS existente para verificar y cumplir
los requisitos, consulte uno o varios de los siguientes recursos:
• En el caso de Amazon EC2, consulte Conexión con la instancia de Linux en la Guía del
usuario de Amazon EC2 para instancias de Linux.
• Para Amazon Lightsail, consulte Connect to your Linux/Unix-based Lightsail instance en la
documentación de Amazon Lightsail.
• Para AWS Elastic Beanstalk, consulte Listado y conexión a instancias de servidor en la Guía
para desarrolladores de AWS Elastic Beanstalk.
• Para AWS OpsWorks, consulte Uso de SSH para iniciar sesión en una instancia de Linux en
la Guía del usuario de AWS OpsWorks.
• Para otros servicios de AWS, consulte la documentación del servicio.
Para conectarse a su propio servidor con la finalidad de comprobar y cumplir los requisitos,
puede buscar en Internet una frase como "conectarse a un servidor con el comando
SSH" (desde macOS o Linux) o "conectarse a un servidor con PuTTY" (desde Windows).
• Node.js debe estar instalado. Actualmente, se admiten todas las versiones desde Node.js 0.6.16 hasta
Node.js 12.x.
Warning

AWS Cloud9 Al crear un entorno de SSH, pueden producirse problemas en la instalación de si


se utiliza una versión de Node.js que no es compatible con AWS Cloud9.

Para verificar la versión, ejecute el comando desde el terminal del servidor o de la instancia existente
node --version . Para instalar Node.js en la instancia o el servidor, consulte uno de los siguientes
recursos:
• Paso 1: Instalar las herramientas necesarias (p. 459) en la Muestra de Node.js.
517
AWS Cloud9 Guía del usuario
AWS Cloud9Instalador de

• Installing Node.js via package manager en el sitio web de Node.js.


• Node Version Manager en GitHub.
• La ruta al directorio en la instancia existente o el servidor desde el que desea que se inicie AWS Cloud9
después del inicio de sesión debe tener establecidos los permisos de acceso en rwxr-xr-x. Esto se
refiere a los permisos de lectura, escritura y ejecución del propietario que corresponden al nombre de
inicio de sesión especificado en el asistente de creación de entornos (p. 65) para el Usuario en la página
Configure settings (Configurar ajustes), los permisos de lectura y ejecución del grupo al que pertenece el
propietario y los permisos de lectura y ejecución de otros usuarios.

Por ejemplo, si la ruta del directorio es ~ (donde ~ representa el directorio de inicio del nombre de inicio
de sesión especificado para el Usuario en la página Configure settings [Configurar ajustes]), puede
establecer estos permisos en el directorio ejecutando el comando chmod desde la instancia o el servidor
mediante el comando y las instrucciones que se indican a continuación.

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

• Descargue y ejecute el instalador de AWS Cloud9 (p. 518) en la instancia o servidor existente.
• Si lo prefiere, puede restringir el tráfico de entrada por SSH únicamente a las direcciones IP que utiliza
AWS Cloud9. Para ello, establezca el tráfico SSH de entrada en los rangos de IP, tal y como se describe
en Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).

Cuando esté seguro de que la instancia o el servidor cumplen todos los requisitos anteriores, cree un
entorno de SSH (p. 65) al que AWS Cloud9 pueda conectarse.

Uso del instalador de AWS Cloud9


Antes de crear un entorno de desarrollo de SSH de AWS Cloud9, la instancia de informática en la nube
(por ejemplo, una instancia de Amazon EC2) o el servidor que se conectará al entorno deben cumplir los
Requisitos del host SSH (p. 517). Uno de estos requisitos consiste en descargar y ejecutar el instalador
de AWS Cloud9 en la instancia o el servidor. El instalador de AWS Cloud9 es un script de shell de Linux
que comprueba si la instancia o servidor se ejecuta en una plataforma de sistema operativo y arquitectura
que AWS Cloud9 admita. Si esta comprobación se realiza correctamente, el script intentará instalar los
componentes y las dependencias que AWS Cloud9 necesita para ubicarse en la instancia o servidor.

Este tema describe cómo descargar y ejecutar este script de instalación en la instancia de destino o
servidor.

• Descargue y ejecute el instalador de AWS Cloud9 (p. 518)


• Solución de problemas del instalador de AWS Cloud9 (p. 519)

Descargue y ejecute el instalador de AWS Cloud9


1. Asegúrese de que la instancia de informática en la nube o el servidor que desea conectar al entorno
cumpla los Requisitos del host SSH (p. 517). Esto incluye tener versiones específicas de Python y
Node.js 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.
2. Mientras está conectado a la instancia o servidor, ejecute uno de los siguientes comandos en esa
instancia o servidor.

curl -L https://raw.githubusercontent.com/c9/install/master/install.sh | bash

518
AWS Cloud9 Guía del usuario
Solución de problemas del instalador de AWS Cloud9

wget -O - https://raw.githubusercontent.com/c9/install/master/install.sh | bash

3. Si no hay errores en el mensaje Listo, puede crear el entorno SSH (p. 65).

Si se muestra un mensaje de error, consulte la siguiente sección para obtener información sobre la
resolución de problemas.

Solución de problemas del instalador de AWS Cloud9


En esta sección se describen los problemas más comunes, las posibles causas y las soluciones
recomendadas para solucionar los errores del instalador de AWS Cloud9.

Si el problema no aparece en la lista o si necesita ayuda adicional, consulte el foro de discusión de AWS
Cloud9. (Cuando entre en este foro, es posible que AWS requiera que inicie sesión). También puede
ponerse en contacto con nosotros directamente.

• -bash: wget: no se ha encontrado el comando (p. 519)


• Error: instale make para continuar (p. 519)
• Error: instale gcc para continuar (p. 519)
• configure: error: no se ha encontrado curses (p. 520)

-bash: wget: no se ha encontrado el comando


Problema: al ejecutar el script de instalación, se muestra el siguiente mensaje: -bash: wget: command
not found.

Causa posible: la utilidad wget no está instalada en la instancia o el servidor.

Solución recomendada: ejecute el script de instalación en la instancia o servidor con la utilidad curl
como alternativa.

Error: instale make para continuar


Problema: al ejecutar el script de instalación, se muestra el siguiente mensaje: Error: please install
make to proceed.

Causa posible: la utilidad make no está instalada en la instancia o el servidor.

Solución recomendada: instale la utilidad make y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.

Para instalar la utilidad make , ejecute uno de los siguientes comandos en la instancia o el servidor.

• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y groupinstall "Development Tools"
• Para Ubuntu Server en ejecución en Amazon EC2: sudo apt install -y build-essential
• Para SUSE: sudo zypper install -y make

Error: instale gcc para continuar


Problema: al ejecutar el script de instalación, se muestra el siguiente mensaje: Error: please install
gcc to proceed.

519
AWS Cloud9 Guía del usuario
Intervalos de direcciones IP de entrada con SSH

Causa posible: la utilidad gcc no está instalada en la instancia o el servidor.

Solución recomendada: instale la utilidad gcc y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.

Para instalar la utilidad gcc , ejecute uno de los siguientes comandos en la instancia o el servidor.

• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y groupinstall "Development Tools"
• Para Ubuntu Server en ejecución en Amazon EC2: sudo apt install -y build-essential
• Para SUSE: sudo zypper install -y gcc
• Para otros sistemas operativos, consulte Instalación de GCC.

configure: error: no se ha encontrado curses


Problema: al ejecutar el script de instalación, se muestra el siguiente mensaje: configure: error:
curses not found.

Causa posible: la biblioteca para el control de terminales ncurses no está instalada en la instancia o el
servidor.

Solución recomendada: instale la biblioteca para el control de terminales ncurses (y, en algunos
sistemas operativos, la biblioteca glibc-static ) y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.

Para instalar la biblioteca para el control de terminales ncurses (y, en algunos sistemas operativos,
la biblioteca glibc-static ), puede ejecutar uno de los siguientes comandos en la instancia o en el
servidor:

• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y install ncurses-devel
• Para SUSE: sudo zypper install -y ncurses-devel y sudo zypper install -y glibc-
static

Intervalos de direcciones IP de entrada con SSH


para AWS Cloud9
Puede restringir el tráfico entrante únicamente a los rangos de direcciones IP que AWS Cloud9 utiliza
para conectarse mediante SSH a instancias de informática en la nube de AWS (por ejemplo, instancias de
Amazon EC2) en una instancia de Amazon VPC o en los servidores de su red.
Note

En el caso de un entorno de EC2 creado el 31 de julio de 2018 o después, puede omitir este
tema. Esto se debe a que AWS Cloud9 restringe automáticamente el tráfico SSH entrante de ese
entorno solo a las direcciones IP que se describen más adelante en este tema. Para ello, AWS
Cloud9 agrega automáticamente una regla al grupo de seguridad asociado con la instancia de
Amazon EC2 del entorno. Esta regla restringe el tráfico SSH entrante sobre el puerto 22 solo a
aquellas direcciones IP de la región de AWS asociada.

Los intervalos de direcciones IP de la mayoría de las regiones de AWS están en el archivo ip-
ranges.json, tal y como se describe en Rangos de direcciones IP de AWS en la Referencia general de
AWS.

520
AWS Cloud9 Guía del usuario
Direcciones IP no incluidas en ip-ranges.json

Note
Consulte a continuación (p. 521) los rangos de direcciones IP para las regiones Asia-Pacífico
(Hong Kong), Europa (Milán) y Medio Oriente (Baréin) que no se incluyen actualmente en el
archivo ip-ranges.json.

Para buscar los rangos IP en el archivo ip-ranges.json:

• En Windows, si usa AWS Tools for Windows PowerShell, ejecute el siguiente comando.

Get-AWSPublicIpAddressRange -ServiceKey CLOUD9

• En Linux, descargue el archivo ip-ranges.json. A continuación, puede consultarlo mediante una


herramienta como jq , por ejemplo, ejecutando el siguiente comando.

jq '.prefixes[] | select(.service=="CLOUD9")' < ip-ranges.json

Estos rangos IP podrían cambiar ocasionalmente. Cuando haya un cambio, enviamos notificaciones
a los suscriptores del tema AmazonIpSpaceChanged. Para obtener estas notificaciones, consulte
Notificaciones de rangos de direcciones IP de AWS en la Referencia general de AWS.

Para utilizar estos rangos de direcciones IP cuando configure los entornos que utilizan instancias de
informática en la nube de AWS, consulte Configuración de VPC para entornos de desarrollo de AWS
Cloud9 (p. 500). Además, si elige restringir el tráfico entrante en los entornos de EC2 o los entornos de
SSH asociados con las instancias de Amazon EC2 que se ejecutan en Amazon Linux o Ubuntu Server,
asegúrese también de permitir como mínimo todas las direcciones IP que usan TCP en los puertos
32768-61000. Para obtener más información, así como intervalos de puertos para otros tipos de instancias
de informática en la nube de AWS, consulte Puertos efímeros en la Guía del usuario de Amazon VPC.

Para utilizar estos rangos de direcciones IP al configurar los entornos de SSH que utilizan su red, consulte
la documentación de la red o al administrador de red.

Direcciones IP no incluidas en ip-ranges.json


Los rangos de direcciones IP de AWS Cloud9 para las siguientes regiones de AWS no se proporcionan
actualmente en el archivo ip-ranges.json: Asia-Pacífico (Hong Kong), Europa (Milán) y Medio Oriente
(Baréin). En la siguiente tabla se muestran los intervalos de IP de esas regiones.
Note
Cada región tiene dos intervalos de direcciones IP que son compatibles con los servicios del plano
de control (enrutamiento de información) y del plano de datos (procesamiento de información) de
AWS Cloud9.

AWSRegión de Code Intervalos de direcciones IP


(notación CIDR)

Asia Pacific (Hong Kong) ap-east1 18.163.201.96/27

18.163.139.32/27

Europe (Milan) eu-south-1 15.161.135.64/27

15.161.135.96/27

Middle East (Bahrain) me-south-1 15.185.141.160/27

15.185.91.32/27

521
AWS Cloud9 Guía del usuario
Contenido de AMI

Contenido de Amazon Machine Image (AMI) para


un entorno de desarrollo de EC2 de AWS Cloud9
Utilice la siguiente información para obtener detalles acerca de las instancias de Amazon Machine Image
(AMI) que AWS Cloud9 utiliza para un entorno de EC2.
Important

Si la instancia de Amazon EC2 de su entorno se basa en una plantilla de AMI de Amazon


Linux 2 o Amazon Linux, las actualizaciones de seguridad se instalan en la instancia
inmediatamente después de su lanzamiento. Posteriormente, los parches de seguridad se aplican
automáticamente a la instancia cada hora. Estas actualizaciones se aplican mediante un proceso
en segundo plano y no afectan al uso de la instancia.
Para un entorno de EC2 de Ubuntu, las actualizaciones de seguridad también se instalan
en la instancia inmediatamente después de su lanzamiento. A continuación, el paquete de
unattended-upgrades instala automáticamente las actualizaciones disponibles a diario.

Temas
• Amazon Linux 2 o Amazon Linux (p. 522)
• Servidor Ubuntu (p. 523)

Amazon Linux 2 o Amazon Linux


Important

Le recomendamos que elija la opción Amazon Linux 2 si crea un entorno de Amazon EC2
mediante la consola (p. 55). Además de proporcionar un entorno en tiempo de ejecución seguro,
estable y de alto rendimiento, la AMI de Amazon Linux 2 incluye asistencia a largo plazo hasta
2023.
El soporte estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31 de
diciembre de 2020. Ahora esta versión anterior solo recibe soporte de mantenimiento. Para
obtener más información, consulte la página de Amazon Linux 2.
A menos que se especifique lo contrario, las referencias a Amazon Linux en este tema se refieren
a instancias de Amazon Linux y Amazon Linux 2.

Para mostrar la versión de una instancia de Amazon Linux, ejecute el siguiente comando desde el IDE de
AWS Cloud9 para el entorno conectado o desde una utilidad SSH como el comando ssh o PuTTY.

cat /etc/system-release

Para mostrar una lista de los paquetes que están instalados en una instancia de Amazon Linux, ejecute
uno o más de los siguientes comandos.

Para mostrar todos los paquetes instalados en una sola lista:

sudo yum list installed

Para mostrar una lista de los paquetes instalados con los nombres de los paquetes que contienen el texto
especificado:

sudo yum list installed | grep YOUR_SEARCH_TERM

522
AWS Cloud9 Guía del usuario
Servidor Ubuntu

En el comando anterior, reemplace YOUR_SEARCH_TERM por parte del nombre del paquete. Por ejemplo,
para mostrar una lista de todos los paquetes instalados con nombres que contienen sql:

sudo yum list installed | grep sql

Para mostrar una lista de todos los paquetes instalados, mostrados página por página:

sudo yum list installed | less

Para desplazarse a través de las páginas mostradas:

• Para pasar a la línea siguiente, pulse j.


• Para pasar a la línea anterior, pulse k.
• Para pasar a la página siguiente, pulse Ctrl-F.
• Para pasar a la página anterior, pulse Ctrl-B.
• Para salir, pulse q.

Note

Amazon Linux 2 le permite utilizar la biblioteca Extras para instalar actualizaciones de software y
de aplicaciones en sus instancias. Estas actualizaciones de software se denominan temas. Para
obtener más información, consulte Biblioteca Extras de Amazon Linux 2 en la Guía del usuario de
Amazon EC2 para instancias de Linux.

Para ver opciones adicionales, ejecute el comando man yum. Consulte también los siguientes recursos:

• Amazón Linux 2: Notas de la versión.


• Amazon Linux: Amazon Linux AMI 2018.03 Packages.

Servidor Ubuntu
Para mostrar la versión de una instancia de Ubuntu Server, ejecute el siguiente comando desde el IDE de
AWS Cloud9 para el entorno conectado o desde una utilidad SSH como el comando ssh o PuTTY.

lsb_release -a

La versión se mostrará junto al campo Descripción.

Para mostrar una lista de los paquetes que están instalados en un Ubuntu Server, ejecute uno o más de
los siguientes comandos.

Para mostrar todos los paquetes instalados en una sola lista:

sudo apt list --installed

Para mostrar una lista de los paquetes instalados con los nombres de los paquetes que contienen el texto
especificado:

sudo apt list --installed | grep YOUR_SEARCH_TERM

En el comando anterior, reemplace YOUR_SEARCH_TERM por parte del nombre del paquete. Por ejemplo,
para mostrar una lista de todos los paquetes instalados con nombres que contienen sql:

523
AWS Cloud9 Guía del usuario
Roles vinculados a servicios

sudo apt list --installed grep sql

Para mostrar una lista de todos los paquetes instalados, página por página:

sudo apt list --installed | less

Para desplazarse a través de las páginas mostradas:

• Para pasar a la línea siguiente, pulse j.


• Para pasar a la línea anterior, pulse k.
• Para pasar a la página siguiente, pulse Ctrl-F.
• Para pasar a la página anterior, pulse Ctrl-B.
• Para salir, pulse q.

Para ver opciones adicionales, ejecute el comando man apt. Consulte también Búsqueda de paquetes de
Ubuntu en el sitio web de Ubuntu.

Uso de roles vinculados a servicios de AWS Cloud9


AWS Cloud9 utiliza roles vinculados a servicios de AWS Identity and Access Management (IAM). Un rol
vinculado a un servicio es un tipo único de rol de IAM que está vinculado directamente a AWS Cloud9. Las
funciones vinculadas a servicios están predefinidas por AWS Cloud9 e incluyen todos los permisos que el
servicio requiere para llamar a otros servicios de AWS en su nombre.

Con un rol vinculado a un servicio, resulta más sencillo configurar AWS Cloud9, porque no es preciso
agregar los permisos necesarios. AWS Cloud9 define los permisos de sus roles vinculados a servicios y
solo AWS Cloud9 puede asumir sus roles. Los permisos definidos incluyen las políticas de confianza y de
permisos, y que la política de permisos no se pueda asociar a ninguna otra entidad de IAM.

Las funciones se pueden eliminar únicamente después de eliminar primero sus recursos relacionados.
De esta forma, se protegen los recursos de AWS Cloud9, ya que se evita que se puedan eliminar
accidentalmente permisos de acceso a los recursos.

Para obtener información acerca de otros servicios que admiten roles vinculados a servicios, consulte
Servicios de AWS que funcionan con IAM y busque los servicios que muestran Yes (Sí) en la columna
Service Linked Role (Rol vinculado a servicios). Seleccione una opción Sí con un enlace para ver la
documentación acerca del rol vinculado al servicio en cuestión.

• Permisos de roles vinculados a servicios de AWS Cloud9 (p. 524)


• Creación de un rol vinculado a un servicio de AWS Cloud9 (p. 527)
• Modificación de un rol vinculado a un servicio de AWS Cloud9 (p. 527)
• Eliminación de un rol vinculado a un servicio de AWS Cloud9 (p. 527)
• Regiones admitidas para los roles vinculados a servicios de AWS Cloud9 (p. 528)

Permisos de roles vinculados a servicios de AWS


Cloud9
AWS Cloud9 usa el rol vinculado a un servicio denominado AWSServiceRoleForawsCloud9. Este rol
vinculado al servicio confía en el servicio cloud9.amazonaws.com para asumir el rol.

524
AWS Cloud9 Guía del usuario
Permisos de roles vinculados a servicios de AWS Cloud9

La política de permisos de este rol vinculado a un servicio se denomina AWSCloud9ServiceRolePolicy y


permite a AWS Cloud9 completar las acciones indicadas en la política en los recursos especificados.
Important

Si utiliza License Manager y recibe el error unable to access your environment, tiene que
reemplazar el rol vinculado a un servicio anterior por la versión compatible con License Manager.
Para reemplazar el rol antiguo, elimínelo. A continuación, se crea el rol actualizado de forma
automática.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:RunInstances",
"ec2:CreateSecurityGroup",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"cloudformation:CreateStack",
"cloudformation:DescribeStacks",
"cloudformation:DescribeStackEvents",
"cloudformation:DescribeStackResources"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroupIngress"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudformation:DeleteStack"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*"
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:security-group/*"
],
"Condition": {
"StringLike": {
"aws:RequestTag/Name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",

525
AWS Cloud9 Guía del usuario
Permisos de roles vinculados a servicios de AWS Cloud9

"ec2:StopInstances"
],
"Resource": "*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"arn:aws:license-manager:*:*:license-configuration:*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:ListInstanceProfiles",
"iam:GetInstanceProfile"
],
"Resource": [
"arn:aws:iam::*:instance-profile/cloud9/*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"
],
"Condition": {
"StringLike": {
"iam:PassedToService": "ec2.amazonaws.com"
}
}
}
]
}

Debe configurar permisos para permitir que AWS Cloud9 cree un rol vinculado a un servicio en nombre de
una entidad de IAM (como un usuario, grupo o rol).

Para permitir que AWS Cloud9 cree el rol vinculado a un servicio AWSServiceRoleForAWSCloud9,
agregue la siguiente instrucción a la política de permisos de la entidad de IAM en cuyo nombre AWS
Cloud9 necesita crear el rol vinculado a un servicio.

{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}

526
AWS Cloud9 Guía del usuario
Creación de un rol vinculado a un servicio de AWS Cloud9

También puede agregar las políticas administradas por AWS AWSCloud9User o


AWSCloud9Administrator a la entidad de IAM.

Para permitir que una entidad de IAM elimine el rol vinculado al servicio AWSServiceRoleForAWSCloud9,
agregue la siguiente instrucción a la política de permisos de la entidad de IAM que necesita eliminar un rol
vinculado a un servicio.

{
"Effect": "Allow",
"Action": [
"iam:DeleteServiceLinkedRole",
"iam:GetServiceLinkedRoleDeletionStatus"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}

Creación de un rol vinculado a un servicio de AWS


Cloud9
No necesita crear un rol vinculado a un servicio. Al crear un entorno de desarrollo de AWS Cloud9, AWS
Cloud9 crea el rol vinculado a un servicio por usted.

Modificación de un rol vinculado a un servicio de AWS


Cloud9
Puede editar el rol vinculado a un servicio AWSServiceRoleForAWSCloud9 en AWS Cloud9. Por ejemplo,
después de crear un rol vinculado a un servicio, no puede cambiarle el nombre, ya que varias entidades
pueden hacer referencia a él. Sin embargo, puede editar la descripción del rol mediante IAM. Para obtener
más información, consulte Editar un rol vinculado a servicios en la Guía del usuario de IAM..

Eliminación de un rol vinculado a un servicio de AWS


Cloud9
Si ya no necesita utilizar una característica o servicio que requiere un rol vinculado a servicios,
recomendamos que elimine dicho rol. De esta forma no conservará una entidad no utilizada que no se
monitorice ni se mantenga de forma activa.

Eliminación de un rol vinculado a un servicio en IAM


Para poder utilizar IAM para eliminar un rol vinculado a un servicio, debe eliminar los recursos de AWS
Cloud9 que utiliza el rol. Para eliminar recursos de AWS Cloud9, consulte la sección sobre eliminación de
entornos (p. 111).

Puede utilizar la consola de IAM para eliminar el rol vinculado a un servicio


AWSServiceRoleForAWSCloud9. Para obtener más información, consulte Eliminación de un rol vinculado
a servicios en la Guía del usuario de IAM.

527
AWS Cloud9 Guía del usuario
Regiones admitidas para los roles
vinculados a un servicio de AWS Cloud9

Regiones admitidas para los roles vinculados a un


servicio de AWS Cloud9
AWS Cloud9 admite el uso de roles vinculados a servicios en todas las regiones en las que el servicio está
disponible. Para obtener más información, consulte AWS Cloud9 en Referencia general de Amazon Web
Services.

Registro de llamadas a la API de AWS Cloud9 con


AWS CloudTrail
AWS Cloud9 está integrado con CloudTrail, un servicio que proporciona un registro de las acciones
de los usuarios, los roles o los servicios de AWS en AWS Cloud9. CloudTrail captura las llamadas a la
API de AWS Cloud9 como eventos. Las llamadas capturadas incluyen las llamadas realizadas desde
la consola de AWS Cloud9 y las llamadas de código a las API de AWS Cloud9. Si crea un registro de
seguimiento, puede habilitar la entrega continua de eventos de CloudTrail a un bucket de Amazon Simple
Storage Service (Amazon S3), incluidos los eventos para AWS Cloud9. Si no configura un registro de
seguimiento, puede ver los eventos más recientes de la consola de CloudTrail en el Event history (Historial
de eventos). Mediante la información recopilada por CloudTrail, puede determinar la solicitud que se
realizó a AWS Cloud9, la dirección IP desde la que se realizó, quién la realizó y cuándo, etc.

Para obtener más información acerca de CloudTrail, consulte la Guía del usuario de AWS CloudTrail.

AWS Cloud9Información de en CloudTrail


CloudTrail se habilita en su cuenta de AWS cuando la crea. Cuando se produce actividad en AWS Cloud9,
esta se registra en un evento de CloudTrail junto con otros eventos de servicio de AWS en el Historial
de eventos. Puede ver, buscar y descargar los últimos eventos de la cuenta de AWS. Para obtener más
información, consulte Visualización de eventos con el historial de CloudTrail Event.

Para mantener un registro continuo de eventos en la cuenta de AWS, incluidos los eventos de AWS
Cloud9, cree un registro de seguimiento. Un registro de seguimiento permite a CloudTrail enviar archivos
de registro a un bucket de Amazon S3. De forma predeterminada, cuando se crea un registro de
seguimiento en la consola, el registro de seguimiento se aplica a todas las regiones de AWS. El registro
de seguimiento registra los eventos de todas las regiones de la partición de AWS y envía los archivos
de registro al bucket de Amazon S3 especificado. También es posible configurar otros servicios de AWS
para analizar en profundidad y actuar en función de los datos de eventos recopilados en los registros de
CloudTrail. Para obtener más información, consulte los siguientes temas:

• Introducción a la creación de registros de seguimiento


• Consulte Servicios e integraciones compatibles con CloudTrail
• Configuración de notificaciones de Amazon SNS para CloudTrail
• Recibir archivos de registro de CloudTrail de varias regiones y Recibir archivos de registro de CloudTrail
de varias cuentas

AWS Cloud9 admite el registro de las siguientes acciones como eventos en archivos de registros de
CloudTrail:

• CreateEnvironmentEC2
• CreateEnvironmentSSH
• CreateEnvironmentMembership
• DeleteEnvironment

528
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

• DeleteEnvironmentMembership
• DescribeEnvironmentMemberships
• DescribeEnvironments
• DescribeEnvironmentStatus
• ListEnvironments
• ListTagsForResource
• TagResource
• UntagResource
• UpdateEnvironment
• UpdateEnvironmentMembership

Note

Algunos eventos de CloudTrail para AWS Cloud9 no se desencadenan mediante operaciones de


API públicas. En su lugar, las actualizaciones internas que afectan a la autenticación del usuario y
las credenciales temporales administradas inician los siguientes eventos:

• DisableManagedCredentialsByCollaborator
• EnvironmentTokenSuccessfullyCreated
• ManagedCredentialsUpdatedOnEnvironment

Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de
identidad del usuario le ayuda a determinar lo siguiente:

• Si la solicitud se realizó con credenciales de usuario AWS Identity and Access Management (IAM) o
credenciales de usuario raíz.
• Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.
• Si la solicitud la realizó otro servicio de AWS.

Para obtener más información, consulte el Elemento userIdentity de CloudTrail.

Descripción de las entradas de los archivos de registro


de AWS Cloud9
Un registro de seguimiento es una configuración que permite la entrega de eventos como archivos de
registros en un bucket de Amazon S3 que especifique. Los archivos log de CloudTrail pueden contener
una o varias entradas de log. Un evento representa una solicitud específica realizada desde una fuente
y contiene información sobre la acción solicitada, la fecha y la hora de la acción y los parámetros de la
solicitud. Los archivos de registro de CloudTrail no rastrean el orden en la pila de las llamadas públicas a la
API, por lo que estas no aparecen en ningún orden específico.

• CreateEnvironmentEC2 (p. 530)


• CreateEnvironmentSSH (p. 530)
• CreateEnvironmentMembership (p. 531)
• DeleteEnvironment (p. 532)
• DeleteEnvironmentMembership (p. 533)
• DescribeEnvironmentMemberships (p. 533)
• DescribeEnvironments (p. 534)
• DescribeEnvironmentStatus (p. 535)

529
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

• ListEnvironments (p. 536)


• ListTagsForResource (p. 536)
• TagResource (p. 537)
• UntagResource (p. 538)
• UpdateEnvironment (p. 539)
• UpdateEnvironmentMembership (p. 539)

CreateEnvironmentEC2
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentEC2.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentEC2",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"instanceType": "t2.small",
"subnetId": "subnet-1d4a9eEX",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"dryRun": true,
"automaticStopTimeMinutes": 30,
"name": "my-test-environment",
"clientRequestToken": "cloud9-console-f8e37272-e541-435d-a567-5c684EXAMPLE"
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

CreateEnvironmentSSH
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentSSH.

530
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentSSH",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"host": "198.51.100.0",
"port": 22,
"name": "my-ssh-environment",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"clientRequestToken": "cloud9-console-b015a0e9-469e-43e3-be90-6f432EXAMPLE",
"loginName": "ec2-user"
},
"responseElements": {
"environmentId": "5c39cc4a85d74a8bbb6e23ed6EXAMPLE"
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

CreateEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentMembership.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",

531
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
"permissions": "read-write"
},
"responseElements": {
"membership": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"permissions": "read-write",
"userId": "AIDACKCEVSQ6C2EXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser"
}
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

DeleteEnvironment
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DeleteEnvironment.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DeleteEnvironment",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE"

532
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

DeleteEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DeleteEnvironmentMembership.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DeleteEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

DescribeEnvironmentMemberships
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironmentMemberships.

{
"Records": [
{

533
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironmentMemberships",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"nextToken": "NEXT_TOKEN_EXAMPLE",
"permissions": [ "owner" ],
"maxResults": 15
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

DescribeEnvironments
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironments.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironments",

534
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentIds": [
"2f5ff70a640f49398f67e3bdeb811ab2"
]
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

DescribeEnvironmentStatus
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironmentStatus.

{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"userName": "barshane_role"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-12T15:10:54Z"
}
}
},
"eventTime": "2021-03-12T15:13:31Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironmentStatus",
"awsRegion": "us-east-1",
"sourceIPAddress": "XX.XX.XXX.XX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.951
Linux/4.9.230-0.1.ac.223.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation",
"requestParameters": {
"environmentId": "31ea8a12746a4221b7d8e07d9ef6ee21"
},
"responseElements": null,
"requestID": "68b163fb-aa88-4f40-bafd-4a18bf24cbd5",
"eventID": "c0fc52a9-7331-4ad0-a8ee-157995dfb5e6",
"readOnly": true,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",

535
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"recipientAccountId": "123456789012"
}

ListEnvironments
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
ListEnvironments.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "ListEnvironments",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"nextToken": "NEXT_TOKEN_EXAMPLE",
"maxResults": 15
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "123456789012"
}
]
}

ListTagsForResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
ListTagsForResource.

{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AIDACKCEVSQ6C2EXAMPLE",
"sessionContext": {

536
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "123456789012:myuser_role",
"accountId": "123456789012",
"userName": "barshane_role"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T16:41:51Z"
}
}
},
"eventTime": "2021-03-23T16:42:58Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "ListTagsForResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "XX.XX.XXX.XX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21"
},
"responseElements": {
"tags": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"requestID": "5750a344-8462-4020-82f9-f1d500a75162",
"eventID": "188d572d-9a14-4082-b98b-0389964c7c30",
"readOnly": true,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}

TagResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
TagResource.

{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts:: 123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::123456789012:role/myuser_role",
"accountId": "123456789012",
"userName": "MyUser"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T15:03:57Z"
}

537
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

}
},
"eventTime": "2021-03-23T15:08:16Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "TagResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "54.XXX.XXX.XXX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21",
"tags": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"responseElements": null,
"requestID": "658e9d70-91c2-41b8-9a69-c6b4cc6a9456",
"eventID": "022b2893-73d1-44cb-be6f-d3faa68e83b1",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}

UntagResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UntagResource.

{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012/MyUser",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::123456789012:MyUser",
"accountId": "123456789012",
"userName": "MyUser"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T15:58:36Z"
}
}
},
"eventTime": "2021-03-23T16:05:08Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UntagResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "3.XX.XX.XXX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21",

538
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9

"tagKeys": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"responseElements": null,
"requestID": "0eadaef3-dc0a-4cd7-85f6-135b8529f75f",
"eventID": "41f2f2e2-4b17-43d4-96fc-9857981ca1de",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}

UpdateEnvironment
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UpdateEnvironment.

{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UpdateEnvironment",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"name": "my-test-environment-renamed"
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}

UpdateEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UpdateEnvironmentMembership.

539
AWS Cloud9 Guía del usuario
Etiquetas

"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UpdateEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
"permissions": "read-only"
},
"responseElements": {
"membership": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"permissions": "read-only",
"userId": "AIDACKCEVSQ6C2EXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser"
}
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]}

Etiquetas
Una etiqueta es un nombre o atributo que usted o AWS adjuntan a un recurso de AWS. Cada etiqueta
consta de una clave y un valor emparejado. También puede usar etiquetas para controlar el acceso a sus
recursos de AWS Cloud9, como se describe en Controlar el acceso con etiquetas de recursos de AWS
en la Guía del usuario de IAM. Las etiquetas también pueden ayudarle a administrar la información de
facturación, como se describe en Etiquetas de asignación de costos definidas por el usuario.

Cuando crea un entorno de desarrollo de EC2 de AWS Cloud9 (p. 54), AWS Cloud9 incluye ciertas
etiquetas del sistema que necesita para administrar el entorno. Las etiquetas del sistema comienzan por
"aws:". Durante ese proceso de creación, también puede añadir sus propias etiquetas de recursos.

Una vez creado el entorno puede ver las etiquetas que están adjuntas al entorno, agregar nuevas
etiquetas de recursos al entorno, o modificar o quitar las etiquetas que ha agregado anteriormente. Puede
asociar hasta 50 etiquetas definidas por el usuario a un entorno de AWS Cloud9.

Vea o actualice etiquetas mediante uno o varios de los métodos siguientes.

540
AWS Cloud9 Guía del usuario
Propagación de actualizaciones de
etiquetas a los recursos subyacentes

• En la consola de AWS Cloud9, seleccione el entorno que le interese y, a continuación, elija View Details
(Ver detalles).

• Utilice los siguientes comandos de la CLI de AWS Cloud9: list-tags-for-resource, tag-


resource y untag-resource.
• Utilice las siguientes acciones de la API de AWS Cloud9: ListTagsForResource, TagResource y
UntagResource.

Warning
Las etiquetas que se crean o actualizan para AWS Cloud9 mediante los métodos anteriores
no se propagan automáticamente a los recursos subyacentes. Para información sobre cómo
hacerlo, consulte la siguiente sección, Propagación de actualizaciones de etiquetas a los recursos
subyacentes (p. 541).

Propagación de actualizaciones de etiquetas a los


recursos subyacentes
Cuando se utilizan comandos de la CLI o acciones de la API de AWS Cloud9 para agregar, modificar
o eliminar las etiquetas adjuntas a un entorno de AWS Cloud9, esos cambios no se propagan
automáticamente a los recursos subyacentes como la pila de AWS CloudFormation, la instancia de
Amazon EC2 y los grupos de seguridad de Amazon EC2. Debe propagar manualmente esos cambios.

Para facilitar el uso de los siguientes procedimientos, puede obtener el ID del entorno que le interesa. Si
desea hacerlo, siga estos pasos:

1. En la consola de AWS Cloud9, seleccione el entorno que le interese y, a continuación, elija View
Details (Ver detalles).
2. Busque la propiedad Environment ARN (ARN de entorno) y registre el ID de entorno, que es la parte
del ARN de entorno después de "environment:".

Debe propagar las actualizaciones de etiqueta a uno o más de los siguientes lugares, dependiendo de
para qué vaya a usar las etiquetas.

Propagación de actualizaciones de etiqueta a la pila de AWS


CloudFormation
Note
Cuando actualiza las etiquetas a la pila de AWS CloudFormation, esas actualizaciones se
propagan automáticamente a la instancia de Amazon EC2 y a los grupos de seguridad de
Amazon EC2 que están asociados con la pila.

1. Vaya a la consola de AWS CloudFormation.


2. Busque y elija la pila que corresponda al entorno de AWS Cloud9 que le interesa. Si ha registrado el
ID de entorno, puede usarlo para filtrar el entorno.
3. En la pestaña Stack info (Información de pila), en la sección Tags (Etiquetas), revisa la lista de
etiquetas.
4. Si necesita actualizar las etiquetas, elija Update (Actualizar) cerca de la parte superior de la página y
siga las instrucciones. Para obtener más información, consulte Actualización de pilas directamente en
la Guía del usuario de AWS CloudFormation.

541
AWS Cloud9 Guía del usuario
Propagación de actualizaciones de
etiquetas a los recursos subyacentes

También puede actualizar las etiquetas usando los comandos de la CLI describe-stacks y update-
stack.

Propagación de actualizaciones de etiquetas a la instancia de


Amazon EC2
1. Vaya a la consola de instancias de Amazon EC2.
2. Busque y seleccione la instancia de Amazon EC2 que corresponda al entorno de AWS Cloud9 que le
interesa. Si ha registrado el ID de entorno con anterioridad, puede usarlo para filtrar el entorno.
3. En la pestaña Tags (Etiquetas) vea y actualice las etiquetas según sea necesario.

También puede actualizar las etiquetas con los comandos de la CLI describe-tags, create-tags y delete-
tags.

Propagación de actualizaciones de etiquetas a grupos de


seguridad de Amazon EC2
1. Vaya a la consola de grupos de seguridad de Amazon EC2.
2. Busque y seleccione el grupo de seguridad que corresponda al entorno de AWS Cloud9 que le
interesa. Si ha registrado el ID de entorno con anterioridad, puede usarlo para filtrar el entorno.
3. Abre la pestaña Tags (Etiquetas) para ver y actualizar las etiquetas según sea necesario.

También puede actualizar las etiquetas con los comandos de la CLI describe-tags, create-tags y delete-
tags.

542
AWS Cloud9 Guía del usuario
Protección de los datos

Seguridad de AWS Cloud9


La seguridad en la nube de Amazon Web Services (AWS) es la máxima prioridad. Como cliente de
AWS, se beneficia de una arquitectura de red y un centro de datos que se han diseñado para satisfacer
los requisitos de seguridad de las organizaciones más exigentes. La seguridad es una responsabilidad
compartida entre AWS y usted. En el modelo de responsabilidad compartida, se habla de «seguridad de la
nube» y «seguridad en la nube»:

Seguridad de la nube: AWS es responsable de proteger la infraestructura que ejecuta todos los servicios
ofrecidos en la nube de AWS y de proporcionar servicios que puede utilizar de forma segura. Nuestra
responsabilidad en torno a la seguridad es la mayor prioridad en AWS y auditores externos prueban y
verifican la eficacia de nuestra seguridad con frecuencia como parte de los programas de conformidad de
AWS.

Seguridad en la nube: su responsabilidad viene determinada por el servicio de AWS que usa y por otros
factores, como la confidencialidad de los datos, los requisitos de la organización, y las normas y los
reglamentos aplicables.

AWS Cloud9 cumple el modelo de responsabilidad compartida en los servicios concretos de AWS que
admite. Para obtener información sobre la seguridad de los servicios de AWS, consulte la página de
documentación sobre la seguridad de los servicios de AWS y los servicios de AWS sujetos a las medidas
de conformidad de AWS de cada programa de conformidad.

En los siguientes temas, se le mostrará cómo configurar AWS Cloud9 para satisfacer sus objetivos de
seguridad y conformidad.

Temas
• Protección de los datos en AWS Cloud9 (p. 543)
• Administración de identidades y accesos en AWS Cloud9 (p. 546)
• Registro y monitoreo en AWS Cloud9 (p. 573)
• Validación de la conformidad en AWS Cloud9 (p. 573)
• Resiliencia en AWS Cloud9 (p. 577)
• Seguridad de la infraestructura en AWS Cloud9 (p. 577)
• Configuración y análisis de vulnerabilidades en AWS Cloud9 (p. 577)
• Prácticas recomendadas de seguridad para AWS Cloud9 (p. 578)

Protección de los datos en AWS Cloud9


El modelo de responsabilidad compartida de AWS se aplica a la protección de datos de AWS Cloud9.
Como se describe en este modelo, AWS es responsable de proteger la infraestructura global que ejecuta
toda la Nube de AWS. Usted es responsable de mantener el control sobre el contenido alojado en esta
infraestructura. Este contenido incluye la configuración de seguridad y las tareas de administración para
el que utiliza Servicios de AWS. Para obtener más información sobre la privacidad de los datos, consulte
las Preguntas frecuentes sobre la privacidad de datos. Para obtener información sobre la protección de
datos en Europa, consulte la publicación de blog AWSShared Responsability Model and GDPR en el Blog
de seguridad de AWS.

Con fines de protección de datos, recomendamos proteger las credenciales de Cuenta de AWS y
configurar cuentas de usuario individuales con AWS Identity and Access Management (IAM). De esta

543
AWS Cloud9 Guía del usuario
Cifrado de datos

manera, solo se otorgan a cada usuario los permisos necesarios para cumplir con sus obligaciones
laborales. También recomendamos proteger sus datos de las siguientes formas:

• Utilice Multi-Factor Authentication (MFA) con cada cuenta.


• Utilice SSL/TLS para comunicarse con los recursos de AWS. Recomendamos TLS 1.2 o una versión
posterior.
• Configure la API y el registro de actividad del usuario con AWS CloudTrail.
• Utilice las soluciones de cifrado de AWS, junto con todos los controles de seguridad predeterminados
dentro de los servicios de AWS.
• Utilice avanzados servicios de seguridad administrados, como Amazon Macie, que lo ayuden a detectar
y proteger los datos personales almacenados en Amazon S3.
• Si necesita módulos criptográficos validados FIPS 140-2 al acceder a AWS a través de una interfaz de
línea de comandos o una API, utilice un punto de enlace de FIPS. Para obtener más información sobre
los puntos de enlace de FIPS disponibles, consulte Estándar de procesamiento de la información federal
(FIPS) 140-2.

Le recomendamos encarecidamente que nunca introduzca información de identificación confidencial,


como, por ejemplo, direcciones de email de sus clientes, en etiquetas o en los campos de formato libre,
como el campo Name (Nombre). No debe especificar esta información cuando trabaje con AWS Cloud9
u otros servicios de AWS a través de la consola, la API, la AWS CLI o AWS SDK. Los datos que ingresa
en etiquetas o campos de formato libre utilizados para los nombres se pueden utilizar para los registros de
facturación o diagnóstico. Si proporciona una URL a un servidor externo, recomendamos encarecidamente
que no incluya información de credenciales en la URL a fin de validar la solicitud para ese servidor.

Cifrado de datos
El cifrado de datos se refiere a la protección de los datos mientras están en tránsito (a medida que viajan
entre AWS Cloud9 y su cuenta AWS) y en reposo (mientras se almacenan en almacenes de configuración
de AWS Cloud9 e instancias de cómputos en la nube de AWS).

En el contexto de AWS Cloud9, los siguientes tipos de datos pueden requerir protección mediante cifrado:

Su contenido y datos

Información que usted manipula, recopila y almacena. Los siguientes son ejemplos de este tipo de datos:

• Sus archivos de código


• Configuración, aplicaciones y datos para el entorno de EC2 o el entorno de SSH adjunto

Metadatos de AWS Cloud9

Datos manipulados, recopilados y almacenados por AWS Cloud9. Los siguientes son ejemplos de este tipo
de datos:

• Configuración de IDE como estados de pestañas, archivos abiertos y preferencias IDE


• Metadatos del entorno de desarrollo de AWS Cloud9, como nombres y descripciones del entorno
• API de servicios de AWS Cloud9 y registros de consola
• Registros de servicio, como solicitudes HTTP

AWS Cloud9 también transmite parte de su contenido y datos a través de su servicio de plano de datos.
Esto incluye sus archivos, entrada de terminal, texto de salida y algunos comandos IDE (por ejemplo, para
guardar archivos).

544
AWS Cloud9 Guía del usuario
Cifrado de datos

Cifrado en reposo
El cifrado en reposo hace referencia a la protección de sus datos del acceso no autorizado mediante el
cifrado de datos mientras están almacenados. Los datos del cliente almacenados en un entorno de AWS
Cloud9, como archivos de código, paquetes o dependencias, siempre se almacenan en los recursos del
cliente. Si el cliente utiliza un entorno de Amazon EC2, los datos se almacenan en el volumen asociado de
Amazon Elastic Block Store (Amazon EBS) que existe en su cuenta de AWS. Si el cliente utiliza un entorno
SSH, los datos se almacenan en almacenamiento local en su servidor Linux.

Cuando se crean instancias de Amazon EC2 para un entorno de desarrollo de AWS Cloud9, se crea un
volumen de Amazon EBS sin cifrar y se adjunta a esa instancia. Los clientes que deseen cifrar sus datos
deben crear un volumen de EBS cifrado y adjuntarlo a la instancia de EC2.

Los metadatos sobre los entornos de desarrollo de AWS Cloud9, como los nombres de los entornos, los
miembros de los entornos y la configuración del IDE, se almacenan en AWS, no en los recursos del cliente.
La información específica del cliente, como las descripciones del entorno y la configuración del IDE, está
cifrada.

Cifrado en tránsito
El cifrado en tránsito se refiere a proteger sus datos de ser interceptados mientras se mueven entre los
extremos de comunicación. Todos los datos transmitidos entre el cliente del comprador y el servicio AWS
Cloud9 se cifran a través de HTTPS, WSS y SSH cifrado.

• HTTPS: garantiza las solicitudes seguras entre el navegador web del cliente y el servicio AWS Cloud9.
AWS Cloud9 también carga activos de Amazon CloudFront enviados a través de HTTPS desde el
navegador del cliente.
• WSS (WebSocket Secure): permite la comunicación bidireccional segura a través de WebSockets entre
el navegador web del cliente y el servicio AWS Cloud9.
• SSH cifrado (Secure Shell): permite la transmisión segura de datos entre el navegador web del cliente y
el servicio AWS Cloud9.

El uso de los protocolos HTTPS, WSS y SSH depende del uso de un navegador compatible con AWS
Cloud9. Consulte Navegadores compatibles con AWS Cloud9 (p. 604).
Note

Los protocolos de cifrado se implementan de forma predeterminada en AWS Cloud9. Los clientes
no pueden cambiar la configuración de cifrado en tránsito.

Administración de claves
AWS Key Management Service (AWS KMS) es un servicio administrado para crear y controlar las
AWS KMS keys, las claves de cifrado utilizadas para cifrar los datos del cliente. AWS Cloud9 genera y
administra claves criptográficas para cifrar datos en nombre de los clientes.

Privacidad del tráfico entre redes


Los entornos de SSH se conectan a los recursos informáticos y de almacenamiento locales propiedad del
cliente. Las conexiones SSH, HTTPS y WSS cifradas admiten el tránsito de datos entre el servicio y el
entorno SSH.

Puede configurar entornos de desarrollo de EC2 de AWS Cloud9 (respaldados por instancias de
Amazon EC2) que se lanzarán en VPC y subredes específicas. Para obtener más información sobre la
configuración de Amazon Virtual Private Cloud, consulte Configuración de VPC para entornos de desarrollo
de AWS Cloud9 (p. 500).

545
AWS Cloud9 Guía del usuario
Identity and Access Management

Administración de identidades y accesos en AWS


Cloud9
AWS Identity and Access Management (IAM) es un servicio de Amazon Web Services (AWS) que ayuda al
administrador a controlar de forma segura el acceso a los recursos de AWS. Los administradores de IAM
controlan quién se puede autenticar (iniciar sesión) y autorizar (tener permisos) para utilizar recursos de los
servicios de AWS. IAM es un servicio de AWS que puede utilizar sin cargo adicional.

Si desea usar AWS Cloud9 para acceder a AWS, necesita una cuenta de AWS y unas credenciales de
AWS. Para aumentar la seguridad de su cuenta de AWS, le recomendamos que utilice un usuario de IAM a
la hora de proporcionar credenciales de acceso en lugar de usar las credenciales de su cuenta de AWS.

Para obtener más información acerca de cómo trabajar con IAM, consulte AWS Identity and Access
Management.

Para obtener información general sobre los usuarios de IAM y por qué son importantes para la seguridad
de su cuenta, consulte AWSCredenciales de seguridad de en la Referencia general de Amazon Web
Services.

AWS Cloud9 cumple el modelo de responsabilidad compartida en los servicios concretos de Amazon
Web Services (AWS) que admite. Para obtener información sobre la seguridad de los servicios de AWS,
consulte la página de documentación sobre la seguridad de los servicios de AWS y los servicios de AWS
sujetos a las medidas de conformidad de AWS de cada programa de conformidad.

Público
La forma en que utilice AWS Identity and Access Management (IAM) difiere en función del trabajo que
realice en AWS Cloud9.

Usuario de servicio: si utiliza el servicio de AWS Cloud9 para realizar su trabajo, su administrador le
proporciona las credenciales y los permisos que necesita. A medida que utilice más características de
AWS Cloud9 para realizar su trabajo, es posible que necesite permisos adicionales. Entender cómo se
administra el acceso puede ayudarle a solicitar los permisos correctos a su administrador. Si no puede
acceder a una característica en AWS Cloud9, consulte Solución de problemas de AWS Cloud9 (p. 579).

Administrador de servicio: si está a cargo de los recursos de AWS Cloud9 en su empresa, probablemente
tenga acceso completo a AWS Cloud9. Su trabajo consiste en determinar qué a características y recursos
de AWS Cloud9 deben acceder sus empleados. A continuación, debe enviar solicitudes a su administrador
de IAM para cambiar los permisos de los usuarios de su servicio. Revise la información de esta página
para conocer los conceptos básicos de IAM. Para obtener más información sobre cómo su empresa puede
utilizar IAM con AWS Cloud9, consulte Cómo AWS Cloud9 funciona con IAM (p. 548).

Administrator de IAM (Administrador de IAM): si es un administrador de IAM, es posible que quiera conocer
información sobre cómo escribir políticas para administrar el acceso a AWS Cloud9. Para consultar
ejemplos de políticas basadas en la identidad de AWS Cloud9 que puede utilizar en IAM, consulte
Creación de políticas administradas por el cliente para AWS Cloud9 (p. 557).

Autenticación con identidades


Puede tener acceso a AWS como cualquiera de los siguientes tipos de identidades.

usuario raíz de la cuenta de AWS

Cuando se inscriba en AWS, tendrá que proporcionar la dirección de correo electrónico y la contraseña
asociadas a su cuenta de AWS. Estas son las credenciales raíz y proporcionan acceso completo a todos
los recursos de AWS.

546
AWS Cloud9 Guía del usuario
Autenticación con identidades

Important

Como una práctica recomendada de seguridad de AWS, recomendamos utilizar las credenciales
raíz solo para crear un grupo de administradores de IAM con un usuario administrador de IAM.
Se trata de un grupo que da al usuario permisos completos a la cuenta de AWS. Después,
podrá utilizar este usuario administrador para crear otros usuarios y roles de IAM con permisos
limitados. Para obtener más información, consulte Crear usuarios de IAM individuales y Creación
del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.

Usuario de IAM

Un usuario de IAM es simplemente una identidad dentro de una cuenta de AWS que tiene permisos
personalizados específicos (por ejemplo, para crear un entorno de desarrollo de AWS Cloud9). Puede
utilizar un nombre de usuario y una contraseña de IAM para iniciar sesión en páginas web seguras de
AWS, como la consola de AWS Cloud9, AWS Management Console, los foros de debate de AWS y AWS
Support Center.

Además de un nombre de usuario y una contraseña, también puede generar claves de acceso para
cada usuario. Puede utilizar estas claves cuando obtenga acceso a los servicios de AWS mediante
programación, ya sea a través de uno de los varios AWS SDK o mediante la AWS Command Line Interface
(AWS CLI) o el aws-shell. AWS SDK, la AWS CLI y el aws-shell usan estas claves de acceso para firmar
criptográficamente la solicitud. Si no utiliza estas herramientas, debe firmar la solicitud. AWS Cloud9 es
compatible con Signature Version 4, un protocolo para autenticar solicitudes entrantes de la API. Para
obtener más información acerca de cómo autenticar solicitudes, consulte Proceso de firma Signature
Version 4 en la Referencia general de Amazon Web Services.

Rol de IAM

Un rol de IAM es otra identidad de IAM que puede crear en la cuenta que tiene permisos específicos. Es
similar a un usuario de IAM, pero no está asociado a una persona determinada. Un rol de IAM le permite
obtener claves de acceso temporales que se pueden utilizar para tener acceso a los servicios y recursos
de AWS. Los roles de IAM con credenciales temporales son útiles en las siguientes situaciones.

Acceso a los servicios de AWS

Puede utilizar un rol de IAM en su cuenta para conceder permisos a un servicio de AWS para acceder
a los recursos de su cuenta. Por ejemplo, puede crear un rol que permita a AWS Lambda acceder a un
bucket de Amazon S3 en su nombre y, a continuación, cargar los datos almacenados en el bucket en un
almacenamiento de datos de Amazon Redshift. Para obtener más información, consulte Creación de un rol
para delegarle permisos a un servicio de AWS en la Guía del usuario de IAM.

Aplicaciones que se ejecutan en Amazon EC2

En lugar de almacenar claves de acceso en una instancia de Amazon EC2 para que las usen aplicaciones
que se ejecutan en la instancia y que realizan solicitudes de API de AWS, puede usar un rol de IAM para
administrar credenciales temporales para estas aplicaciones. Para asignar un rol de AWS a una instancia
de Amazon EC2 y ponerla a disposición de todas las aplicaciones, cree un perfil de instancias adjunto a la
instancia. Un perfil de instancias contiene el rol y permite a los programas que se encuentran en ejecución
en la instancia de Amazon EC2 obtener credenciales temporales. Para obtener más información, consulte
Creación y uso de un perfil de instancias para administrar credenciales temporales y Uso de un rol de
IAM para conceder permisos a aplicaciones que se ejecutan en instancias de Amazon EC2 en la Guía del
usuario de IAM.
Note

En lugar de adjuntar un perfil de instancias a una instancia de Amazon EC2 que se conecta a un
entorno, AWS Cloud9 puede configurar y administrar automáticamente credenciales temporales
en su nombre en un entorno de EC2. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569) .

547
AWS Cloud9 Guía del usuario
Administración de acceso mediante políticas

Acceso de usuarios federados

En lugar de crear un usuario de IAM, puede usar identidades de usuario preexistentes de AWS Directory
Service, del directorio de usuarios de la empresa o de un proveedor de identidades web. Estas identidades
se conocen como usuarios federados. AWS asigna un rol a un usuario federado cuando se solicita acceso
a través de un proveedor de identidades. Para obtener más información, consulte Usuarios federados y
roles en la Guía del usuario de IAM.

Administración de acceso mediante políticas


Aunque tenga credenciales válidas para autenticar las solicitudes, si no tiene permisos, no podrá crear
recursos de AWS Cloud9 ni acceder a estos. Por ejemplo, debe disponer de permisos para crear,
compartir o eliminar un entorno de desarrollo de AWS Cloud9.

Cada recurso de AWS es propiedad de una cuenta de AWS y los permisos para crear o tener acceso a
un recurso se rigen por las políticas de permisos. Un administrador de cuentas puede asociar políticas de
permisos a identidades de IAM (es decir, usuarios, grupos y funciones).

Cuando concede permisos, decide quién obtiene los permisos, los recursos a los que se tiene acceso y las
acciones que se pueden realizar en esos recursos.

Cómo AWS Cloud9 funciona con IAM


AWS Identity and Access Management se utiliza para administrar los permisos que le permiten trabajar con
entornos de desarrollo de AWS Cloud9 y otros servicios y recursos de AWS.

Recursos y operaciones de AWS Cloud9


En AWS Cloud9, el recurso principal es un entorno de desarrollo de AWS Cloud9. En las políticas se
emplean nombres de recurso de Amazon (ARN) para identificar los recursos a los que se aplican las
políticas. En la siguiente tabla se enumeran los ARN del entorno. Para obtener más información, consulte
Nombres de recursos de Amazon (ARN) y espacios de nombres de servicios de AWS en la Referencia
general de Amazon Web Services.

Tipo de recurso Formato de ARN

Entorno arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:E

Todos los entornos propiedad de la cuenta arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:*


especificada en la región de AWS determinada

Todos los entornos propiedad de la cuenta arn:aws:cloud9:REGION_ID:ACCOUNT_ID:*


especificada en la región determinada

Todos los recursos de AWS Cloud9, arn:aws:cloud9:*


independientemente de la cuenta o región

Por ejemplo, puede indicar un entorno específico en la instrucción usando su ARN, de la siguiente manera.

"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX"

Para especificar todos los recursos, utilice el carácter comodín (*) en el elemento Resource, tal y como se
indica a continuación.

548
AWS Cloud9 Guía del usuario
Cómo AWS Cloud9 funciona con IAM

"Resource": "*"

Para especificar varios recursos en una única instrucción, separe sus ARN con comas, tal y como se indica
a continuación.

"Resource": [
"arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX",
"arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
]

AWS Cloud9 proporciona un conjunto de operaciones para trabajar con recursos de AWS Cloud9. Para ver
una lista, consulte la Referencia de permisos de AWS Cloud9 (p. 565).

Titularidad de los recursos


La cuenta de AWS es la propietaria de los recursos que se crean en ella, independientemente de quién los
haya creado.

Por ejemplo:

• Si utiliza las credenciales de cuenta raíz de la cuenta de AWS para crear un entorno de desarrollo de
AWS Cloud9 (lo cual, si bien es posible, no se recomienda como práctica recomendada de seguridad de
AWS), la cuenta de AWS es el propietario del entorno.
• Si crea un usuario de IAM en su cuenta de AWS y concede permisos para crear un entorno para ese
usuario, el usuario puede crear un entorno. Sin embargo, su cuenta de AWS, a la que pertenece el
usuario, es la propietaria del entorno.
• Si crea un rol de IAM en la cuenta de AWS con permisos para crear un entorno, cualquier persona que
pueda asumir ese rol puede crear entorno. La cuenta de AWS, a la que pertenece el rol, es la propietaria
del entorno.

Administración del acceso a los recursos


Una política de permisos describe quién tiene acceso a qué recursos.
Note
En esta sección, se describe cómo se utiliza IAM en AWS Cloud9. No se proporciona información
detallada sobre el servicio de IAM. Para ver la documentación completa de IAM, consulte ¿Qué
es IAM? en la Guía del usuario de IAM. Para obtener más información acerca de la sintaxis y las
descripciones de las políticas de IAM, consulte Referencia de políticas JSON de IAM en la Guía
del usuario de IAM.

Las políticas que se adjuntan a una identidad de IAM se denominan políticas basadas en identidad (o
políticas de IAM). Las políticas de permisos que se asocian a un recurso se denominan políticas basadas
en recursos. AWS Cloud9 solo admite las políticas basadas en identidades y recursos.

Cada una de las siguientes acciones de la API solo necesita que se adjunte una política de IAM a la
identidad de IAM que desea que llame a estas acciones de API:

• CreateEnvironmentEC2
• DescribeEnvironments

Las siguientes acciones de API requieren una política basada en recursos. No es necesaria una política
de IAM, pero AWS Cloud9 utilizará una política de IAM si esta se ha adjuntado a la identidad de IAM que
desea que llame a estas acciones de API. La política basada en recursos debe aplicarse al recurso de
AWS Cloud9 deseado.

549
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

• CreateEnvironmentMembership
• DeleteEnvironment
• DeleteEnvironmentMembership
• DescribeEnvironmentMemberships
• DescribeEnvironmentStatus
• UpdateEnvironment
• UpdateEnvironmentMembership

Para obtener más información sobre lo que hace cada una de estas acciones de API, consulte la
Referencia de la API de AWS Cloud9.

No se puede asociar una política basada en recursos a un recurso de AWS Cloud9 directamente. En
cambio, AWS Cloud9 adjunta las políticas basadas en recursos correspondientes a los recursos de AWS
Cloud9 a medida que agrega, modifica, actualiza o elimina miembros del entorno.

Para conceder permisos a un usuario para realizar acciones en recursos de AWS Cloud9, adjunte una
política de permisos a un grupo de IAM al que pertenezca el usuario. Le recomendamos adjuntar una
política administrada (predefinida) por AWS para AWS Cloud9 siempre que sea posible. Las políticas
administradas por AWS se adjuntan más fácil y rápidamente. También contienen conjuntos predefinidos
de permisos de acceso para situaciones de uso y tipos de usuario comunes, por ejemplo, la administración
completa de un entorno, los usuarios de un entorno y los usuarios que únicamente tienen acceso de
lectura a un entorno. Para ver una lista de las políticas administradas de AWS para AWS Cloud9, consulte
Políticas administradas por AWS para AWS Cloud9 (p. 550).

Para casos de uso más detallados y tipos de usuario únicos, puede crear y adjuntar sus propias políticas
administradas por el cliente. Consulte Opciones de configuración adicionales para AWS Cloud9 (Team y
Enterprise) (p. 24) y Creación de políticas administradas por el cliente para AWS Cloud9 (p. 557).

Para adjuntar una política de IAM (administrada por AWS o por el cliente) a una identidad de IAM, consulte
Conexión de políticas de IAM (Consola) en la Guía del usuario de IAM.

Permisos de sesión para operaciones de API


Cuando se utiliza la API de AWS CLI o AWS para crear una sesión temporal mediante programación para
un rol o un usuario federado, puede pasar políticas de sesión como un parámetro para ampliar el ámbito de
la sesión de rol. Esto significa que los permisos efectivos de la sesión son la intersección de las políticas
basadas en identidades del rol y las políticas de la sesión.

Cuando se realiza una solicitud para acceder a un recurso durante una sesión, si no hay ninguna
instrucción Deny aplicable, pero tampoco existe ninguna declaración Allow aplicable en la política de
la sesión, el resultado de la evaluación de la política es un denegación implícita. (Para obtener más
información, consulte Cómo determinar si una solicitud se permite o se deniega dentro de una cuenta en la
Guía del usuario de IAM).

No obstante, para operaciones de la API de AWS Cloud9 que requieren una política basada en recursos
(consulte más arriba), se conceden permisos a la entidad de IAM que llama si se especifica como
Principal en la política de recursos. Este permiso explícito tiene prioridad sobre la denegación implícita
de la política de la sesión, lo que permite a la sesión llamar a la operación de la API de AWS Cloud9
correctamente.

Políticas administradas por AWS para AWS Cloud9


Para agregar permisos a usuarios, grupos y roles, es más fácil utilizar las políticas administradas de AWS
que escribirlas uno mismo. Se necesita tiempo y experiencia para crear políticas de IAM administradas

550
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

por el cliente que proporcionen a su equipo solo los permisos necesarios. Para comenzar a hacerlo con
rapidez, puede utilizar nuestras políticas administradas de AWS. Estas políticas cubren casos de uso
comunes y están disponibles en su Cuenta de AWS. Para obtener más información acerca de las políticas
administradas de AWS, consulte Políticas administradas de AWS en la Guía del usuario de IAM.

Los Servicios de AWS mantienen y actualizan las políticas administradas por AWS. No puede cambiar los
permisos en las políticas administradas de AWS. En ocasiones, los servicios agregan permisos adicionales
a una política administrada por AWS para admitir características nuevas. Este tipo de actualización afecta
a todas las identidades (usuarios, grupos y roles) donde se asocia la política. Es más probable que los
servicios actualicen una política administrada por AWS cuando se lanza una nueva característica o cuando
se ponen a disposición nuevas operaciones. Los servicios no quitan permisos de una política administrada
por AWS, por lo que las actualizaciones de políticas no deteriorarán los permisos existentes.

Además, AWS admite políticas administradas para funciones de trabajo que abarcan varios servicios. Por
ejemplo, la política ViewOnlyAccess administrada por AWS proporciona acceso de solo lectura a muchos
recursos y Servicios de AWS. Cuando un servicio lanza una nueva característica, AWS agrega permisos
de solo lectura para las operaciones y los recursos nuevos. Para obtener una lista y descripciones de las
políticas de funciones de trabajo, consulte Políticas administradas de AWS para funciones de trabajo en la
Guía del usuario de IAM.

Política administrada por AWS: AWScloud9Administrator


Puede adjuntar la política AWSCloud9Administrator a las identidades de IAM.

Esta política concede permisos administrativos que proporcionan acceso de administrador a AWS
Cloud9.

Detalles sobre los permisos

Esta política incluye los siguientes permisos.

• AWS Cloud9: todas las acciones de AWS Cloud9 en su cuenta de AWS.


• Amazon EC2: obtención de información acerca de los múltiples recursos de Amazon VPC y subredes de
su cuenta de AWS.
• IAM: obtención de información acerca de los usuarios de IAM en su cuenta de AWS y creación del rol
vinculado al servicio de AWS Cloud9 en su cuenta de AWS según sea necesario.
• Systems Manager: permite al usuario llamar a StartSession para iniciar una conexión a una instancia
para una sesión del Administrador de sesiones. Este permiso es necesario para los usuarios que abren
un entorno que se comunica con su instancia de EC2 a través de Systems Manager. Para obtener más
información, consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:*",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [

551
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}

Política administrada por AWS: AWScloud9User


Puede adjuntar la política AWSCloud9User a las identidades de IAM.

Esta política concede permisos de usuario para crear entornos de desarrollo de AWS Cloud9 y
administrar entornos propios.

Detalles sobre los permisos

Esta política incluye los siguientes permisos.

• AWS Cloud9: creación y obtención de información sobre sus entornos, y obtención y cambio de la
configuración de usuario para dichos entornos.
• Amazon EC2: obtención de información acerca de los múltiples recursos de Amazon VPC y subredes de
su cuenta de AWS.
• IAM: obtención de información acerca de los usuarios de IAM en su cuenta de AWS y creación del rol
vinculado al servicio de AWS Cloud9 en su cuenta de AWS según sea necesario.
• Systems Manager: permite al usuario llamar a StartSession para iniciar una conexión a una instancia
para una sesión del Administrador de sesiones. Este permiso es necesario para los usuarios que abren
un entorno que se comunica con su instancia de EC2 a través de Systems Manager. Para obtener más
información, consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)

{
"Version": "2012-10-17",
"Statement": [

552
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

{
"Effect": "Allow",
"Action": [
"cloud9:ValidateEnvironmentName",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentEC2",
"cloud9:CreateEnvironmentSSH"
],
"Resource": "*",
"Condition": {
"Null": {
"cloud9:OwnerArn": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:GetUserPublicKey"
],
"Resource": "*",
"Condition": {
"Null": {
"cloud9:UserArn": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
},
{

553
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}

Política administrada por AWS: AWSCloud9EnvironmentMember


Puede adjuntar la política AWSCloud9EnvironmentMember a las identidades de IAM.

Esta política concede permisos de pertenencia que proporcionan la capacidad de unirse a un entorno
compartido de AWS Cloud9.

Detalles sobre los permisos

Esta política incluye los siguientes permisos.

• AWS Cloud9: obtención de información sobre sus entornos, y obtención y cambio de la configuración de
usuario para dichos entornos.
• IAM: obtención de información acerca de los usuarios de IAM en su cuenta de AWS y creación del rol
vinculado al servicio de AWS Cloud9 en su cuenta de AWS según sea necesario.
• Systems Manager: permite al usuario llamar a StartSession para iniciar una conexión a una instancia
para una sesión del Administrador de sesiones. Este permiso es necesario para los usuarios que abren
un entorno que se comunica con su instancia de EC2 a través de Systems Manager. Para obtener más
información, consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:GetUserSettings",
"cloud9:UpdateUserSettings",
"iam:GetUser",
"iam:ListUsers"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [

554
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}

Política administrada por AWS: AWSCloud9ServiceRolePolicy


El rol vinculado a un servicio AWSServiceRoleForAWSCloud9 usa esta política para permitir al entorno de
AWS Cloud9 interactuar con Amazon EC2 y los recursos de AWS CloudFormation.

Detalles sobre los permisos

AWSCloud9ServiceRolePolicy concede a AWSServiceRoleForAWSCloud9 los permisos necesarios


para permitir a AWS Cloud9 interactuar con los servicios de AWS (Amazon EC2 y AWS CloudFormation)
necesarios para la creación y la ejecución de los entornos de desarrollo.

AWS Cloud9 define los permisos de sus roles vinculados a los servicios y solo AWS Cloud9 puede asumir
sus roles. Los permisos definidos incluyen las políticas de confianza y de permisos y que la política de
permisos no se pueda adjuntar a ninguna otra entidad de IAM.

Para obtener más información acerca de cómo utiliza AWS Cloud9 los roles vinculados a servicios,
consulte Uso de roles vinculados a servicios de AWS Cloud9 (p. 524).

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:RunInstances",

555
AWS Cloud9 Guía del usuario
Políticas administradas por AWS

"ec2:CreateSecurityGroup",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"cloudformation:CreateStack",
"cloudformation:DescribeStacks",
"cloudformation:DescribeStackEvents",
"cloudformation:DescribeStackResources"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroupIngress"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudformation:DeleteStack"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*"
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:security-group/*"
],
"Condition": {
"StringLike": {
"aws:RequestTag/Name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": "*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"arn:aws:license-manager:*:*:license-configuration:*"
]

556
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

},
{
"Effect": "Allow",
"Action": [
"iam:ListInstanceProfiles",
"iam:GetInstanceProfile"
],
"Resource": [
"arn:aws:iam::*:instance-profile/cloud9/*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"
],
"Condition": {
"StringLike": {
"iam:PassedToService": "ec2.amazonaws.com"
}
}
}
]
}

Actualizaciones de AWS Cloud9 para las políticas administradas


por AWS
Es posible consultar los detalles sobre las actualizaciones de las políticas administradas por AWS para
AWS Cloud9 porque este servicio comenzó a realizar el seguimiento de estos cambios. Para obtener
alertas automáticas sobre cambios en esta página, suscríbase a la fuente RSS en la página Historial de
revisión de AWS Cloud9.

Cambio Descripción Fecha

Actualización de AWSCloud9ServiceRolePolicy (p. 555)


12 de enero de 2022
AWSCloud9ServiceRolePolicy (p. 555)
se actualizó para permitir
a AWS Cloud9 iniciar y
detener instancias de Amazon
EC2 administradas por
configuraciones de licencias de
License Manager.

AWS Cloud9 comenzó a realizar AWS Cloud9 comenzó a realizar 15 de marzo de 2021
un seguimiento de los cambios un seguimiento de los cambios
de las políticas administradas por
AWS.

Creación de políticas administradas por el cliente para


AWS Cloud9
Si ninguna de las políticas administradas por AWS satisface sus requisitos de control de acceso, puede
crear y adjuntar sus propias políticas administradas por el cliente.

557
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

Para obtener instrucciones sobre cómo crear una política administrada por el cliente, consulte Crear una
política de IAM (Consola) en la Guía del usuario de IAM.

Temas
• Especificar elementos de política: efectos, entidades principales, acciones y recursos (p. 558)
• Ejemplos de políticas administradas por el cliente (p. 558)

Especificar elementos de política: efectos, entidades principales,


acciones y recursos
Para cada recurso de AWS Cloud9, el servicio define un conjunto de operaciones de API. Para conceder
permisos para estas operaciones de API, AWS Cloud9 define un conjunto de acciones que usted puede
especificar en una política.

A continuación, se indican los elementos básicos de la política:

• Effect: especifique el efecto (permitir o denegar) cuando el usuario solicite la acción específica. Si
no concede acceso de forma explícita (permitir) a un recurso, el acceso se deniega implícitamente.
También puede denegar explícitamente el acceso a un recurso. Puede hacerlo para asegurarse de que
un usuario no tenga acceso a un recurso, aunque otra política se lo conceda.
• Principal: en las políticas basadas en identidad (políticas de IAM), el usuario al que se adjunta esta
política es la entidad principal implícita. Para las políticas basadas en recursos, debe especificar el
usuario, cuenta, servicio u otra entidad que desee que reciba permisos.
• Resource: use un ARN para identificar el recurso al que se aplica la política.
• Action: use palabras de clave de acción para identificar las operaciones de recursos que desea permitir
o denegar. Por ejemplo, el permiso cloud9:CreateEnvironmentEC2 concede al usuario permiso
para realizar la operación CreateEnvironmentEC2.

Para obtener más información acerca de la sintaxis y las descripciones de las políticas de IAM, consulte
Referencia de políticas JSON de IAM en la Guía del usuario de IAM.

Para ver una tabla con todas las acciones de API de AWS Cloud9 y los recursos a los que se aplican,
consulte Referencia de permisos de AWS Cloud9 (p. 565).

Ejemplos de políticas administradas por el cliente


En esta sección, encontrará ejemplos de políticas que conceden permisos para acciones de AWS Cloud9.
Puede adaptar las siguientes políticas de IAM de ejemplo para permitir o denegar explícitamente a sus
identidades de IAM el acceso a AWS Cloud9.

Para crear o adjuntar una política administrada por el cliente a una identidad de IAM, consulte Crear una
política de IAM (Consola) y Conexión de políticas de IAM (Consola), en la Guía del usuario de IAM.
Note

En los siguientes ejemplos se utiliza la región EE. UU. Este (Ohio) (us-east-2), un ID de
cuenta de AWS ficticio (123456789012) y un ID de entorno de desarrollo de AWS Cloud9 ficticio
(81e900317347585a0601e04c8d52eaEX).

Temas
• Obtener información sobre entornos (p. 559)
• Crear entornos de EC2 (p. 559)

558
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

• Crear entornos de EC2 con tipos de instancias de Amazon EC2 específicas (p. 560)
• Crear entornos de EC2 en subredes de Amazon VPC específicas (p. 560)
• Crear entornos de EC2 con un nombre de entorno específico (p. 561)
• Crear entornos de SSH únicamente (p. 561)
• Actualizar entornos o impedir la actualización de un entorno (p. 561)
• Obtener listas de los miembros de un entorno (p. 562)
• Compartir entornos con un usuario específico únicamente (p. 562)
• Impedir compartir entornos (p. 563)
• Cambiar o evitar el cambio, de la configuración de miembros del entorno (p. 563)
• Eliminar o impedir la eliminación, de los miembros de entorno (p. 564)
• Eliminar o impedir la eliminación de un entorno (p. 564)

Obtener información sobre entornos


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad obtenga información sobre cualquier entorno de su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DescribeEnvironments",
"Resource": "*"
}
]
}

Note

El permiso de acceso anterior ya se incluye en las políticas administradas por AWS,


AWSCloud9Administrator y AWSCloud9User.

Crear entornos de EC2


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cree entornos de desarrollo de EC2 de AWS Cloud9 en su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}

Note

El permiso de acceso anterior ya se incluye en las políticas administradas por AWS,


AWSCloud9Administrator y AWSCloud9User.

559
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

Crear entornos de EC2 con tipos de instancias de Amazon EC2 específicas


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cree entornos de desarrollo de EC2 de AWS Cloud9 en su cuenta. Sin embargo, los entornos de
EC2 solo pueden usar la clase especificada de tipos de instancias de Amazon EC2.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:InstanceType": "t3.*"
}
}
}
]
}

Note

Si la política administrada por AWS AWSCloud9Administrator o AWSCloud9User ya está


adjunta a la entidad de IAM, esa política administrada por AWS sobrescribirá el comportamiento
de la instrucción de la política de IAM anterior. Esto se debe a que esas políticas administradas de
AWS son más permisivas.

Crear entornos de EC2 en subredes de Amazon VPC específicas


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cree entornos de desarrollo de EC2 de AWS Cloud9 en su cuenta. Sin embargo, los entornos de
EC2 solo pueden utilizar subredes de Amazon VPC especificadas.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:SubnetId": [
"subnet-12345678",
"subnet-23456789"
]
}
}
}
]
}

Note

Si la política administrada por AWS AWSCloud9Administrator o AWSCloud9User ya está


adjunta a la entidad de IAM, esa política administrada por AWS sobrescribirá el comportamiento
de la instrucción de la política de IAM anterior. Esto se debe a que esas políticas administradas de
AWS son más permisivas.

560
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

Crear entornos de EC2 con un nombre de entorno específico


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cree un entorno de desarrollo de EC2 de AWS Cloud9 en su cuenta. Sin embargo, el entorno de
EC2 solo puede utilizar el nombre especificado.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:EnvironmentName": "my-demo-environment"
}
}
}
]
}

Note

Si la política administrada por AWS AWSCloud9Administrator o AWSCloud9User ya está


adjunta a la entidad de IAM, esa política administrada por AWS sobrescribirá el comportamiento
de la instrucción de la política de IAM anterior. Esto se debe a que esas políticas administradas de
AWS son más permisivas.

Crear entornos de SSH únicamente


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cree entornos de desarrollo de SSH de AWS Cloud9 en su cuenta. Sin embargo, la entidad no
puede crear entornos de desarrollo de EC2 de AWS Cloud9.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentSSH",
"Resource": "*"
},
{
"Effect": "Deny",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}

Actualizar entornos o impedir la actualización de un entorno


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cambie información sobre cualquier entorno de desarrollo de AWS Cloud9 en su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{

561
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

"Effect": "Allow",
"Action": "cloud9:UpdateEnvironment",
"Resource": "*"
}
]
}

Note

Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator.

La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad cambie información sobre el entorno con el ARN especificado.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:UpdateEnvironment",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}

Obtener listas de los miembros de un entorno


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad obtenga una lista de los miembros de cualquier entorno en su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DescribeEnvironmentMemberships",
"Resource": "*"
}
]
}

Note

Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator. Además, el permiso de acceso anterior es más permisivo que el
permiso equivalente de la política administrada por AWS AWSCloud9User.

Compartir entornos con un usuario específico únicamente


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad comparta cualquier entorno en su cuenta solo con el usuario especificado.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [

562
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

"cloud9:CreateEnvironmentMembership"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:UserArn": "arn:aws:iam::123456789012:user/MyDemoUser"
}
}
}
]
}

Note

Si la política administrada por AWS AWSCloud9Administrator o AWSCloud9User ya


está adjunta a la entidad de IAM, esas políticas administradas por AWS sobrescribirán el
comportamiento de la instrucción de la política de IAM anterior. Esto se debe a que esas políticas
administradas de AWS son más permisivas.

Impedir compartir entornos


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide que dicha
entidad comparta ningún entorno en su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"cloud9:CreateEnvironmentMembership",
"cloud9:UpdateEnvironmentMembership"
],
"Resource": "*"
}
]
}

Cambiar o evitar el cambio, de la configuración de miembros del entorno


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad cambie la configuración de los miembros de cualquier entorno en su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:UpdateEnvironmentMembership",
"Resource": "*"
}
]
}

Note

El permiso de acceso anterior ya se incluye en la política administrada por AWS


AWSCloud9Administrator.

La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad cambie la configuración de los miembros del entorno con el ARN especificado.

563
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:UpdateEnvironmentMembership",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}

Eliminar o impedir la eliminación, de los miembros de entorno


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad elimine cualquier miembro de cualquier entorno de su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DeleteEnvironmentMembership",
"Resource": "*"
}
]
}

Note

El permiso de acceso anterior ya se incluye en la política administrada por AWS


AWSCloud9Administrator.

La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad elimine ningún miembro del entorno con el ARN especificado.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:DeleteEnvironmentMembership",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}

Eliminar o impedir la eliminación de un entorno


La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, permite que dicha
entidad elimine cualquier entorno de su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DeleteEnvironment",

564
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9

"Resource": "*"
}
]
}

Note

El permiso de acceso anterior ya se incluye en la política administrada por AWS


AWSCloud9Administrator.

La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad elimine el entorno con el ARN especificado.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:DeleteEnvironment",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}

Referencia de permisos de AWS Cloud9


Puede utilizar claves de condiciones generales de AWS en sus políticas de AWS Cloud9 para expresar
condiciones. Para obtener una lista, consulte Elemento de la política de JSON de IAM: Condition en la
Guía del usuario de IAM.

Las acciones se especifican en el campo Action de la política. Para especificar una acción,
use el prefijo cloud9: seguido del nombre de operación de la API (por ejemplo, "Action":
"cloud9:DescribeEnvironments"). Para especificar varias acciones en una única instrucción,
sepárelas con comas (por ejemplo, "Action": [ "cloud9:UpdateEnvironment",
"cloud9:DeleteEnvironment" ]).

Uso de caracteres comodín


Debe especificar un ARN, con o sin un carácter comodín (*), como el valor del recurso en el campo de la
política Resource. Puede utilizar un carácter comodín para especificar varias acciones o recursos. Por
ejemplo, cloud9:* especifica todas las acciones de AWS Cloud9 y cloud9:Describe* especifica todas
las acciones de AWS Cloud9 que comienzan por la palabra Describe.

En el siguiente ejemplo se permite que una entidad de IAM obtenga información acerca de los entornos y
las pertenencias a los entornos de cualquier entorno de su cuenta.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:Describe*"
],
"Resource": "*"
}
]

565
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9

Note

Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator. Observe también que el permiso de acceso anterior es más
permisivo que el permiso equivalente de la política administrada por AWS AWSCloud9User.

Operaciones de la API de AWS Cloud9 y permisos necesarios


para las acciones
Note

Puede usar las tablas siguientes como referencia cuando configure políticas de permisos de
control de acceso y de escritura para adjuntarlas a una identidad de IAM (políticas basadas en
identidades).
En la tabla Public API operations se enumeran las operaciones de la API a las que los clientes
pueden llamar mediante los SDK y AWS Command Line Interface.
En Permission-only API operations se enumeran las operaciones de la API a las que el código
del cliente o AWS Command Line Interface no pueden llamar directamente. No obstante, los
usuarios de IAM requieren permisos para estas operaciones a las que se llama cuando se
realizan acciones de AWS Cloud9 mediante la consola.

Operaciones de la API públicas

Operación de AWS Cloud9 Permisos necesarios (acción de Recurso


la API)

CreateEnvironmentEC2 cloud9:CreateEnvironmentEC2*

Necesario para crear un entorno


de desarrollo de EC2 de AWS
Cloud9.

CreateEnvironmentMembershipcloud9:CreateEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesario para agregar un


miembro a un entorno.

DeleteEnvironment cloud9:DeleteEnvironment arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesaria para eliminar un


entorno.

DeleteEnvironmentMembershipcloud9:DeleteEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesario para eliminar un


miembro de un entorno.

DescribeEnvironmentMemberships
cloud9:DescribeEnvironmentMemberships
*

Necesario para obtener una lista


de miembros de entorno.

DescribeEnvironments cloud9:DescribeEnvironmentsarn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesario para obtener


información sobre un entorno.

DescribeEnvironmentStatus cloud9:DescribeEnvironmentStatus
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

566
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9

Operación de AWS Cloud9 Permisos necesarios (acción de Recurso


la API)
Necesario para obtener
información sobre el estado de
un entorno.

UpdateEnvironment cloud9:UpdateEnvironment arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesario para actualizar la


configuración de un entorno.

UpdateEnvironmentMembershipcloud9:UpdateEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:

Necesario para actualizar la


configuración de un miembro de
un entorno.

Operaciones de la API de solo permiso

Operación de AWS Cloud9 Descripción Documentación de la consola

ActivateEC2Remote cloud9:ActivateEC2Remote Apertura de un entorno en AWS


Cloud9 (p. 78)
Inicia la instancia de Amazon
EC2 a la que se conecta su IDE
de AWS Cloud9.

CreateEnvironmentSSH cloud9:CreateEnvironmentSSHCreación de un entorno de


SSH (p. 65)
Crea un entorno de desarrollo de
SSH de AWS Cloud9

CreateEnvironmentToken cloud9:CreateEnvironmentToken Creación de un entorno de


EC2 (p. 54)
Crea un token de autenticación
que permite una conexión entre
el IDE de AWS Cloud9 y el
entorno del usuario.

DescribeEC2Remote cloud9:DescribeEC2Remote Creación de un entorno de


EC2 (p. 54)
Obtiene detalles sobre la
conexión al entorno de desarrollo
de EC2, incluidos el anfitrión, el
usuario y el puerto.

DescribeSSHRemote cloud9:DescribeSSHRemote Creación de un entorno de


SSH (p. 65)
Obtiene detalles sobre la
conexión al entorno de desarrollo
de SSH, incluidos el anfitrión, el
usuario y el puerto.

GetEnvironmentConfig cloud9:GetEnvironmentConfigTrabajo con el entorno de


desarrollo integrado (IDE) de
Obtiene la información de AWS Cloud9 (p. 115)
configuración que se utiliza para
inicializar el IDE de AWS Cloud9.

567
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9

Operación de AWS Cloud9 Descripción Documentación de la consola

GetEnvironmentSettings cloud9:GetEnvironmentSettings Trabajo con el entorno de


desarrollo integrado (IDE) de
Obtiene la configuración del IDE AWS Cloud9 (p. 115)
de AWS Cloud9 para un entorno
de desarrollo especificado.

GetMembershipSettings cloud9:GetMembershipSettings Trabajo con entornos


compartidos en AWS
Obtiene la configuración del IDE Cloud9 (p. 92)
de AWS Cloud9 para un miembro
del entorno especificado.

GetUserPublicKey cloud9:GetUserPublicKey Creación de un entorno de


SSH (p. 65)
Obtiene la clave SSH pública del
usuario, que AWS Cloud9 utiliza
para conectarse a entornos de
desarrollo de SSH.

GetUserSettings cloud9:GetUserSettings Trabajo con el entorno de


desarrollo integrado (IDE) de
Obtiene la configuración del IDE AWS Cloud9 (p. 115)
de AWS Cloud9 para un usuario
especificado.

ModifyTemporaryCredentialsOnEnvironmentEC2 Credenciales temporales


cloud9:ModifyTemporaryCredentialsOnEnvironmentEC2
administradas por
Establece las credenciales AWS (p. 569)
temporales administradas por
AWS en la instancia de Amazon
EC2 utilizada por el entorno de
desarrollo integrado (IDE) de
AWS Cloud9.

UpdateEnvironmentSettings cloud9:UpdateEnvironmentSettings Trabajo con el entorno de


desarrollo integrado (IDE) de
Actualiza la configuración del IDE AWS Cloud9 (p. 115)
de AWS Cloud9 para un entorno
de desarrollo especificado.

UpdateMembershipSettings cloud9:UpdateMembershipSettings Trabajo con entornos


compartidos en AWS
Actualiza la configuración del IDE Cloud9 (p. 92)
de AWS Cloud9 para un miembro
del entorno especificado.

UpdateSSHRemote cloud9:UpdateSSHRemote Creación de un entorno de


SSH (p. 65)
Actualiza los detalles sobre la
conexión al entorno de desarrollo
de SSH, incluidos el anfitrión, el
usuario y el puerto.

UpdateUserSettings cloud9:UpdateUserSettings Trabajo con el entorno de


desarrollo integrado (IDE) de
Actualiza la configuración del IDE AWS Cloud9 (p. 115)
de AWS Cloud9 para un usuario
especificado.

568
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS

Operación de AWS Cloud9 Descripción Documentación de la consola

ValidateEnvironmentName cloud9:ValidateEnvironmentName Creación de un entorno de


EC2 (p. 54)
Valida el nombre del entorno
durante el proceso de creación
de un entorno de desarrollo de
AWS Cloud9.

Credenciales temporales administradas por AWS


Si solo busca la lista de acciones que admiten las credenciales temporales administradas por AWS, vaya
directamente a Acciones admitidas por las credenciales temporales administradas por AWS (p. 570).

Para un entorno de desarrollo de EC2 de AWS Cloud9, AWS Cloud9 pones las credenciales de
acceso temporales de AWS a su disposición en el entorno. Las denominamos credenciales temporales
administradas por AWS. Esto proporciona los siguientes beneficios:

• No es necesario almacenar las credenciales de acceso de AWS permanentes de una entidad de AWS
(por ejemplo, un usuario de IAM) en cualquier lugar del entorno. Esto impide que los miembros del
entorno accedan a esas credenciales sin su conocimiento y aprobación.
• No es necesario configurar, administrar ni adjuntar manualmente un perfil de instancias a la instancia
de Amazon EC2 que se conecta al entorno. (Un perfil de instancia es otra estrategia para administrar
credenciales temporales de acceso a AWS).
• AWS Cloud9 renueva constantemente sus credenciales temporales, por lo que un único conjunto de
credenciales solo se puede utilizar durante un tiempo limitado. Esta es una práctica recomendada de
seguridad de AWS. Para obtener más información, consulte Creación y actualización de credenciales
temporales administradas por AWS (p. 572) .
• AWS Cloud9 pone restricciones adicionales sobre cómo se pueden usar las credenciales temporales
para acceder a los recursos y las acciones de AWS desde el entorno. Esta también es una práctica
recomendada de seguridad de AWS.

Important

Actualmente, si la instancia de EC2 de su entorno se lanza en una subred privada, no puede usar
credenciales temporales administradas por AWS para permitir que el entorno de EC2 acceda a un
servicio de AWS en nombre de una entidad de AWS (un usuario de IAM, por ejemplo).
Para obtener más información sobre cuándo puede lanzar una instancia de EC2 en una subred
privada, consulte Crear una subred para AWS Cloud9 (p. 513).

A continuación, se explica cómo funcionan las credenciales temporales administradas por AWS cuando un
entorno de EC2 intenta acceder a un servicio de AWS en nombre de una entidad de AWS (por ejemplo, un
usuario de IAM):

1. AWS Cloud9 verifica si la entidad de AWS que llama (por ejemplo, el usuario de IAM) tiene permisos
para llevar a cabo la acción solicitada para el recurso solicitado en AWS. Si el permiso no existe o se
deniega explícitamente, la solicitud produce un error.
2. AWS Cloud9 verifica las credenciales temporales administradas por AWS para ver si sus permisos
permiten la acción solicitada para el recurso solicitado en AWS. Si el permiso no existe o se deniega
explícitamente, la solicitud produce un error. Para ver una lista de los permisos que admiten las
credenciales temporales administradas por AWS, consulte Acciones admitidas por las credenciales
temporales administradas por AWS (p. 570).

569
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS

• Si tanto la entidad de AWS como las credenciales temporales administradas por AWS permiten la acción
solicitada para el recurso solicitado, la solicitud se realiza correctamente.
• Si la entidad de AWS o las credenciales temporales administradas por AWS deniegan explícitamente
(o no aprueban de forma explícita) la acción solicitada para el recurso solicitado, la solicitud generará
un error. Esto significa que, aunque la entidad de AWS que llama tenga los permisos adecuados, se
producirá un error en la solicitud si AWS Cloud9 no lo permite también explícitamente. Del mismo modo,
si AWS Cloud9 permite que un recurso específico realice una acción específica, se producirá un error en
la solicitud si la entidad de AWS no lo permite también explícitamente.

El propietario de un entorno de EC2 puede activar o desactivar las credenciales temporales administradas
por AWS para ese entorno en cualquier momento, como se indica a continuación:

1. Con el entorno abierto, en el IDE de AWS Cloud9, en la barra de menú, elija AWS Cloud9, Preferences
(Preferencias).
2. En la pestaña Preferences (Preferencias), en el panel de navegación, elija AWS Settings, Credentials
(Configuración de AWS, Credenciales).
3. Use credenciales temporales administradas por AWS para activar o desactivar dichas credenciales de
AWS.

Note

También puede activar o desactivar las credenciales temporales administradas por AWS mediante
la llamada a la operación de la API UpdateEnvironment de AWS Cloud9 y asignar un valor
al parámetro managedCredentialsAction. Puede solicitar esta operación de API utilizando
herramientas de AWS estándar como AWS SDK y la AWS CLI.

Si desactiva las credenciales temporales administradas por AWS, de forma predeterminada el entorno no
puede acceder a los servicios de AWS, independientemente de la entidad de AWS que realice la solicitud.
Si no puede o no quiere activar las credenciales temporales administradas por AWS para un entorno, pero
aún necesita el entorno para acceder a los servicios de AWS, tenga en cuenta las siguientes alternativas:

• Adjunte un perfil de instancias a la instancia de Amazon EC2 que se conecta al entorno. Para ver
instrucciones, consulte la sección sobre la creación y uso de un perfil de instancia para administrar
credenciales temporales (p. 83).
• Almacene las credenciales de acceso de AWS permanentes en el entorno, por ejemplo, configurando
variables de entorno especiales o ejecutando el comando aws configure. Para obtener instrucciones,
consulte Crear y almacenar las credenciales de acceso permanente en un entorno (p. 86).

Las alternativas anteriores anulan todos los permisos permitidos (o denegados) por las credenciales
temporales administradas por AWS en un entorno de EC2.

Acciones admitidas por las credenciales temporales


administradas por AWS
Para un entorno de desarrollo de EC2 de AWS Cloud9, las credenciales temporales administradas por
AWS permiten todas las acciones de AWS a todos los recursos de AWS en la cuenta de AWS de la
persona que llama, con las siguientes restricciones:

• Para AWS Cloud9, solo se permiten las siguientes acciones:


• cloud9:CreateEnvironmentEC2
• cloud9:CreateEnvironmentSSH
• cloud9:DescribeEnvironmentMemberships
• cloud9:DescribeEnvironments

570
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS

• cloud9:DescribeEnvironmentStatus
• cloud9:UpdateEnvironment
• Para IAM, solo se permiten las siguientes acciones:
• iam:AttachRolePolicy
• iam:ChangePassword
• iam:CreatePolicy
• iam:CreatePolicyVersion
• iam:CreateRole
• iam:CreateServiceLinkedRole
• iam:DeletePolicy
• iam:DeletePolicyVersion
• iam:DeleteRole
• iam:DeleteRolePolicy
• iam:DeleteSSHPublicKey
• iam:DetachRolePolicy
• iam:GetInstanceProfile
• iam:GetPolicy
• iam:GetPolicyVersion
• iam:GetRole
• iam:GetRolePolicy
• iam:GetSSHPublicKey
• iam:GetUser
• iam:List*
• iam:PassRole
• iam:PutRolePolicy
• iam:SetDefaultPolicyVersion
• iam:UpdateAssumeRolePolicy
• iam:UpdateRoleDescription
• iam:UpdateSSHPublicKey
• iam:UploadSSHPublicKey
• Todas las acciones de IAM que interactúan con roles se permiten solo para nombres de rol que
comienzan por Cloud9-. Sin embargo, iam:PassRole funciona con todos los nombres de rol.
• Para AWS Security Token Service (AWS STS), solo se permiten las siguientes acciones:
• sts:GetCallerIdentity
• sts:DecodeAuthorizationMessage
• Todas las acciones de AWS admitidas se limitan a la dirección IP del entorno. Esta es una práctica
recomendada de seguridad de AWS.

Si AWS Cloud9 no admite una acción o un recurso para el que el entorno de EC2 necesita acceso o si las
credenciales temporales administradas por AWS están desactivadas para un entorno de EC2 y no puede
volver a activarlas, tenga en cuenta las siguientes alternativas:

• Adjunte un perfil de instancias a la instancia de Amazon EC2 que se conecta al entorno de EC2. Para
obtener instrucciones, consulte Creación y uso de un perfil de instancias para administrar credenciales
temporales (p. 83).
571
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS

• Almacene las credenciales de acceso de AWS permanentes en el entorno de EC2, por ejemplo,
configurando variables de entorno especiales o ejecutando el comando aws configure. Para obtener
instrucciones, consulte Crear y almacenar las credenciales de acceso permanente en un entorno (p. 86).

Las alternativas anteriores anulan todos los permisos permitidos (o denegados) por las credenciales
temporales administradas por AWS en un entorno de EC2.

Creación y actualización de credenciales temporales administradas por AWS


Para un entorno de desarrollo de EC2 de AWS Cloud9, las credenciales temporales administradas por
AWS se crean la primera vez que abre el entorno.

Las credenciales temporales administradas por AWS se actualizan en cualquiera de las siguientes
condiciones:

• Siempre que pase un determinado periodo de tiempo. Actualmente, esto es cada cinco minutos.
• Cada vez que se vuelve a cargar la pestaña del navegador web, que muestra el IDE del entorno.
• Cuando se alcanza la marca temporal que se muestra en el archivo ~/.aws/credentials para el
entorno.
• Si la configuración de las credenciales temporales administradas por AWS está desactivada, cuando
vuelve a activarla. (Para ver o cambiar esta configuración, elija AWS Cloud9, Preferences [AWS Cloud9,
Preferencias] en la barra de menús del IDE. En la pestaña Preferences [Preferencias], en el panel de
navegación, elija AWS Settings, Credentials [Configuración de AWS, Credenciales]).
• Para garantizar la seguridad, las credenciales temporales administradas por AWS caducan
automáticamente después de 15 minutos. Para que se actualicen las credenciales, el propietario
del entorno debe estar conectado al entorno de AWS Cloud9 a través del IDE. Para obtener más
información sobre el rol del propietario del entorno, consulteControl del acceso a las credenciales
temporales administradas por AWS (p. 572).

Control del acceso a las credenciales temporales administradas por AWS


Un colaborador con credenciales temporales administradas por AWS puede utilizar AWS Cloud9 para
interactuar con otros servicios de AWS. Para asegurarse de que solo los colaboradores de confianza
dispongan de credenciales temporales administradas por AWS, dichas credenciales se desactivan si
alguien que no es el propietario del entorno agrega un nuevo miembro. (Las credenciales se desactivan
mediante la eliminación del archivo ~/.aws/credentials).
Important

Las credenciales temporales administradas por AWS también caducan automáticamente cada
de 15 minutos. Para que las credenciales se actualicen y los colaboradores puedan seguir
utilizándolas, el propietario del entorno debe estar conectado al entorno de AWS Cloud9 a través
del IDE.

Solo el propietario del entorno puede volver a habilitar las credenciales temporales administradas por
AWS para que puedan compartirse con otros miembros. Cuando el propietario del entorno abre el IDE, un
cuadro de diálogo confirma que las credenciales temporales administradas por AWS están desactivadas.
El propietario del entorno puede volver a habilitar las credenciales o mantenerlas desactivadas para todos
los miembros.
Warning

Para cumplir con las prácticas de seguridad recomendadas, mantenga desactivadas las
credenciales temporales administradas si no está seguro de la identidad del último usuario
agregado al entorno. Puede verificar la lista de miembros con permisos de lectura/escritura en la
ventana Collaborate (p. 99) (Colaborar).

572
AWS Cloud9 Guía del usuario
Registro y monitoreo

Registro y monitoreo en AWS Cloud9


Monitoreo de la actividad con CloudTrail
AWS Cloud9 se integra con AWS CloudTrail, un servicio que proporciona un registro de las acciones
hechas por un usuario, un rol o un servicio de AWS en AWS Cloud9. CloudTrail captura las llamadas a la
API de AWS Cloud9 como eventos. Las llamadas capturadas incluyen las llamadas realizadas desde la
consola de AWS Cloud9 y las llamadas de código a las API de AWS Cloud9.

Si crea un registro de seguimiento, puede habilitar la entrega continua de eventos de CloudTrail a un


bucket de Amazon Simple Storage Service (Amazon S3), incluidos los eventos para AWS Cloud9.

Si no configura un registro de seguimiento, puede ver los eventos más recientes de la consola de
CloudTrail en el Event history (Historial de eventos). Mediante la información recopilada por CloudTrail,
puede determinar la solicitud que se realizó a AWS Cloud9, la dirección IP desde la que se realizó, quién la
realizó y cuándo, etc.

Para obtener más información, consulte Registro de llamadas a la API de AWS Cloud9 con AWS
CloudTrail (p. 528) .

Supervisión del rendimiento del entorno EC2


Si utiliza un entorno de desarrollo de EC2 de AWS Cloud9, puede monitorear la fiabilidad, la disponibilidad
y el rendimiento de la instancia de Amazon EC2 asociada. Con el monitoreo del estado de las instancias,
por ejemplo, puede determinar rápidamente si Amazon EC2 ha detectado algún problema que pudiera
impedir a las instancias ejecutar aplicaciones.

Para obtener más información, consulte Monitoreo de Amazon EC2 en la Guía del usuario de Amazon EC2
para instancias de Linux.

Validación de la conformidad en AWS Cloud9


Los auditores externos evalúan la seguridad y la conformidad de los servicios de AWS en distintos
programas de conformidad de AWS.

AWS Cloud9 está en el ámbito con muchos programas de conformidad:

SOC
Los informes de Controles del Sistema y Organizaciones (SOC) de AWS son informes de análisis
independientes de terceros que muestran cómo AWS logra los controles y objetivos clave de conformidad.

Servicio SDK SOC 1,2,3

AWS Cloud9 cloud9 ✓

PCI
La norma de seguridad de datos del sector de pagos con tarjeta (PCI DSS) es un estándar registrado de
seguridad de información administrado por el Consejo de Estándares de Seguridad de PCI, que fundaron
American Express, Discover Financial Services, JCB International, MasterCard Worldwide y Visa Inc.

573
AWS Cloud9 Guía del usuario
Validación de conformidad

Servicio SDK PCI

AWS Cloud9 cloud9 ✓

FedRAMP
El Programa Federal de Administración de Riesgos y Autorizaciones (FedRAMP) es un amplio programa
gubernamental de EE. UU. que ofrece un enfoque estandarizado para la supervisión continua, la
autorización y la evaluación de la seguridad de servicios y productos en la nube.

Los servicios que se someten a la evaluación y autorización de FedRAMP tendrán el siguiente estado:

• Evaluación de una organización de terceros (3PAO): el asesor de terceros está evaluando actualmente
este servicio.
• Revisión de la Junta de Autorización Conjunta (JAB): este servicio se está sometiendo a una revisión de
la JAB.

Servicio SDK FedRAMP Moderate FedRAMP High


(East/West) (GovCloud)

AWS Cloud9 cloud9 Revisión de JAB N/A

DoD CC SRG
La Guía de requisitos de seguridad (SRG, por sus siglas en inglés) de informática en la nube del
Departamento de Defensa (DoD, por sus siglas en inglés) proporciona un proceso estandarizado de
evaluación y autorización para que los proveedores de servicios de nube (CSP) obtengan una autorización
provisional del DoD, de modo que puedan servir a los clientes del DoD.

Los servicios que se sometan a la evaluación y autorización de DoD CC SRG tendrán el siguiente estado:

• Evaluación de una organización de terceros (3PAO): el asesor de terceros está evaluando actualmente
este servicio.
• Revisión de la Junta de Autorización Conjunta (JAB): este servicio se está sometiendo a una revisión de
la JAB.
• Revisión de la Agencia de Sistemas de Información de Defensa (DISA): este servicio se encuentra
actualmente en proceso de revisión de DISA.

Servicio SDK DoD CC DoD CC DoD CC DoD CC DoD CC


SRG IL2 SRG IL2 SRG IL4 SRG IL5 SRG IL6
(East/West) (GovCloud) (GovCloud) (GovCloud) (AWS Secret
Region)

AWS Cloud9 cloud9 Revisión de N/A N/A N/A N/A


JAB

574
AWS Cloud9 Guía del usuario
Validación de conformidad

HIPAA BAA
La Ley de Portabilidad y Responsabilidad de Seguros Médicos de 1996 (HIPAA) es una ley federal que
exige la creación de estándares nacionales para proteger la información médica confidencial del paciente
para evitar que se divulgue sin el consentimiento o el conocimiento del paciente.

AWS permite a las entidades cubiertas y a sus asociados comerciales sujetos a HIPAA procesar,
almacenar y transmitir información médica protegida (PHI) de forma segura. Además, desde julio de 2013,
AWS ofrece un Apéndice de socios comerciales (BAA) estandarizado para dichos clientes

Servicio SDK HIPAA BAA

AWS Cloud9 cloud9 ✓

IRAP
El Programa de Asesores Registrados de Seguridad de la Información (IRAP) permite a los clientes del
gobierno australiano validar que existen controles apropiados y determinar el modelo de responsabilidad
adecuado para cumplir los requisitos del Manual de Seguridad de la Información (ISM) del gobierno
australiano producido por el Centro Australiano de Ciberseguridad (ACSC).

Servicio Espacio de nombres* Protección IRAP

AWS Cloud9 cloud9 ✓

*Los espacios de nombres le ayudan a identificar servicios en el entorno de AWS. Por ejemplo, al crear
políticas de IAM, trabajar con nombres de recursos de Amazon (ARN) y leer registros de AWS CloudTrail.

C5
El catálogo de controles de conformidad de computación en la nube (C5) es un esquema de certificación
respaldado por el gobierno alemán presentado en Alemania por la Oficina Federal de Seguridad de
la Información (BSI) para ayudar a las organizaciones a demostrar la seguridad operativa frente a
ciberataques comunes al utilizar servicios en la nube en el contexto de las "Recomendaciones de
seguridad para proveedores de nube" del gobierno alemán.

Servicio SDK C5

AWS Cloud9 cloud9 ✓

FINMA
FINMA es el regulador independiente de los mercados financieros de Suiza. Amazon Web Services (AWS)
ha completado el informe FINMA ISAE 3000 Tipo 2.

Servicio SDK FINMA

AWS Cloud9 cloud9 ✓

575
AWS Cloud9 Guía del usuario
Validación de conformidad

GSMA
GSM Association es una organización del sector que representa los intereses de los operadores de redes
móviles en todo el mundo. Las regiones de Europa (París) y Este de EE. UU. (Ohio) de Amazon Web
Services (AWS) están ahora certificadas por GSM Association (GSMA) en virtud de su Administración
de suscripciones de esquema de acreditación de seguridad (SAS-SM) con alcance de operaciones y
administración del centro de datos (DCOM). Esta alineación con los requisitos de GSMA demuestra el
compromiso continuo de cumplir con las mayores expectativas de los proveedores de servicios en la nube.

Servicio Este de EE. UU. (Ohio) Europa (París)

AWS Cloud9 ✓ ✓

PiTuKri
La alineación de AWS con los requisitos de PiTuKri demuestra el compromiso continuo de cumplir las
expectativas más elevadas para los proveedores de servicios en la nube establecidas por la Agencia
Finlandesa de Transportes y Comunicaciones, Traficom.

Servicio SDK PiTuKri

AWS Cloud9 cloud9 ✓

Para obtener una lista de los servicios de AWS en el ámbito de programas de conformidad específicos,
consulte Servicios de AWS en el ámbito del programa de conformidad. Para obtener información general,
consulte Programas de conformidad de AWS.

Puede descargar los informes de auditoría de terceros mediante AWS Artifact. Para obtener más
información, consulte Descarga de informes en AWS Artifact.

Su responsabilidad de conformidad al utilizar AWS Cloud9 se determina en función de la sensibilidad de


los datos, los objetivos de cumplimiento de su empresa y la legislación y los reglamentos correspondientes.
AWS proporciona los siguientes recursos para ayudar con la conformidad:

• Guías de inicio rápido de seguridad y conformidad: estas guías de implementación tratan


consideraciones sobre arquitectura y ofrecen pasos para implementar los entornos de referencia
centrados en la seguridad y la conformidad en AWS.
• Documento técnico sobre arquitectura para seguridad y conformidad de HIPAA : en este documento
técnico, se describe cómo las empresas pueden utilizar AWS para crear aplicaciones conformes con
HIPAA.
• Recursos de conformidad de AWS: este conjunto de manuales y guías podría aplicarse a su sector y
ubicación.
• Evaluación de recursos con reglas en la Guía para desarrolladores de AWS Config: el servicio AWS
Config evalúa en qué medida las configuraciones de sus recursos cumplen las prácticas internas, las
directrices del sector y las normativas.
• AWS Security Hub: este servicio de AWS proporciona una vista integral de su estado de seguridad en
AWS que le ayuda a verificar la conformidad con los estándares y las prácticas recomendadas del sector
de seguridad.

576
AWS Cloud9 Guía del usuario
Resiliencia

Resiliencia en AWS Cloud9


La infraestructura global de AWS se compone de regiones de AWS y zonas de disponibilidad de AWS.
Las regiones proporcionan varias zonas de disponibilidad físicamente independientes y aisladas que
se encuentran conectadas mediante redes con un alto nivel de rendimiento y redundancia, además de
baja latencia. Con las zonas de disponibilidad, puede diseñar y utilizar aplicaciones y bases de datos
que realizan una conmutación por error automática entre las zonas sin interrupciones. Las zonas de
disponibilidad tienen una mayor disponibilidad, tolerancia a errores y escalabilidad que las infraestructuras
tradicionales de centros de datos únicos o múltiples.

Para obtener más información sobre las regiones y zonas de disponibilidad de AWS, consulte
Infraestructura global de AWS.

Además de la infraestructura global de AWS, AWS Cloud9 es compatible con características concretas que
lo ayudan en sus necesidades de resiliencia y copia de seguridad de los datos.

• Integre AWS Cloud9 con AWS CodeCommit, un servicio de control de versiones alojado en Amazon
Web Services que puede utilizar para almacenar y administrar activos de forma privada (como
documentos, código fuente y archivos binarios) en la nube. Para obtener más información, consulte
Integrar AWS Cloud9 con AWS CodeCommit en la Guía del usuario de AWS CodeCommit.
• Use el sistema de control de versiones de Git en entornos de desarrollo de AWS Cloud9 para hacer
copias de seguridad de archivos y datos en un repositorio remoto de GitHub. Para obtener más
información, consulte Control de código fuente visual con el panel de Git (p. 315) .

Seguridad de la infraestructura en AWS Cloud9


Al tratarse de un servicio administrado, AWS Cloud9 está protegido por los procedimientos de seguridad
de red globales de AWS que se describen en el documento técnico Amazon Web Services: Información
general sobre los procesos de seguridad.

Puede utilizar llamadas a la API publicadas en AWS para obtener acceso a AWS Cloud9 a través de la
red. Los clientes deben ser compatibles con Transport Layer Security (TLS) 1.0 o una versión posterior.
Recomendamos TLS 1.2 o una versión posterior. Los clientes también deben ser compatibles con
conjuntos de cifrado con confidencialidad directa total (PFS) tales como Ephemeral Diffie-Hellman (DHE)
o Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). La mayoría de los sistemas modernos como Java 7 y
posteriores son compatibles con estos modos.

Además, las solicitudes deben estar firmadas mediante un ID de clave de acceso y una clave de acceso
secreta que esté asociada a una entidad de seguridad de IAM. También puede utilizar AWS Security
Token Service (AWS STS) para generar credenciales de seguridad temporales para firmar solicitudes.
Note

De forma predeterminada, los entornos de desarrollo de EC2 de AWS Cloud9 instalan


automáticamente parches de seguridad para los paquetes del sistema de las instancias.

Configuración y análisis de vulnerabilidades en


AWS Cloud9
Los entornos de desarrollo de AWS Cloud9 se ejecutan sobre los recursos informáticos en la nube. El
recurso informático en la nube puede ser una instancia de Amazon EC2 (para un entorno de EC2) o su
propio recurso informático en la nube (para un entorno de SSH). Estas opciones se describen en la sección
Entornos y recursos informáticos (p. 2).

577
AWS Cloud9 Guía del usuario
Prácticas recomendadas de seguridad

Important

Si la instancia de Amazon EC2 de su entorno se basa en una plantilla de AMI de Amazon


Linux 2 o Amazon Linux, las actualizaciones de seguridad se instalan en la instancia
inmediatamente después de su lanzamiento. Posteriormente, los parches de seguridad se aplican
automáticamente a la instancia cada hora. Estas actualizaciones se aplican mediante un proceso
en segundo plano y no afectan al uso de la instancia.
Para un entorno de EC2 de Ubuntu, las actualizaciones de seguridad también se instalan
en la instancia inmediatamente después de su lanzamiento. A continuación, el paquete de
unattended-upgrades instala automáticamente las actualizaciones disponibles a diario.

Independientemente del recurso informático en la nube subyacente o de la frecuencia de las


actualizaciones automáticas, sigue siendo responsabilidad del usuario de AWS Cloud9 o de su
administrador de AWS Cloud9 garantizar que el recurso informático en la nube está parcheado y
actualizado.

Para obtener más información sobre las responsabilidades de los clientes con el modelo de
responsabilidad compartida, consulte Protección de los datos en AWS Cloud9 (p. 543).

Prácticas recomendadas de seguridad para AWS


Cloud9
Las siguientes prácticas recomendadas son directrices generales y no suponen una solución de seguridad
completa. Puesto que es posible que estas prácticas recomendadas no sean adecuadas o suficientes para
el entorno, considérelas como consideraciones útiles en vez de normas.

Algunas prácticas recomendadas de seguridad para AWS Cloud9

• Almacene su código de forma segura en un sistema de control de versiones, por ejemplo, AWS
CodeCommit.
• Para sus entornos de desarrollo de EC2 de AWS Cloud9, configure y utilice volúmenes cifrados de
Amazon Elastic Block Store.
• Para sus entornos de EC2, utilice etiquetas (p. 540) para controlar el acceso a sus recursos de AWS
Cloud9.
• Para sus entornos de desarrollo de AWS Cloud9 compartidos, siga las prácticas recomendadas (p. 104)
correspondientes.

578
AWS Cloud9 Guía del usuario

Solución de problemas de AWS


Cloud9
Utilice la siguiente información como ayuda para identificar y solucionar problemas con AWS Cloud9.

Si el problema no aparece en la lista o si necesita ayuda adicional, consulte el foro de debate de AWS
Cloud9. (Cuando entre en este foro, es posible que AWS requiera que inicie sesión). También puede
ponerse en contacto con nosotros directamente.

Temas
• Error de creación del entorno: “No hemos podido crear las instancias de EC2...” (p. 580)
• Error al crear el entorno: “no dispone de autorización para sts:AssumeRole”. (p. 580)
• Error de consola: “el usuario no está autorizado para realizar la acción en el recurso” (p. 581)
• Las identidades federadas no pueden crear entornos (p. 581)
• No se puede abrir un entorno (p. 582)
• El instalador de AWS Cloud9 se bloquea o falla (p. 583)
• Error del entorno de SSH: “se precisa la versión 2.7 de Python para instalar pty.js” (p. 583)
• Aviso de vista previa de aplicaciones o vista previa de archivo: “Cookies de terceros
desactivadas” (p. 584)
• La pestaña de vista previa de la aplicación muestra un mensaje de error o está en blanco (p. 586)
• No se puede mostrar la aplicación en ejecución fuera del IDE (p. 587)
• Después de volver a cargar un entorno, es necesario actualizar la vista previa de la
aplicación (p. 589)
• No se pueden ejecutar algunos comandos o scripts en un entorno de EC2 (p. 589)
• Error de AWS CLI/aws-shell: “el token de seguridad incluido en la solicitud no es válido” en un entorno
de EC2 (p. 589)
• Las instancias de Amazon EC2 no se actualizan automáticamente (p. 590)
• Error de ejecución de la función local Lambda: no se puede instalar SAM Local (p. 590)
• Advertencia del IDE: “Este entorno se está quedando sin memoria” o “Este entorno tiene una elevada
carga de CPU” (p. 591)
• La vista previa de un archivo devuelve un error 499 (p. 592)
• Error de eliminación del entorno: “No se pudieron eliminar uno o más entornos” (p. 592)
• Advertencia de la consola: “Cambio al motor de finalización de código mínimo...” (p. 593)
• El instalador de AWS Cloud9 no finaliza después de mostrar: “Package Cloud9 IDE 1” (p. 593)
• Error de VPC para cuentas de EC2-Classic: “No se puede acceder a su entorno” (p. 594)
• No se puede abrir el entorno de AWS Cloud9: “Los colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación de las credenciales temporales administradas o contacte
con el propietario de este entorno”. (p. 595)
• Mensaje de error que notifica que el perfil de instancias AWSCloud9SSminStanceProfile no existe en la
cuenta al crear un entorno de EC2 mediante AWS CloudFormation (p. 595)
• Mensaje de error que indica que no tiene autorización para ejecutar: ssm:StartSession en el recurso al
crear un entorno de EC2 mediante AWS CloudFormation (p. 596)
• Mensaje de error que indica que no tiene autorización “para ejecutar: iam:GetInstanceProfile en el
recurso: perfil de instancias AWSCloud9SSMInstanceProfile” al crear un entorno de EC2 mediante
AWS CLI (p. 596)
• No se puede conectar al entorno de EC2 porque Docker utiliza las direcciones IP de VPC (p. 597)

579
AWS Cloud9 Guía del usuario
Error de creación del entorno: “No hemos
podido crear las instancias de EC2...”

• Error al ejecutar AWS Toolkit, que indica que el entorno se está quedando sin inodes y que se debe
aumentar el límite de “fs.inotify.max_user_watches”. (p. 597)
• Aviso: error al instalar dependencias para el soporte de colaboración (p. 598)
• Error con gdb al depurar proyectos de C++ (p. 598)
• Error al ejecutar aplicaciones SAM localmente en AWS Toolkit porque el entorno de AWS Cloud9 no
tiene suficiente espacio en disco (p. 599)
• No se puede cargar el IDE con versiones anteriores del navegador Microsoft Edge (p. 600)
• Error al crear un entorno cuando se aplica el cifrado predeterminado a volúmenes de Amazon
EBS (p. 600)
• No se puede obtener una vista previa del contenido web en el IDE porque la conexión al sitio no es
segura (p. 601)
• No se puede lanzar AWS Cloud9 desde la consola cuando la configuración de licencias AWS License
Manager está asociada a instancias de Amazon EC2 (p. 601)
• No se puede interactuar con la ventana de terminal en AWS Cloud9 debido a errores de sesión de
tmux (p. 602)

Error de creación del entorno: “No hemos podido


crear las instancias de EC2...”
Problema: cuando intenta crear un entorno de desarrollo de AWS Cloud9, aparece un mensaje con la
frase “No hemos podido crear las instancias de EC2 en su cuenta durante la verificación y activación de la
cuenta”.

Causa: AWS está verificando y activando actualmente su cuenta de AWS. Hasta que no se complete la
activación, que puede tardar hasta 24 horas, no puede crear este u otros entornos.

Solución: vuelva a intentar crear el entorno más adelante. Si después de 24 horas sigue recibiendo
este mensaje, envíe un correo electrónico a [email protected]. Tenga en cuenta que AWS
CloudFormation crea una pila relacionada en su cuenta, aunque se produzca un error en el intento de
crear un entorno. Estas pilas cuentan en el límite de creación de pilas de su cuenta. Para evitar el límite
de creación de pilas, puede eliminar de forma segura estas pilas con error. Para obtener más información,
consulte Eliminación de una pila en la consola de AWS CloudFormation en la Guía del usuario de AWS
CloudFormation.

(Volver arriba (p. 579))

Error al crear el entorno: “no dispone de


autorización para sts:AssumeRole”.
Problema: al intentar crear un nuevo entorno, verá un error que indica que no dispone de autorización para
sts:AssumeRole, y no se creará el entorno.

Causas posibles: no existe un rol vinculado al servicio de AWS Cloud9 en su cuenta de AWS.

Soluciones recomendadas: cree un rol vinculado al servicio de AWS Cloud9 en su cuenta de AWS
ejecutando el siguiente comando con la AWS Command Line Interface (AWS CLI) o el aws-shell.

aws iam create-service-linked-role --aws-service-name cloud9.amazonaws.com # For the AWS


CLI.
iam create-service-linked-role --aws-service-name cloud9.amazonaws.com # For the aws-
shell.

580
AWS Cloud9 Guía del usuario
Error de consola: “el usuario no está autorizado
para realizar la acción en el recurso”

Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.

Después de ejecutar este comando, vuelva a intentar crear el entorno.

(Volver arriba (p. 579))

Error de consola: “el usuario no está autorizado


para realizar la acción en el recurso”
Problema: cuando intenta utilizar la consola de AWS Cloud9 para crear o administrar un
entorno de desarrollo de AWS Cloud9, aparece un error que contiene una frase similar a “User
arn:aws:iam::123456789012:user/MyUser is not authorized to perform cloud9:action on resource
arn:aws:cloud9:us-east-2:123456789012:environment:12a34567b8cd9012345ef67abcd890e1” (El usuario
arn:aws:iam::123456789012:user/MyUser no está autorizado a realizar cloud9:action en el recurso
arn:aws:cloud9:us-east-2:123456789012:environment:12a34567b8cd9012345ef67abcd890e1), donde:

• arn:aws:iam::123456789012:user/MyUser es el nombre de recurso de Amazon (ARN) del


usuario solicitante.
• action es el nombre de la operación que el usuario solicitó.
• arn:aws:cloud9:us-
east-2:123456789012:environment:12a34567b8cd9012345ef67abcd890e1 es el ARN del
entorno que el usuario solicitó para ejecutar la operación.

Causa: el usuario con el que inició sesión en la consola de AWS Cloud9 no tiene los permisos de acceso
de AWS adecuados para realizar la acción.

Solución: asegúrese de que el usuario tenga los permisos de acceso de AWS adecuados y, a
continuación, intente realizar la acción de nuevo. Para obtener más información, consulte uno o más de los
siguientes temas:

• Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14) en Configuración de equipo
• Paso 6. Habilitar usuarios y grupos dentro de la organización para utilizar AWS Cloud9 (p. 22) en
Configuración de empresa
• Acerca de los roles de acceso de los miembros del entorno (p. 94) en Trabajo con entornos compartidos

(Volver arriba (p. 579))

Las identidades federadas no pueden crear


entornos
Problema: al tratar de utilizar una identidad federada de AWS para crear un entorno de desarrollo de AWS
Cloud9 aparece un mensaje de error de acceso y no se crea el entorno.

Causa: AWS Cloud9 utiliza roles vinculados a un servicio. El rol vinculado al servicio se crea la primera
vez que se crea un entorno en una cuenta utilizando la llamada iam:CreateServiceLinkedRole.
Sin embargo, los usuarios federados no pueden llamar a las API de IAM. Para obtener más información,
consulte GetFederationToken en la Referencia de la API de AWS Security Token Service.

Solución: pida al administrador de la cuenta de AWS que cree el rol vinculado al servicio para AWS Cloud9
bien en la consola de IAM o ejecutando este comando con AWS Command Line Interface (AWS CLI):

581
AWS Cloud9 Guía del usuario
No se puede abrir un entorno

aws iam create-service-linked-role --aws-service-name cloud9.amazonaws.com

O bien este comando con aws-shell:

iam create-service-linked-role --aws-service-name cloud9.amazonaws.com

Para obtener más información, consulte Uso de roles vinculados a servicios en la Guía del usuario de IAM.

(Volver arriba (p. 579))

No se puede abrir un entorno


Problema: al intentar abrir un entorno, el IDE no se muestra durante mucho tiempo (transcurridos al menos
cinco minutos).

Causas posibles:

• El usuario de IAM que ha iniciado sesión en la consola de AWS Cloud9 no tiene los permisos de acceso
de AWS necesarios para abrir el entorno.
• Si el entorno está asociado con una instancia de informática en la nube de AWS (por ejemplo, una
instancia de Amazon EC2):
• La VPC asociada a la instancia no se establecerá en la configuración correcta para AWS Cloud9.
• La instancia está pasando de un estado a otro o no está superando las comprobaciones de estado
automatizadas mientras AWS Cloud9 intenta conectarse a la instancia.
• Si el entorno es un entorno de SSH, la instancia de informática en la nube asociada o su propio servidor
no tienen la configuración adecuada para permitir el acceso de AWS Cloud9.

Soluciones recomendadas:

• Asegúrese de que el usuario de IAM que ha iniciado sesión en la consola de AWS Cloud9 tiene los
permisos de acceso de AWS necesarios para abrir el entorno y, a continuación, intente abrir el entorno
de nuevo. Para obtener más información, consulte los siguientes temas o consulte con el administrador
de su cuenta de AWS:
• Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14) en Configuración de equipo
• Políticas administradas por AWS para AWS Cloud9 (p. 550) en Autenticación y control de acceso
• Ejemplos de políticas administradas por el cliente para equipos que utilizan AWS Cloud9 (p. 27) en
Configuración de equipo avanzada
• Ejemplos de políticas administradas por el cliente (p. 558) en Autenticación y control de acceso
• Cambio de los permisos de un usuario de IAM en la Guía del usuario de IAM.
• Solución de problemas de políticas de IAM en la Guía del usuario de IAM

Si el usuario de IAM que ha iniciado sesión sigue sin poder abrir el entorno, podría intentar cerrar sesión
y, a continuación, iniciar sesión de nuevo como el usuario raíz de la cuenta de AWS o bien como usuario
administrador de IAM en la cuenta. A continuación, vuelva a intentar abrir el entorno. Si puede abrir
el entorno de este modo, lo más probable es que haya un problema con los permisos de acceso del
usuario de IAM.
• Si el entorno está asociado con una instancia de informática en la nube de AWS (por ejemplo, una
instancia de Amazon EC2):
• Asegúrese de que la VPC asociada a la instancia tiene la configuración correcta para AWS Cloud9 e
intente abrir el entorno de nuevo. Para obtener más información, consulte Requisitos de Amazon VPC
para AWS Cloud9 (p. 500).

582
AWS Cloud9 Guía del usuario
El instalador de AWS Cloud9 se bloquea o falla

Si la VPC asociada de la instancia de informática en la nube de AWS tiene la configuración correcta


para AWS Cloud9 y sigue sin poder abrir el entorno, el grupo de seguridad de la instancia podría estar
impidiendo el acceso a AWS Cloud9. (Solo como técnica de solución de problemas) Compruebe el
grupo de seguridad para asegurarse de que, como mínimo, se permite el tráfico SSH entrante a través
del puerto 22 para todas las direcciones IP (Anywhere o 0.0.0.0/0). Para obtener instrucciones,
consulte Descripción de los grupos de seguridad y Actualización de las reglas del grupo de seguridad
en la Guía del usuario de Amazon EC2 para instancias de Linux.

Si desea consultar pasos adicionales de resolución de problemas de VPC, vea el vídeo relacionado de
5 minutos Vídeos de AWS Knowledge Center: ¿Qué puedo comprobar si no puedo conectarme a una
instancia en una VPC? en el sitio web de YouTube.
Warning
Cuando haya terminado la solución de problemas, asegúrese de establecer las reglas de
entrada en un rango de direcciones adecuado, tal y como se describe en the section called
“Intervalos de direcciones IP de entrada con SSH” (p. 520).
• Reinicie la instancia, asegúrese de que esté en ejecución y haya superado todas las verificaciones
del sistema e intente abrir de nuevo el entorno. Para obtener más información, consulte Reinicio de
instancias y Visualización de comprobaciones de estado en la Guía del usuario de Amazon EC2 para
instancias de Linux.
• Si el entorno es un entorno de SSH, asegúrese de que la instancia de informática en la nube asociada
o su propio servidor tengan la configuración adecuada para permitir el acceso de AWS Cloud9 y, a
continuación, intente abrir el entorno de nuevo. Para obtener más información, consulte Requisitos de
anfitrión del entorno SSH (p. 515).

(Volver arriba (p. 579))

El instalador de AWS Cloud9 se bloquea o falla


Problema: cuando descarga y ejecuta el instalador de AWS Cloud9 (p. 518), se muestran uno o más
mensajes de error y el script de instalación no muestra Done.

Causa: el instalador de AWS Cloud9 ha detectado uno o más errores de los que no se puede recuperar y,
por lo tanto, se produce un error.

Solución: consulte los problemas más comunes, las posibles causas y las soluciones recomendadas en
Solución de problemas del instalador de AWS Cloud9 (p. 519).

(Volver arriba (p. 579))

Error del entorno de SSH: “se precisa la versión 2.7


de Python para instalar pty.js”
Problema: después de abrir un entorno de desarrollo de SSH de AWS Cloud9, el terminal del IDE de AWS
Cloud9 muestra un mensaje que indica que se precisa la versión 2.7 de Python para instalar pty.js.

Causa: para funcionar según lo previsto, el entorno de SSH necesita que la versión 2.7 de Python esté
instalada.

Solución: instale la versión 2.7 de Python en el entorno. Para comprobar su versión, ejecute el comando
desde la terminal de servidor python --version . Para instalar Python 2.7 en su servidor, consulte uno
de los siguientes temas:

583
AWS Cloud9 Guía del usuario
Aviso de vista previa de aplicaciones o vista previa
de archivo: “Cookies de terceros desactivadas”

• Paso 1: Instalar Python (p. 446) en la Muestra de Python.


• Sección sobre descarga de Python en el sitio web de Python y sección sobre instalación de paquetes en
la guía del usuario de empaquetado de Python.

(Volver arriba (p. 579))

Aviso de vista previa de aplicaciones o vista previa


de archivo: “Cookies de terceros desactivadas”
Problema: Cuando intenta obtener una vista previa de una aplicación (p. 167) o un archivo (p. 165),
aparece un aviso con el siguiente mensaje: “La funcionalidad de vista previa está deshabilitada porque su
navegador tiene cookies de terceros deshabilitadas”.

Causa: aunque las cookies de terceros no son necesarias para abrir el IDE de AWS Cloud9, debe habilitar
las cookies de terceros para utilizar las características de Vista previa de la aplicación o Vista previa de
archivo.

Solución: habilite las cookies de terceros en su navegador web, vuelva a cargar su IDE y, a continuación,
intente abrir la vista previa de nuevo.

• Apple Safari: Administrar cookies y datos de sitios web en Safari en el sitio web de soporte de Apple.
• Google Chrome: Cambiar las configuraciones de las cookies en Borrar, habilitar y administrar cookies en
Chrome en el sitio web de ayuda de Google Chrome.
• Internet Explorer: Bloquear o permitir cookies en Eliminar y administrar cookies en el sitio web de soporte
técnico de Microsoft.
• Microsoft Edge: bloqueo de cookies de terceros en el sitio web de soporte técnico de Microsoft.
• Mozilla Firefox: configuración Aceptar cookies de páginas web en Habilitar y deshabilitar cookies que los
sitios web utilizan para rastrear tus preferencias en el sitio web de soporte de Mozilla.
• Cualquier otro navegador web: consulte la documentación de ese navegador web.

Para habilitar las cookies de terceros solo para AWS Cloud9 (si el navegador web permite este grado de
detalle), especifique los siguientes dominios en función de la compatibilidad con las regiones de AWS en
las que desee utilizar AWS Cloud9.

AWS Región de Dominios

Este de EE. UU. (Norte de Virginia) *.vfs.cloud9.us-east-1.amazonaws.com

vfs.cloud9.us-east-1.amazonaws.com

Este de EE. UU. (Ohio) *.vfs.cloud9.us-east-2.amazonaws.com

vfs.cloud9.us-east-2.amazonaws.com

Oeste de EE. UU. (Norte de California) *.vfs.cloud9.us-west-1.amazonaws.com

vfs.cloud9.us-west-1.amazonaws.com

EE.UU. Oeste (Oregón) *.vfs.cloud9.us-west-2.amazonaws.com

vfs.cloud9.us-west-2.amazonaws.com

Africa (Cape Town) *.vfs.cloud9.af-south-1.amazonaws.com

584
AWS Cloud9 Guía del usuario
Aviso de vista previa de aplicaciones o vista previa
de archivo: “Cookies de terceros desactivadas”

AWS Región de Dominios


vfs.cloud9.af-south-1.amazonaws.com

Asia Pacific (Hong Kong) *.vfs.cloud9.ap-east-1.amazonaws.com

vfs.cloud9.ap-east-1.amazonaws.com

Asia Pacific (Mumbai) *.vfs.cloud9.ap-south-1.amazonaws.com

vfs.cloud9.ap-south-1.amazonaws.com

Asia Pacific (Osaka) *.vfs.cloud9.ap-


northeast-3.amazonaws.com

vfs.cloud9.ap-
northeast-3.amazonaws.com

Asia Pacific (Seoul) *.vfs.cloud9.ap-


northeast-2.amazonaws.com

vfs.cloud9.ap-
northeast-2.amazonaws.com

Asia Pacífico (Singapur) *.vfs.cloud9.ap-


southeast-1.amazonaws.com

vfs.cloud9.ap-
southeast-1.amazonaws.com

Asia Pacífico (Sídney) *.vfs.cloud9.ap-


southeast-2.amazonaws.com

vfs.cloud9.ap-
southeast-2.amazonaws.com

Asia Pacífico (Tokio) *.vfs.cloud9.ap-


northeast-1.amazonaws.com

vfs.cloud9.ap-
northeast-1.amazonaws.com

Canada (Central) *.vfs.cloud9.ca-


central-1.amazonaws.com

vfs.cloud9.ca-central-1.amazonaws.com

Europe (Frankfurt) *.vfs.cloud9.eu-


central-1.amazonaws.com

vfs.cloud9.eu-central-1.amazonaws.com

Europe (Ireland) *.vfs.cloud9.eu-west-1.amazonaws.com

vfs.cloud9.eu-west-1.amazonaws.com

Europa (Londres) *.vfs.cloud9.eu-west-2.amazonaws.com

vfs.cloud9.eu-west-2.amazonaws.com

585
AWS Cloud9 Guía del usuario
La pestaña de vista previa de la aplicación
muestra un mensaje de error o está en blanco

AWS Región de Dominios

Europa (Milán) *.vfs.cloud9.eu-south-1.amazonaws.com

vfs.cloud9.eu-south-1.amazonaws.com

Europe (Paris) *.vfs.cloud9.eu-west-3.amazonaws.com

vfs.cloud9.eu-west-3.amazonaws.com

Europe (Stockholm) *.vfs.cloud9.eu-north-1.amazonaws.com

vfs.cloud9.eu-north-1.amazonaws.com

Middle East (Bahrain) *.vfs.cloud9.me-south-1.amazonaws.com

vfs.cloud9.me-south-1.amazonaws.com

América del Sur (São Paulo) *.vfs.cloud9.sa-east-1.amazonaws.com

vfs.cloud9.sa-east-1.amazonaws.com

(Volver arriba (p. 579))

La pestaña de vista previa de la aplicación muestra


un mensaje de error o está en blanco
Problema: en la barra de menús del IDE, cuando elige Preview, Preview Running Application (Vista previa,
Vista previa de la aplicación en ejecución) o Tools, Preview, Preview Running Application (Herramientas,
Vista previa, Vista previa de la aplicación en ejecución) para intentar mostrar la aplicación en una pestaña
de vista previa en el IDE, la pestaña muestra un mensaje de error o aparece en blanco.

Causas posibles:

• La aplicación no se está ejecutando en el IDE.


• La aplicación no se está ejecutando mediante HTTP.
• La aplicación se está ejecutando a través de más de un puerto.
• La aplicación se está ejecutando a través de un puerto distinto de 8080, 8081 o 8082.
• La aplicación se está ejecutando con una dirección IP distinta de 127.0.0.1, localhost o 0.0.0.0.
• El puerto (8080, 8081 o 8082) no está especificado en la URL de la pestaña de vista previa.
• Su red bloquea el tráfico de entrada a los puertos 8080, 8081 o 8082.
• Está intentando ir a una dirección que contiene una IP de 127.0.0.1, localhost o 0.0.0.0. El
comportamiento integrado predeterminado del IDE de AWS Cloud9 es que intentará ir a su computadora
local, en lugar de intentar ir a la instancia o a su propio servidor que está conectado al entorno.

Soluciones recomendadas:

• Asegúrese de que la aplicación se está ejecutando en el IDE.


• Asegúrese de que la aplicación se está ejecutando mediante HTTP. Para ver algunos ejemplos en
Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Asegúrese de que la aplicación se está ejecutando solo a través de un puerto. Para ver algunos
ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).

586
AWS Cloud9 Guía del usuario
No se puede mostrar la aplicación
en ejecución fuera del IDE

• Asegúrese de que la aplicación se está ejecutando a través del puerto 8080, 8081 o 8082. Para ver
algunos ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Asegúrese de que la aplicación se está ejecutando con una dirección IP de 127.0.0.1, localhost o
0.0.0.0. Para ver algunos ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Añada :8080, :8081 o :8082 a la URL de la pestaña de vista previa.
• Asegúrese de que su red permite el tráfico de entrada a través de los puertos 8080, 8081 o 8082. Si no
puede realizar cambios en su red, consulte con el administrador de red.
• Si intenta ir a una dirección que contiene una IP de 127.0.0.1, localhost o 0.0.0.0, intente
ir a la dirección: https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-
east-2.amazonaws.com/, donde 12a34567b8cd9012345ef67abcd890e1 es el ID que AWS
Cloud9 asigna al entorno y us-east-2 es el ID de la región de AWS para el entorno. También puede
intentar ir a esta dirección fuera del IDE, pero solo funciona cuando el IDE del entorno está abierto y la
aplicación se está ejecutando en el mismo navegador web.
• Cuando esté seguro de que se cumplen todas estas condiciones, intente detener la aplicación y, a
continuación, iníciela de nuevo.
• Si detuvo la aplicación y la inició de nuevo, intente elegir otra vez Preview, Preview Running Application
(Vista previa, Vista previa de la aplicación en ejecución) o Tools, Preview, Preview Running Application
(Herramientas, Vista previa, Vista previa de la aplicación en ejecución) en la barra de menús. O bien
intente elegir el botón Refresh (Actualizar) (flecha circular) en la correspondiente pestaña de vista previa
de la aplicación, si la pestaña ya está visible.

(Volver arriba (p. 579))

No se puede mostrar la aplicación en ejecución


fuera del IDE
Problema: cuando usted u otros usuarios intentan mostrar la aplicación en ejecución en una pestaña del
navegador web fuera del IDE, la pestaña de este navegador web muestra un mensaje de error o aparece
en blanco.

Causas posibles:

• La aplicación no se está ejecutando en el IDE.


• La aplicación se está ejecutando con una dirección IP distinta de 127.0.0.1 o localhost.
• La aplicación se está ejecutando en un entorno de desarrollo de EC2 de AWS Cloud9 y uno o varios
grupos de seguridad que están asociados a la correspondiente instancia de Amazon EC2 no permiten el
tráfico de entrada a través de los protocolos, los puertos o las direcciones IP que necesita la aplicación.
• La aplicación se está ejecutando en un entorno de desarrollo de SSH de AWS Cloud9 de una instancia
de informática en la nube de AWS (por ejemplo, una instancia de Amazon EC2) y la ACL de red de la
subred en la nube virtual privada (VPC) que está asociada a la instancia correspondiente no permite el
tráfico de entrada a través de los protocolos, los puertos o las direcciones IP que necesita la aplicación.
• La URL es incorrecta.
• Se solicita la URL en la pestaña de vista previa de la aplicación en lugar de la dirección IP pública de la
instancia.
• Está intentando ir a una dirección que contiene una IP de 127.0.0.1 o localhost. Estas direcciones
IP intentarán acceder a los recursos de su computadora local en lugar de a los recursos del entorno.
• Ha cambiado la dirección IP pública de la instancia.
• La solicitud web proviene de una red privada virtual (VPN) que bloquea el tráfico a través de los
protocolos, los puertos o las direcciones IP que la aplicación necesita.

587
AWS Cloud9 Guía del usuario
No se puede mostrar la aplicación
en ejecución fuera del IDE

• La aplicación se está ejecutando en un entorno de SSH y su servidor o la red asociada no permiten el


tráfico a través de los protocolos, los puertos o las direcciones IP que la aplicación necesita.

Soluciones recomendadas:

• Asegúrese de que la aplicación se está ejecutando en el IDE.


• Asegúrese de que la aplicación no se está ejecutando con una dirección IP 127.0.0.1 o localhost.
Para ver algunos ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Si la aplicación se está ejecutando en una instancia de informática en la nube de AWS (por ejemplo,
una instancia de Amazon EC2), asegúrese de que todos los grupos de seguridad que están asociados
a la instancia correspondiente permiten el tráfico de entrada a través de los protocolos, los puertos y
las direcciones IP que necesita la aplicación. Para obtener instrucciones, consulte Paso 2: configurar
el grupo de seguridad para la instancia (p. 172) en Compartir una aplicación en ejecución a través de
internet. Consulte también Grupos de seguridad de su VPC en la Guía del usuario de Amazon VPC.
• Si la aplicación se está ejecutando en una instancia de informática en la nube de AWS y hay una ACL
de red para la subred en la VPC que está asociada a la correspondiente instancia, asegúrese de que
esta ACL de red permite el tráfico de entrada a través de los protocolos, los puertos y las direcciones
IP que necesita la aplicación. Para obtener instrucciones, consulte Paso 3: configurar la subred para la
instancia (p. 173) en Compartir una aplicación en ejecución a través de internet. Consulte también ACL
de red en la Guía del usuario de Amazon VPC.
• Asegúrese de que la URL de solicitud, incluido el protocolo (y el puerto, si debe especificarse) es
correcta. Para obtener más información, consulte Paso 4: Compartir la URL de la aplicación en
ejecución (p. 174) en Compartir una aplicación en ejecución a través de internet.
• No se recomienda solicitar una URL con el formato
https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-east-2.amazonaws.com/
(donde 12a34567b8cd9012345ef67abcd890e1 es el ID que AWS Cloud9 asigna al entorno y us-
east-2 es el ID de la región de AWS del entorno). Esta URL solo funciona cuando el IDE del entorno
está abierto y la aplicación se está ejecutando en el mismo navegador web.
• Si está intentando ir a una dirección que contiene una IP de 127.0.0.1 o localhost, intente ir a
la dirección no local correcta para la aplicación en ejecución. Para obtener más información, consulte
Compartir una aplicación en ejecución a través de internet (p. 170).
• Si la aplicación se está ejecutando en una instancia de informática en la nube de AWS, determine si ha
cambiado la dirección IP pública de la instancia. La dirección IP pública de la instancia podría cambiar
en cualquier momento que la instancia se reinicie. Para evitar que cambie esta dirección IP, puede
asignar una dirección IP elástica y asignarla a la instancia en ejecución. Para obtener más información,
consulte Paso 4: Compartir la URL de la aplicación en ejecución (p. 174) en Compartir una aplicación en
ejecución a través de internet.
• Si la solicitud web proviene de una VPN, asegúrese de que la VPN permite el tráfico a través de los
protocolos, los puertos y las direcciones IP que la aplicación necesita. Si no puede realizar cambios en
su VPN, consulte con el administrador de red. Otra opción es realizar la solicitud web desde otra red, si
es posible.
• Si la aplicación se está ejecutando en un entorno de SSH de su propio servidor, asegúrese de que el
servidor y la red asociada permiten el tráfico a través de los protocolos, los puertos y las direcciones IP
que la aplicación necesita. Si no puede realizar cambios en su servidor o la red asociada, consulte con el
administrador del servidor o de red.
• Intente ejecutar la aplicación desde un terminal en el entorno ejecutando el comando curl, seguido de
la URL. Si este comando muestra un mensaje de error, es posible que haya algún otro problema que no
está relacionado con AWS Cloud9.

(Volver arriba (p. 579))

588
AWS Cloud9 Guía del usuario
Después de volver a cargar un entorno, es
necesario actualizar la vista previa de la aplicación

Después de volver a cargar un entorno, es


necesario actualizar la vista previa de la aplicación
Problema: después de volver a cargar un entorno que muestra una pestaña de vista previa de la
aplicación, la pestaña no muestra la vista previa de la aplicación.

Causa: a veces, los usuarios escriben código que puede ejecutar un bucle infinito o que utiliza tanta
memoria que hace que el IDE de AWS Cloud9 se ponga en pausa o se detenga cuando se ejecuta la vista
previa de la aplicación. Para evitar que esto ocurra, AWS Cloud9 no vuelve a cargar las pestañas de vista
previa de la aplicación cuando se vuelve a cargar un entorno.

Solución: después de volver a cargar un entorno que muestra una pestaña de vista previa de la aplicación,
para mostrar la vista previa de la aplicación, elija el botón Click to load the page (Hacer clic para cargar la
página) en la pestaña.

(Volver arriba (p. 579))

No se pueden ejecutar algunos comandos o scripts


en un entorno de EC2
Problema: después de abrir un entorno de desarrollo de EC2 de AWS Cloud9, no se pueden instalar
algunos tipos de paquetes, ejecutar comandos, como yum o apt, ni ejecutar scripts que contienen
comandos que suelen funcionar con otros sistemas operativos Linux.

Causa: las instancias de Amazon EC2 que AWS Cloud9 utiliza para un entorno de EC2 dependen de
Amazon Linux (que se basa en Red Hat Enterprise Linux [RHEL]) o Ubuntu Server.

Solución: si instala o administra paquetes o ejecuta comandos o scripts en el IDE de un entorno de EC2,
asegúrese de que son compatibles con RHEL (para Amazon Linux) o Ubuntu Server, en función de la
instancia para ese entorno.

(Volver arriba (p. 579))

Error de AWS CLI/aws-shell: “el token de seguridad


incluido en la solicitud no es válido” en un entorno
de EC2
Problema: al tratar de utilizar AWS Command Line Interface (AWS CLI) o aws-shell para ejecutar un
comando en el IDE de AWS Cloud9 para un entorno de EC2, aparece un mensaje de error que indica que
el token de seguridad incluido en la solicitud no es válido.

Causa: puede generarse un token de seguridad no válido si tiene las credenciales temporales
administradas por AWS habilitadas y se ha producido una de las siguientes situaciones:

• Intentó ejecutar un comando que las credenciales temporales administradas por AWS no permiten. Para
ver una lista de comandos permitidos, consulte Acciones admitidas por las credenciales temporales
administradas por AWS (p. 570).
• Las credenciales temporales administradas por AWS caducan automáticamente después de 15 minutos.

589
AWS Cloud9 Guía del usuario
Las instancias de Amazon EC2
no se actualizan automáticamente

• Las credenciales temporales administradas por AWS para un entorno compartido estaban desactivadas
porque alguien distinto del propietario del entorno agregó un nuevo miembro.

Soluciones recomendadas:

• Ejecute solo aquellos comandos permitidos por las credenciales temporales administradas de AWS. Si
necesita ejecutar un comando que no permiten las credenciales temporales administradas por AWS,
puede configurar AWS CLI o aws-shell en el entorno con un conjunto de credenciales permanentes,
lo que acabaría con esta limitación. Para obtener instrucciones, consulte Crear y almacenar las
credenciales de acceso permanente en un entorno (p. 86).
• Para credenciales desactivadas o caducadas, asegúrese de que el propietario del entorno abra el
entorno de modo que AWS Cloud9 pueda actualizar las credenciales temporales en el entorno. Para
obtener más información, consulte Control del acceso a las credenciales temporales administradas por
AWS (p. 572).

(Volver arriba (p. 579))

Las instancias de Amazon EC2 no se actualizan


automáticamente
Problema: las últimas actualizaciones del sistema no se aplican automáticamente a una instancia de
Amazon EC2 que se conecta a un entorno de desarrollo de AWS Cloud9.

Causa: la aplicación automática de las últimas actualizaciones del sistema podría hacer que el código
o la instancia de Amazon EC2 se comporten de forma imprevista, sin su conocimiento previo o sin su
aprobación.

Soluciones recomendadas:

Aplique actualizaciones del sistema a la instancia de Amazon EC2 de forma periódica siguiendo las
instrucciones de Actualización del software de instancia en la Guía del usuario de Amazon EC2 para
instancias de Linux.

Para ejecutar comandos en la instancia, puede utilizar una sesión del terminal en el IDE de AWS Cloud9
desde el entorno que está conectado a la instancia.

También puede usar una utilidad de acceso remoto SSH como ssh o PuTTY para conectarse a la
instancia. Para ello, desde el equipo local, sírvase de una utilidad de creación de pares de claves SSH,
como ssh-keygen o PuTTYgen. Utilice el IDE de AWS Cloud9 desde el entorno que está conectado a la
instancia para almacenar la clave pública generada en la instancia. A continuación, sírvase de la utilidad
de acceso remoto SSH junto con la clave privada generada para obtener acceso a la instancia. Consulte la
documentación de su utilidad para obtener más información.

(Volver arriba (p. 579))

Error de ejecución de la función local Lambda: no


se puede instalar SAM Local
Problema: después de intentar ejecutar la versión local de una función AWS Lambda en el IDE de AWS
Cloud9, se muestra un cuadro de diálogo que indica que AWS Cloud9 está teniendo problemas al instalar

590
AWS Cloud9 Guía del usuario
Advertencia del IDE: “Este entorno se está quedando sin
memoria” o “Este entorno tiene una elevada carga de CPU”

SAM Local. AWS Cloud9 necesita SAM Local para ejecutar las versiones locales de las funciones de AWS
Lambda en el IDE. Hasta que no se instala SAM Local, no se pueden ejecutar las versiones locales de las
funciones de Lambda en el IDE.

Causa: AWS Cloud9 no encuentra SAM Local en la ruta prevista en el entorno, que es ~/.c9/bin/sam.
Esto se debe a que SAM Local no está instalado aún o, si lo está, AWS Cloud9 no lo encuentra en dicha
ubicación.

Soluciones recomendadas: Puede esperar a que AWS Cloud9 intente finalizar la instalación de SAM Local
o puede instalarlo usted mismo.

Para ver el progreso de AWS Cloud9 mientras intenta instalar SAM Local, seleccione Window, Installer
(Ventana, Instalador) en la barra de menús.

Para instalar SAM Local usted mismo, siga las instrucciones que se proporcionan en Instalación de AWS
SAM CLI en Linux en la Guía para desarrolladores de AWS Serverless Application Model.

Advertencia del IDE: “Este entorno se está


quedando sin memoria” o “Este entorno tiene una
elevada carga de CPU”
Problema: mientras se está ejecutando el IDE, aparece un mensaje que contiene la frase “este entorno se
está quedando sin memoria” o “este entorno tiene una elevada carga de CPU”.

Causa: es posible que el IDE no disponga de los recursos informáticos suficientes para seguir funcionando
sin retrasos o bloqueos.

Soluciones recomendadas:

• Detenga uno o más procesos en ejecución para liberar la memoria disponible. Para ello, en la barra de
menús del IDE correspondiente al entorno, elija Tools, Process List (Herramientas, Lista de procesos).
Por cada proceso que desee detener, selecciónelo y, a continuación, elija Force Kill (Forzar terminación).
• Cree un archivo de intercambio en el entorno. Un archivo de intercambio es un archivo en el entorno que
el sistema operativo puede utilizar como memoria virtual.

Para confirmar si el entorno está utilizando la memoria de intercambio, ejecute el comando top en
una sesión del terminal en el entorno. Si se está utilizando memoria de intercambio, la salida muestra
estadísticas de memoria Swap distintas de cero (por ejemplo, Swap: 499996k total, 1280k
used, 498716 free, 110672k cached). Para dejar de mostrar la información de la memoria en
tiempo real, pulse Ctrl + C.

Para crear un archivo de intercambio, puede ejecutar un comando como el siguiente en el entorno.

sudo fallocate --length 512MB /var/swapfile && sudo chmod 600 /var/swapfile && sudo
mkswap /var/swapfile && echo '/var/swapfile swap swap defaults 0 0' | sudo tee -a /etc/
fstab > /dev/null

El comando anterior hace lo siguiente:


1. Crea un archivo de 512 MB denominado swapfile en el directorio /var.
2. Cambia los permisos de acceso del archivo swapfile a lectura y escritura solo para el propietario.
3. Configura el archivo swapfile como un archivo de intercambio.
4. Escribe la información en /etc/fstab file, que permite que este archivo de intercambio esté
disponible siempre que se reinicie el sistema.

591
AWS Cloud9 Guía del usuario
La vista previa de un archivo devuelve un error 499

Después de ejecutar el comando anterior, para que este archivo de intercambio esté disponible
inmediatamente en lugar de esperar a un reinicio, ejecute el comando siguiente.

sudo swapon /var/swapfile

• Mueva o cambie el tamaño del entorno a una instancia o un servidor con más recursos informáticos.
Para mover o cambiar el tamaño de instancias de Amazon EC2, consulte Mover un entorno y cambiar
el tamaño de volúmenes de Amazon EBS o cifrarlos (p. 104). Para otros tipos de instancia o servidor,
consulte la documentación correspondiente.

(Volver arriba (p. 579))

La vista previa de un archivo devuelve un error 499


Problema: cuando intenta utilizar el IDE de AWS Cloud9 para obtener una vista previa de un archivo que
contiene un elemento <script> que incluye el atributo src y con el atributo type establecido en module,
se produce un error 499 y el script no se ejecuta según lo previsto.

Causa: las solicitudes para obtener una vista previa de archivos en el IDE de AWS Cloud9 requieren que
el navegador web envíe cookies para autenticarse. De forma predeterminada, los navegadores web envían
las cookies para las solicitudes de script habituales, pero no para las solicitudes de script del módulo, a
menos que añada el atributo crossorigin.

Solución: añada el atributo crossorigin en el elemento <script>. Por ejemplo, <script


type="module" src="index.js" crossorigin></script>. A continuación, guarde el archivo
modificado y vuelva a intentar obtener una vista previa.

(Volver arriba (p. 579))

Error de eliminación del entorno: “No se pudieron


eliminar uno o más entornos”
Problema: cuando intenta eliminar uno o más entornos en la consola de AWS Cloud9, aparece un mensaje
que indica que no se pudieron eliminar uno o más entornos y al menos uno de los entornos no se ha
eliminado.

Causa posible: AWS CloudFormation puede tener un problema al eliminar uno o más entornos (AWS
Cloud9 depende de AWS CloudFormation para crear y eliminar entornos).

Solución recomendada: pruebe a usar AWS CloudFormation para eliminar cada uno de los entornos no
eliminadas, tal y como se indica a continuación.

1. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.


2. En la barra de navegación de AWS, elija la región de AWS del entorno.
3. En la lista de pilas de AWS CloudFormation, seleccione la entrada donde Stack name (Nombre
de pila) contiene el nombre del entorno no borrado y Status (Estado) es DELETE_FAILED
(ERROR_ELIMINACIÓN). Por ejemplo, si el nombre del entorno es my-demo-environment, elija la
pila que comienza con el nombre aws-cloud9-my-demo-environment. (Elija la casilla u opción junto al
nombre del entorno, no el propio nombre del entorno).
4. Elija Actions, Delete Stack (Acciones, Eliminar pila).

592
AWS Cloud9 Guía del usuario
Advertencia de la consola: “Cambio al
motor de finalización de código mínimo...”

5. Si se le pregunte, elija Yes, Delete (Sí, eliminar).

Este proceso de eliminación de una pila puede tardar unos minutos.

Si la pila desaparece de la lista, el entorno se ha eliminado.

Si la pila se sigue mostrando con DELETE_FAILED (ERROR_ELIMINACIÓN) después de unos minutos, el


entorno sigue sin eliminarse. En este caso, puede intentar eliminar manualmente cada uno de los recursos
de la pila con error.
Note

La eliminación manual de recursos de la pila con error no elimina la pila en sí de su cuenta de


AWS.

Para eliminar manualmente estos recursos, en la consola de AWS CloudFormation, elija la pila en la que
se ha producido el error y, a continuación, seleccione la sección Resources (Recursos). Vaya a la consola
en AWS para cada recurso en esta lista y, a continuación, utilice dicha consola para eliminar manualmente
el recurso.

(Volver arriba (p. 579))

Advertencia de la consola: “Cambio al motor de


finalización de código mínimo...”
Problema: al trabajar en la consola de AWS Cloud9 (por ejemplo, al abrir el IDE o actualizar la página
web del IDE), verá este mensaje: “One or more sessions or collaborators are active on this environment.
Switching to the minimal code completion engine to conserve memory”. En correlación con este mensaje,
el comportamiento de finalización de código podría ser lento o intermitente.

Causa: la ejecución del motor de finalización de código requiere memoria y ciclos de CPU del entorno.
Además, se requiere un motor de finalización de código independiente para cada colaborador y cada
sesión adicional. Para evitar utilizar demasiados recursos, especialmente en tamaños de instancias
pequeñas como t2.nano y t2.micro, AWS Cloud9 cambia al motor de finalización de código mínimo.

Solución recomendada: si va a colaborar con frecuencia y durante largos períodos de tiempo, elija una
instancia de Amazon EC2 más grande al crear su entorno de EC2 (o conecte su entorno de SSH a una
instancia con más capacidad).
Note

Elegir una instancia de Amazon EC2 más grande podría generar cargos adicionales para su
cuenta de AWS. Para obtener más información, consulte Precios de Amazon EC2.

(Volver arriba (p. 579))

El instalador de AWS Cloud9 no finaliza después de


mostrar: “Package Cloud9 IDE 1”
Problema: AWS Cloud9 se ha instalado en su instancia de Amazon EC2 existente o en su propio servidor
durante el proceso de creación de un entorno de desarrollo de SSH. La instalación se detiene cuando
aparece el siguiente mensaje en el cuadro de diálogo del Instalador de AWS Cloud9: “Package Cloud9 IDE

593
AWS Cloud9 Guía del usuario
Error de VPC para cuentas de EC2-
Classic: “No se puede acceder a su entorno”

1”. Si elige Cancelar, verá el siguiente mensaje: “Error de instalación”. Este error se produce cuando no se
pueden instalar los paquetes de AWS Cloud9 en el host SSH del cliente.

Causa: un host SSH requiere que tenga instalado Node.js. Actualmente admitimos versiones desde
Node.js 0.6.16 hasta Node.js 12.x. Puede producirse un error de instalación si tiene una versión de Node.js
en su host que AWS Cloud9 no admita.

Solución recomendada: instale una versión de Node.js que AWS Cloud9 admita en el host SSH.

(Volver arriba (p. 579))

Error de VPC para cuentas de EC2-Classic: “No se


puede acceder a su entorno”
Problema: EC2-Classic se introdujo en la versión original de Amazon EC2. Si utiliza una cuenta de
AWS que se configuró antes del 4 de diciembre de 2013, este error puede producirse si no configura
explícitamente una nube virtual privada (Amazon VPC) y una subred al crear un entorno de desarrollo de
EC2 de AWS Cloud9.

Si acepta la configuración predeterminada de VPC, la instancia de Amazon EC2 se lanza en la red EC2-
Classic y no en una subred de la VPC predeterminada. Cuando se produce un error en la creación del
entorno, aparece el siguiente mensaje:

Error de entorno

No se puede acceder a su entorno

Error al crear el entorno: Error al crear los siguientes recursos: [Instance]. . Restauración solicitada por el
usuario..

Puede confirmar que el error se debe a que la instancia de EC2 no se encuentra en la VPC
predeterminada. Utilice AWS CloudFormation para consultar el historial de eventos de pila para el entorno
de desarrollo.

1. Abra la consola de AWS CloudFormation. Para obtener más información, consulte Registro en la
consola de AWS CloudFormation.
2. En la consola de AWS CloudFormation, elija Pilas.
3. En la página Pilas, elija el nombre del entorno de desarrollo que no se pudo crear.
4. En la página Stack details (Detalles de la pila), elija la pestaña Events (Eventos) y verifique la siguiente
entrada:

Estado: CREATE_FAILED

Motivo del estado: el parámetro AssociatePublicIpAddress solo es compatible con los lanzamientos de
la VPC. [...]

Causa: un entorno de desarrollo de AWS Cloud9 debe asociarse a una instancia de Amazon VPC que
cumpla con los requisitos de VPC específicos. Para cuentas con EC2-Classic habilitado, aceptar la
configuración de red predeterminada al crear un entorno de EC2 (p. 53) significa que la instancia de EC2
requerida no se ha lanzado en la VPC. En su lugar, la instancia se ha lanzado en la red EC2-Classic.

Solución recomendada: con una cuenta de EC2-Classic, debe seleccionar una VPC y una subred al crear
un entorno de EC2 (p. 53). En la página Configurar ajustes, en la sección Configuración de red (avanzada),
seleccione la VPC y la subred en la que puede lanzar la instancia de EC2.

594
AWS Cloud9 Guía del usuario
No se puede abrir el entorno de AWS Cloud9: “Los
colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación
(Volver arriba (p. 579)) de las credenciales temporales administradas
o contacte con el propietario de este entorno”.

No se puede abrir el entorno de AWS Cloud9: “Los


colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación de las
credenciales temporales administradas o contacte
con el propietario de este entorno”.
Problema: si alguien que no es el propietario del entorno agrega un nuevo colaborador a un entorno,
las credenciales temporales administradas por AWS se desactivan. Las credenciales se desactivan
mediante la eliminación del archivo ~/.aws/credentials. Mientras la eliminación del archivo ~/.aws/
credentials progresa, los nuevos colaboradores no pueden acceder al entorno de AWS Cloud9.

Causa: impedir el acceso al entorno durante la eliminación de las credenciales temporales administradas
de AWS es una medida de seguridad. Permite a los propietarios del entorno confirmar que solo los
colaboradores de confianza tienen acceso a credenciales administradas. Si están convencidos de que
la lista de colaboradores es válida, los propietarios del entorno pueden volver a habilitar las credenciales
administradas para que puedan compartirse. Para obtener más información, consulte Control del acceso a
las credenciales temporales administradas por AWS (p. 572).

Soluciones recomendadas: puede esperar a que se complete la eliminación del archivo ~/.aws/
credentials antes de volver a intentar abrir el entorno AWS Cloud9. El tiempo máximo de espera para
la caducidad de las credenciales es de 15 minutos. También puede solicitar al propietario del entorno que
vuelva a habilitar o desactive las credenciales temporales administradas. Después de volver a habilitar o
desactivar las credenciales, los colaboradores pueden acceder inmediatamente al entorno. (Al alternar el
estado de las credenciales administradas a ENABLED [HABILITADAS] o DISABLED [DESACTIVADAS],
el propietario del entorno garantiza que las credenciales no permanezcan en un estado intermedio que
impida que los colaboradores accedan al entorno).
Note

Si el propietario del entorno y el colaborador pertenecen a la misma cuenta de AWS, el


colaborador puede identificar al propietario del entorno para establecer contacto revisando la
tarjeta de un entorno en la página Your environments (Sus entornos) en la consola. El propietario
del entorno también se muestra en la página Environment details (Detalles del entorno).

(Volver arriba (p. 579))

Mensaje de error que notifica que el perfil de


instancias AWSCloud9SSminStanceProfile no
existe en la cuenta al crear un entorno de EC2
mediante AWS CloudFormation
Problema: si utiliza el recurso AWS::Cloud9::EnvironmentEC2 de AWS CloudFormation para
crear un entorno de EC2, los usuarios reciben un mensaje de error similar a El perfil de instancias
AWSCloud9SSmInstanceProfile no existe en la cuenta.

595
AWS Cloud9 Guía del usuario
Mensaje de error que indica que no tiene autorización
para ejecutar: ssm:StartSession en el recurso al crear
un entorno de EC2 mediante AWS CloudFormation
Causa: al crear un entorno de EC2 sin entrada, debe crear la función de servicio
AWSCloud9SSMAccessRole y el perfil de instancias AWSCloud9SSMInstanceProfile. Estos
recursos de IAM permiten a Systems Manager administrar la instancia de EC2 que respalda su entorno de
desarrollo.

Si crea un entorno sin entrada con la consola, AWSCloud9SSMAccessRole y


AWSCloud9SSMInstanceProfile se crean automáticamente. No obstante, si utiliza AWS
CloudFormation o AWS CLI para crear su primer entorno sin entrada, debe crear estos recursos de IAM
manualmente.

Solución recomendada: para obtener información sobre cómo editar la plantilla de AWS CloudFormation
y actualizar los permisos de IAM, consulte Uso de AWS CloudFormation para crear entornos de EC2 sin
entrada (p. 73).

Mensaje de error que indica que no tiene


autorización para ejecutar: ssm:StartSession en el
recurso al crear un entorno de EC2 mediante AWS
CloudFormation
Problema: si utiliza el recurso AWS::Cloud9::EnvironmentEC2 de AWS CloudFormation para crear un
entorno de EC2, los usuarios reciben una excepción AccessDeniedException y se les informa de que
no tienen autorización para ejecutar: ssm:StartSession en el recurso.

Causa: el usuario carece del permiso para llamar a la API de StartSession que se requiere como
parte de la configuración para los entornos de EC2 que utilizan Systems Manager para las instancias sin
entrada.

Solución recomendada: para obtener información sobre cómo editar la plantilla de AWS CloudFormation
y actualizar los permisos de IAM, consulte Uso de AWS CloudFormation para crear entornos de EC2 sin
entrada (p. 73).

(Volver arriba (p. 579))

Mensaje de error que indica que no


tiene autorización “para ejecutar:
iam:GetInstanceProfile en el recurso: perfil
de instancias AWSCloud9SSMInstanceProfile”
al crear un entorno de EC2 mediante AWS CLI
Problema: cuando se utiliza la AWS CLI (p. 44) para crear un entorno de EC2, los usuarios reciben un
AccessDeniedException y se les informa de que su entorno AWS Cloud9 no está autorizado “para
ejecutar iam:GetInstanceProfile en el recurso: perfil de instancias AWSCloud9SSMInstanceProfile”.

Causa: AWS Cloud9 carece del permiso para llamar a la API de StartSession que se requiere como
parte de la configuración para los entornos de EC2 que utilizan Systems Manager para las instancias sin
entrada.

596
AWS Cloud9 Guía del usuario
No se puede conectar al entorno de EC2
porque Docker utiliza las direcciones IP de VPC

Solución recomendada: para obtener información sobre cómo agregar el rol de servicio
AWSCloud9SSMAccessRole requerido y AWSCloud9SSMInstanceProfile a su entorno AWS Cloud9,
consulte Administrar perfiles de instancias para Systems Manager con AWS CLI (p. 71).

(Volver arriba (p. 579))

No se puede conectar al entorno de EC2 porque


Docker utiliza las direcciones IP de VPC
Problema: Para un entorno EC2, si lanza la instancia de EC2 en una Amazon VPC (nube privada virtual)
que utiliza el bloque de Classless Inter-Domain Routing (CIDR) de IPv4 172.17.0.0/16, la conexión
puede detenerse cuando intente abrir ese entorno.

Causa: Docker utiliza un dispositivo de capa de enlace denominado red de puente que permite que los
contenedores conectados a la misma red de puente se comuniquen. AWS Cloud9 crea contenedores que
utilizan un puente predeterminado para la comunicación de contenedores. El puente predeterminado suele
utilizar la subred 172.17.0.0/16 para las redes de contenedores.

Si la subred de VPC para la instancia de su entorno utiliza el mismo rango de direcciones que Docker,
puede producirse un conflicto de dirección IP. Por tanto, si AWS Cloud9 intenta conectarse a su instancia,
la tabla de enrutamiento de gateway enruta esa conexión al puente de Docker en lugar de a la instancia de
EC2. Esto evita que AWS Cloud9 se conecte a la instancia de EC2 que respalda el entorno de desarrollo.

Solución recomendada: para resolver un conflicto de dirección IP que se produce porque Amazon VPC y
Docker utilizan el mismo bloque de CIDR de direcciones IPv4, configure una nueva VPC para la instancia
que respalda el entorno de EC2. Para esta nueva VPC, configure un bloque de CIDR que sea diferente de
172.17.0.0/16. No puede cambiar el rango de direcciones IP de una VPC o subred existente.

Para obtener información sobre la configuración, consulte Tamaño de VPC y subred en la Guía del usuario
de Amazon VPC.

(Volver arriba (p. 579))

Error al ejecutar AWS Toolkit, que indica que el


entorno se está quedando sin inodes y que se debe
aumentar el límite de “fs.inotify.max_user_watches”.
Problema: una utilidad de monitor de archivos que se utiliza en AWS Toolkit se acerca al límite actual de
archivos que puede ver.

Causa: AWS Toolkit utiliza una utilidad de monitor de archivos que monitorea los cambios en archivos y
directorios. Aparece un mensaje de advertencia cuando la utilidad está casi en el límite actual de archivos
que puede ver.

Solución recomendada: para aumentar el número máximo de archivos que puede administrar el monitor de
archivos, haga lo siguiente:

1. Inicie una sesión de terminal con las opciones Window (Ventana), New Terminal (Nuevo terminal) en
la barra de menús.
2. En la línea de comandos, ingrese el comando siguiente:

597
AWS Cloud9 Guía del usuario
Aviso: error al instalar dependencias
para el soporte de colaboración

sudo bash -c 'echo "fs.inotify.max_user_watches=524288" >> /etc/sysctl.conf' && sudo


sysctl -p

(Volver arriba (p. 579))

Aviso: error al instalar dependencias para el soporte


de colaboración
Problema: AWS Cloud9 necesita acceso a internet para descargar dependencias. Si AWS Cloud9 no
puede descargar esas dependencias, verá un cuadro de diálogo Notice con el siguiente error.

Failed to install dependencies for collaboration support

Please try to resolve this problem and refresh the page to enable collaboration support. A
common cause is a lack of available disk space. Error was:

Error downloading from location


<LINK> to <LOCATION>
Problem was: Error: connect ETIMEDOUT <IPADDRESS>

Causas posibles: si su entorno AWS Cloud9 utiliza un proxy para acceder a internet, AWS Cloud9 necesita
los detalles del proxy para instalar las dependencias. Este error aparecerá si no ha proporcionado los datos
del proxy a AWS Cloud9.

Soluciones recomendadas: para proporcionar los detalles del proxy a AWS Cloud9, agregue lo siguiente al
archivo ~/.bashrc del entorno.

export http_proxy=<proxy url for http>


export https_proxy=<proxy url for https>

Por ejemplo, si la URL del proxy HTTP es http://172.31.26.80:3128 y la URL del proxy HTTPS es
https://172.31.26.80:3129, agregue las siguientes líneas al archivo ~/.bashrc.

export http_proxy=http://172.31.26.80:3128
export https_proxy=https://172.31.26.80:3129

Note

Si estas variables de entorno están presentes en /etc/profile, pero no en ~/.bashrc,


AWS Cloud9 no puede usarlas porque /etc/profile está destinado solo a shells de inicio
de sesión. Dado que /etc/profile también carga ~/.bashrc, colocar la configuración en
~/.bashrcgarantizará que las variables de entorno estén disponibles tanto para los shells de
inicio de sesión como para AWS Cloud9.

(Volver arriba (p. 579))

Error con gdb al depurar proyectos de C++


Problema: error reportado para el depurador de gdb al intentar depurar el proyecto de C++ en el IDE.

598
AWS Cloud9 Guía del usuario
Error al ejecutar aplicaciones SAM localmente
en AWS Toolkit porque el entorno de AWS
Cloud9 no tiene suficiente espacio en disco
Causas posibles: si su entorno de AWS Cloud9 utiliza ciertos tipos de instancias de EC2 (como t3.small
o m5.large, por ejemplo), puede producirse un error de depuración al intentar ejecutar y depurar un
proyecto de C++ utilizando el ejecutor integrado del IDE. Este error puede ocurrir porque la versión de gdb
(depurador de proyectos GNU) preinstalado para su entorno no funciona en determinadas plataformas de
procesador. Podría ver el código de error siguiente:

GDB server terminated with code 1

Soluciones recomendadas: el problema de la incompatibilidad de gdb con determinadas plataformas


de procesador se corrigió de la versión 3.0 en adelante. Por lo tanto, desinstale la versión anterior del
depurador y actualice a una versión más reciente de gdb:

1. Para eliminar la versión existente del depurador, ejecute el siguiente comando en el terminal de AWS
Cloud9:

sudo yum -y remove gdb

2. Recupere el archivo para gdb, descomprímalo y vaya al directorio que contiene los archivos extraídos.
Para ello, ejecute los siguientes comandos:

wget "http://ftp.gnu.org/gnu/gdb/gdb-8.3.tar.gz"
tar xzf gdb-8.3.tar.gz
cd gdb-8.3

3. Ahora compile el depurador mediante la ejecución del siguiente comando (pegue el texto siguiente
como un solo bloque y pulse Intro para ejecutar make):

./configure --prefix=/usr \
--with-system-readline \
--with-python=/usr/bin/python3 &&
make

4. Ahora instale el depurador:

sudo make -C gdb install

5. Finalmente, confirme que la versión actualizada del depurador está instalada:

gdb --version

(Volver arriba (p. 579))

Error al ejecutar aplicaciones SAM localmente en


AWS Toolkit porque el entorno de AWS Cloud9 no
tiene suficiente espacio en disco
Problema: se produce un error cuando se utiliza AWS Toolkit para ejecutar comandos de la CLI de AWS
SAM para aplicaciones definidas por plantillas SAM.

Causas posibles: al ejecutar y depurar aplicaciones sin servidor localmente con AWS Toolkit, AWS SAM
utiliza imágenes de Docker que proporcionan un entorno en tiempo de ejecución y herramientas de
compilación que emulan el entorno de Lambda en el que está planeando implementar.

599
AWS Cloud9 Guía del usuario
No se puede cargar el IDE con versiones
anteriores del navegador Microsoft Edge

No obstante, si su entorno carece de suficiente espacio en disco, la imagen de Docker que proporciona
estas características no puede compilarse y su aplicación SAM local no se puede ejecutar. Si esto ocurre,
puede aparecer un error en la pestaña Output (Salida) similar a la siguiente:

Error: Could not find amazon/aws-sam-cli-emulation-image-python3.7:rapid-1.18.1 image


locally and failed to pull it from docker.

Este error se relaciona con una aplicación SAM creada con el tiempo de ejecución de Python. Puede
recibir un mensaje ligeramente diferente, dependiendo del tiempo de ejecución que eligió para su
aplicación.

Soluciones recomendadas: libere espacio en disco en su entorno para que la imagen de Docker pueda
compilarse. Elimine las imágenes de Docker no utilizadas ejecutando el siguiente comando en el terminal
del IDE:

docker image prune -a

Si tiene problemas repetidamente con los comandos de la CLI de SAM debido a restricciones de espacio
en disco, considere cambiar a un entorno de desarrollo que utilice un tipo de instancias (p. 55) diferente.

(Volver arriba (p. 579))

No se puede cargar el IDE con versiones anteriores


del navegador Microsoft Edge
Problema: se devuelve el error HTTP403: FORBIDDEN al intentar cargar el IDE de AWS Cloud9 mediante
el navegador web Microsoft Edge.

Causas posibles: el IDE de AWS Cloud9 no admite ciertas versiones anteriores de Microsoft Edge.

Soluciones recomendadas: para actualizar el navegador, elija el botón de puntos suspensivos (...) en la
barra de herramientas de Microsoft Edge. En el menú, elija Configuración y, a continuación, Acerca de
Microsoft Edge. Si se requiere una actualización, esta se descarga e instala automáticamente.

(Volver arriba (p. 579))

Error al crear un entorno cuando se aplica el cifrado


predeterminado a volúmenes de Amazon EBS
Problema: se devuelve el error Failed to create environments. The development
environment '[environment-ID]' failed to create al intentar crear un entorno de Amazon
EC2.

Causas posibles: si el IDE de AWS Cloud9 utiliza volúmenes de Amazon EBS cifrados de forma
predeterminada, el rol vinculado al servicio AWS Identity and Access Management para AWS Cloud9
requiere acceso a las AWS KMS keys para estos volúmenes de EBS. Si no se proporciona acceso, el IDE
de AWS Cloud9 podría no lanzarse y la depuración podría ser difícil.

Soluciones recomendadas: para proporcionar acceso, agregue el rol vinculado al servicio para AWS
Cloud9, AWSServiceRoleForAWSCloud9, a la clave administrada por el cliente que utilizan sus
volúmenes de Amazon EBS.

600
AWS Cloud9 Guía del usuario
No se puede obtener una vista previa del contenido
web en el IDE porque la conexión al sitio no es segura

Para obtener más información sobre esta tarea, consulte Create an AWS Cloud9 that uses Amazon EBS
volumes with default encryption en AWS Prescriptive Guidance Patterns.

(Volver arriba (p. 579))

No se puede obtener una vista previa del contenido


web en el IDE porque la conexión al sitio no es
segura
Problema: al intentar acceder a contenido web (por ejemplo, un sitio de WordPress) que está alojado en un
entorno de EC2 de AWS Cloud9, la ventana de vista previa del IDE no puede mostrarlo.

Causas posibles: de forma predeterminada, todas las páginas web a las que accede en la pestaña de vista
previa de la aplicación del IDE de AWS Cloud9 utilizan automáticamente el protocolo HTTPS. Si el URI
de una página presenta el protocolo no seguro http, se reemplaza automáticamente por https. Para
acceder al contenido no seguro, tampoco puede restablecer https a http manualmente.

Soluciones recomendadas: quite los scripts HTTP no seguros o el contenido del sitio web del que intenta
obtener una vista previa en el IDE. Siga las instrucciones de su servidor web o sistema de administración
de contenido para obtener instrucciones sobre cómo implementar HTTPS.

(Volver arriba (p. 579))

No se puede lanzar AWS Cloud9 desde la consola


cuando la configuración de licencias AWS License
Manager está asociada a instancias de Amazon
EC2
Problema: Cuando intenta lanzar un entorno de EC2 de AWS Cloud9 desde la consola, se devuelve un
error unable to access your environment.

Causas posibles: AWS License Manager agiliza la administración de licencias de proveedores de software
en toda la nube de AWS. Al configurar License Manager, puede crear configuraciones de licencias, que
son conjuntos de reglas de asignación de licencias que se basan en los términos de los contratos de su
empresa. Estas configuraciones de licencias se pueden conectar a un mecanismo, como una imagen de
máquina de Amazon (AMI) o AWS CloudFormation, que utiliza para lanzar instancias de EC2.

Ya que las versiones anteriores de AWSCloud9ServiceRolePolicy para el rol vinculado a servicios


(SLR) de AWSServiceRoleForAWSCloud9 no incluyen actualmente la condición de recurso license-
configuration, a AWS Cloud9 no se le permite iniciar y detener su instancia. Por lo tanto, se le niega el
acceso a AWS Cloud9 a su instancia de Amazon EC2 y se devuelve un error.

Soluciones recomendadas: si no puede acceder a un entorno de AWS Cloud9 existente y usa License
Manager, reemplace el rol vinculado a servicios AWSCloud9ServiceRolePolicy por la versión del
SLR (p. 524) que permita explícitamente acciones de EC2 cuando se aplique license-configuration
a la instancia. Para reemplazar el rol antiguo, elimínelo. A continuación, se crea el rol actualizado de forma
automática.

(Volver arriba (p. 579))

601
AWS Cloud9 Guía del usuario
No se puede interactuar con la ventana de terminal
en AWS Cloud9 debido a errores de sesión de tmux

No se puede interactuar con la ventana de terminal


en AWS Cloud9 debido a errores de sesión de tmux
Problema: Cuando intenta lanzar una nueva ventana de terminal en AWS Cloud9, la interfaz de línea de
comandos esperada no está disponible. No hay símbolo del sistema y no puede ingresar texto.

Causas posibles: Una terminal que no responde puede ser causada por un error de tmux. AWS Cloud9
utiliza la utilidad tmux para que la información que se muestra en la terminal persista incluso cuando la
página se recarga o se reconecta a su entorno de desarrollo.

En una sesión tmux, lo que se muestra en la ventana del terminal lo administra un cliente, que se comunica
con un servidor que puede administrar varias sesiones. El servidor y el cliente se comunican a través de
un socket ubicado en la carpeta tmp. Si la carpeta tmp falta en su entorno de desarrollo o se le aplican
permisos demasiado restrictivos, las sesiones tmux no pueden ejecutarse. Si esto ocurre, la ventana de
terminal del IDE deja de responder.

Soluciones recomendadas: Si los errores de tmux le impiden interactuar con la ventana de la terminal,
necesita utilizar una forma alternativa para crear una carpeta tmp con los permisos adecuados para que
las sesiones de tmux puedan ejecutarse. El enfoque más sencillo es utilizar AWS Systems Manager
para establecer una configuración de administración de host, que permite el acceso a la instancia
correspondiente a través de la consola de Amazon EC2:

Configuración de la administración de host

1. En primer lugar, en la consola AWS Cloud9, busque el nombre de la instancia de su entorno eligiendo
el panel correspondiente en la página Your environments (Sus entornos) y seleccionando View details
(Ver detalles). En la página de Environment details (Detalles del Entorno), elija Go to Instance (Ir a
la Instancia). En la consola de Amazon EC2, confirme el nombre de la instancia a la que necesita
acceder.
2. Ahora vaya a la consola AWS Systems Manager, y en el panel de navegación, elija Quick Setup
(Configuración Rápida).
3. En la página de Quick Setup (Configuración Rápida), elija Create (Crear).
4. Para los tipos de configuración, vaya a Host Management (Administración de hosts) y elija Create
(Crear).
5. Para personalizar las opciones de configuración de Host Management, en la sección Targets
(Objetivos), elija Manual.
6. Seleccione la instancia de EC2 a la que desea acceder y, a continuación, elija Create (Crear).

Conexión a la instancia y ejecución de comandos


Note

Los pasos que se indican a continuación corresponden a la nueva consola EC2.

1. En el panel de navegación de la consola de Amazon EC2, elija Instances (Instancias) y seleccione la


instancia a la que desea conectarse.
2. Elija Connect (Conectar).

Si Connect (Conectar) no está activado, es posible que tenga que iniciar la instancia en primer lugar.
3. En el panel Connect to your instance (Conectar con su instancia), en Connection method (Método de
conexión), elija Session Manager (Administrador de sesiones) y luego Connect (Conectar).
4. En la ventana de sesión de terminal que se muestra, ingrese los siguientes comandos para crear la
carpeta tmp con los permisos correctos para que el socket tmux esté disponible:

602
AWS Cloud9 Guía del usuario
No se puede interactuar con la ventana de terminal
en AWS Cloud9 debido a errores de sesión de tmux

sudo mkdir /tmp


sudo chmod 777 /tmp
sudo rmdir /tmp/tmux-*

(Volver arriba (p. 579))

603
AWS Cloud9 Guía del usuario

Navegadores compatibles con AWS


Cloud9
En la tabla siguiente se muestran los navegadores compatibles con AWS Cloud9.

Navegador Versiones

Google Chrome Tres últimas versiones

Mozilla Firefox Tres últimas versiones

Microsoft Edge Tres últimas versiones

Apple Safari para macOS Dos últimas versiones

604
AWS Cloud9 Guía del usuario
Límites de AWS Cloud9

Límites para AWS Cloud9


En las siguientes tablas se muestran los límites de AWS Cloud9 y los servicios de AWS relacionados.

• AWS Cloud9 Límites de (p. 605)


• Cuotas de servicio de AWS relacionadas (p. 606)

Límites de AWS Cloud9


En la tabla siguiente se proporcionan los límites predeterminados de los servicios de AWS Cloud9 para
una cuenta de AWS. A menos que se indique otra cosa, cada límite es específico de la región.

Para solicitar un aumento de un límite que es ajustable, haga lo siguiente:

1. Inicie sesión en AWS y abra la página Create case (Crear caso) en el sitio web del Centro de AWS
Support.
2. Seleccione Service Limit increase (Aumento del límite del servicio).
3. En Case classification (Clasificación del caso), elija cloud9 en la lista Limit type (Tipo de límite).
4. Rellene el resto de los campos según corresponda. Si la solicitud es urgente, elija Phone (Teléfono)
como método de contacto en lugar de Web.
5. Elija Submit (Enviar).

Estos aumentos no se conceden de inmediato, de modo que podrían tardar unos días en hacerse
efectivos.

Recurso Límite predeterminado Ajustable

Número máximo de entornos de • 100 por usuario Sí


desarrollo EC2 de AWS Cloud9 • 200 por cuenta

Número máximo de entornos • 100 por usuario Sí


SSH • 200 por cuenta
1
Número máximo de miembros de El número máximo No
un entorno predeterminado de miembros es
igual a la memoria de la instancia
para ese entorno dividido
por 60 MB, con resultados
redondeados a la baja. Por
ejemplo, una instancia con 1
GiB de memoria puede tener un
máximo de 17 miembros (que
es 1 GiB dividido por 60 MB,
redondeado).

Si AWS Cloud9 no puede


determinar la memoria
de una instancia, el valor
predeterminado es un máximo

605
AWS Cloud9 Guía del usuario
AWS Service Limits relacionados

Recurso Límite predeterminado Ajustable


de 8 usuarios para cada entorno
asociado a dicha instancia.

El número máximo absoluto de


miembros para un entorno es 25.

Tamaño máximo de archivo 8 MB No


editable

1
Puede mover un entorno (p. 105) para intentar aumentar el número máximo predeterminado de
miembros. Sin embargo, el número máximo absoluto de miembros para un entorno sigue siendo 25.

AWS Service Limits relacionados


Número máximo de volúmenes de Amazon Elastic 5 000
Block Store (Amazon EBS)
Para obtener más información, consulte Límites de
Amazon Elastic Block Store (Amazon EBS) en la
Referencia general de Amazon Web Services.

Número máximo de pilas de AWS CloudFormation 200

Para obtener más información, consulte Límites


de AWS CloudFormation en la Guía del usuario de
AWS CloudFormation.

Límites de Amazon EC2 Consulte Límites de Amazon Elastic Compute


Cloud (Amazon EC2) en la Referencia general de
Amazon Web Services.

606
AWS Cloud9 Guía del usuario

Historial de revisión de la Guía del


usuario de AWS Cloud9
Este tema contiene una lista de cambios importantes en la Guía del usuario de AWS Cloud9. Para obtener
notificaciones sobre las actualizaciones de esta documentación, puede suscribirse a la fuente RSS.

Actualizaciones recientes

En la siguiente tabla se describen los cambios importantes en la Guía del usuario de AWS Cloud9 a partir
de marzo de 2019.

update-history-change update-history-description update-history-date

Validación de Lista actualizada de programas 4 de marzo de 2022


conformidad (p. 573) de conformidad para los que
AWS Cloud9 está en el ámbito.

Compatibilidad con Java Compatibilidad con lenguaje 18 de enero de 2022


mejorada (p. 138) adicional para mejorar su
experiencia de desarrollo
al trabajar con Java. Las
características de productividad
clave incluyen la finalización
de código, lint de errores,
acciones específicas del contexto
y opciones de depuración,
como puntos de interrupción e
incrementos.

Se actualizó Rol vinculado a un servicio 12 de enero de 2022


AWSServiceRoleForAWSCloud9 (p.actualizado
524) para admitir
instancias de EC2 con License
Manager.

Compatibilidad con la Se agregó contenido que 20 de diciembre de 2021


documentación de Step describe el uso de Step
Functions (p. 382) Functions para crear, editar y
ejecutar máquinas de estado.

AWS Systems Manager Se agregó contenido que 20 de diciembre de 2021


Compatibilidad con la describe los documentos de
documentación de (p. 384) automatización de Systems
Manager.

Compatibilidad con recursos de Se ha agregado soporte para 5 de noviembre de 2021


AWS (p. 365) acceder a tipos de recursos junto
con opciones de interfaz para ver
los recursos y la documentación
asociada.

Compatibilidad con App Se ha agregado compatibilidad 30 de septiembre de 2021


Runner (p. 351) con AWS App Runner a AWS
Toolkit.

607
AWS Cloud9 Guía del usuario

AWS Cloud9 también disponible AWS Cloud9Ahora también está 1 de septiembre de 2021
en las regiones de África (Ciudad disponible en las siguientes
del Cabo) y Asia-Pacífico regiones: África (Ciudad del
(Osaka (p. 607) Cabo) y Asia-Pacífico (Osaka).
Para obtener más información
acerca de los puntos de enlace
de servicio y las cuotas de
servicio asociados a estas
y a otras regiones de AWS,
consulte AWS Cloud9 en la
Referencia general de Amazon
Web Services.

CloudWatch Logs y Amazon S3 Se ha agregado compatibilidad 16 de julio de 2021


en AWS Toolkit (p. 358) con CloudWatch Logs en AWS
Toolkit para AWS Cloud9. Nueva
característica para permitir la
carga de los archivos actuales en
buckets de Amazon S3.

Puntos de enlace de la VPC para Se ha agregado compatibilidad 22 de abril de 2021


Amazon S3 (p. 75) para configurar puntos de enlace
de la VPC de Amazon S3 a
fin de permitir la descarga de
dependencias.

Control visual del código fuente Como desarrollador, puede 1 de febrero de 2021
disponible a través del panel de utilizar el panel de Git para
Git (p. 315) ejecutar comandos de Git en una
interfaz de usuario.

Lanzar instancias del entorno en Se agregó asistencia para 21 de enero de 2021


subredes privadas (p. 69) instancias de EC2 a las que se
accede a través de Systems
Manager para su lanzamiento en
subredes privadas.

Integración para AWS AWS Toolkit ahora permite a los 11 de diciembre de 2020
Toolkit (p. 338) desarrolladores navegar por los
servicios de AWS e interactuar
con estos a través de la ventana
AWS Explorer.

AWS CloudFormation y entornos Documentación ampliada sobre 29 de octubre de 2020


de EC2 sin entrada (p. 73) la creación de entornos de EC2
sin entrada mediante plantillas de
AWS CloudFormation.

Entornos de EC2 basados en Al crear un entorno de EC2 en 7 de octubre de 2020


Amazon Linux (p. 55) la consola, ahora puede elegir la
AMI de Amazon Linux 2 para la
instancia de EC2.

Instancias de EC2 sin entrada Se agregó asistencia para 12 de agosto de 2020


con Systems Manager (p. 68) acceder a instancias de EC2
privadas con AWS Systems
Manager.

608
AWS Cloud9 Guía del usuario

Depuración local mejorada de Se ha agregado compatibilidad 30 de julio de 2020


aplicaciones sin servidor de con las nuevas características
AWS (p. 373) de depuración locales para las
aplicaciones sin servidor de
AWS.

AWS Cloud9 también disponible AWS Cloud9Ahora también 29 de julio de 2020


en la región de Europa está disponible en la región de
(Milán (p. 607) Europa (Milán). Para obtener
más información acerca de los
puntos de enlace de servicio y
las cuotas de servicio asociados
a esta y a otras regiones de
AWS, consulte AWS Cloud9 en
la Referencia general de Amazon
Web Services.

Cifrado de Amazon EBS (p. 108) Nueva sección que explica cómo 3 de julio de 2020
cifrar volúmenes de Amazon EBS
para instancias de EC2 utilizadas
por los entornos de desarrollo de
AWS Cloud9.

Compatibilidad con regiones AWS Cloud9 ya está disponible 7 de mayo de 2020
adicionales para AWS en las siguientes regiones: EE.
Cloud9 (p. 607) UU. Oeste (Norte de California),
Asia-Pacífico (Hong Kong),
Europa (París), Medio Oriente
(Baréin) y América del Sur
(São Paulo). Para obtener más
información acerca de los puntos
de enlace de servicio y las cuotas
de servicio asociados a estas
y a otras regiones de AWS,
consulte AWS Cloud9 en la
Referencia general de Amazon
Web Services.

Seguridad (p. 543) Se ha agregado un capítulo 30 de abril de 2020


sobre seguridad en la Guía del
usuario de AWS Cloud9.

Etiquetas (p. 540) Utilice etiquetas que le ayuden a 22 de enero de 2020


controlar el acceso a los recursos
de AWS Cloud9 y a administrar la
información de facturación.

609
AWS Cloud9 Guía del usuario

Compatibilidad con regiones AWS Cloud9 ya está disponible 18 de diciembre de 2019


adicionales para AWS en las siguientes regiones: Asia-
Cloud9 (p. 607) Pacífico (Mumbai), Asia-Pacífico
(Seúl), Asia-Pacífico (Sídney),
Canadá (Central), Canadá
(Central), Europa (Londres)
y Europa (Estocolmo). Para
obtener más información acerca
de los puntos de enlace de
servicio y las cuotas de servicio
asociados a estas y a otras
regiones de AWS, consulte AWS
Cloud9 en la Referencia general
de Amazon Web Services.

Actualizado: solución de Las cookies de terceros ya no 6 de noviembre de 2019


problemas, no se puede abrir un son necesarias para abrir el IDE.
entorno (p. 582)

Añadido: solución de Aunque las cookies de terceros 6 de noviembre de 2019


problemas, cookies de terceros ya no son necesarias para abrir
desactivadas (p. 584) el IDE, son necesarias para
utilizar las características de
Vista previa de la aplicación o
Vista previa de archivos. Se ha
añadido información sobre este
comportamiento al tema Solución
de problemas.

Organización de Los cambios de la organización 15 de agosto de 2019


documentos (p. 607) se aplicaron a la guía del usuario
para facilitar la navegación,
especialmente para los nuevos
usuarios.

AWS Cloud9 también disponible AWS Cloud9Ahora también 15 de mayo de 2019


en la región de Europa está disponible en la región de
(Fráncfort (p. 607) Europa (Fráncfort). Para obtener
más información acerca de los
puntos de enlace de servicio y
las cuotas de servicio asociados
a esta y a otras regiones de
AWS, consulte AWS Cloud9 en
la Referencia general de Amazon
Web Services.

Se ha añadido una muestra de Se ha añadido una nueva 10 de mayo de 2019


LAMP (p. 607) muestra que demuestra cómo
usar AWS Cloud9 con LAMP
(Linux, Apache HTTP Server,
MySQL, y PHP). Para obtener
más información, consulte la
ejemplo de LAMP para AWS
Cloud9.

610
AWS Cloud9 Guía del usuario

Se ha añadido un ejemplo de Se ha agregado un nuevo 19 de abril de 2019


WordPress (p. 607) ejemplo que muestra cómo usar
AWS Cloud9 con WordPress.
Para obtener más información,
consulte el ejemplo de
WordPress para AWS Cloud9.

AWS Cloud9 también disponible AWS Cloud9Ahora también está 4 de abril de 2019
en la región de Asia-Pacífico disponible en la región de Asia-
(Tokio (p. 607) Pacífico (Tokio). Para obtener
más información acerca de los
puntos de enlace de servicio y
las cuotas de servicio asociados
a esta y a otras regiones de
AWS, consulte AWS Cloud9 en
la Referencia general de Amazon
Web Services.

Se ha agregado información Se han agregado instrucciones 2 de abril de 2019


sobre la compatibilidad con para la utilización de la consola
Ubuntu Server en entornos de de AWS Cloud9 para crear
EC (p. 607) entornos de desarrollo de EC2 de
AWS Cloud9 que se conecten a
Ubuntu Server. Para obtener más
información, consulte Creación
de un entorno de EC2.

Tenga en cuenta que


actualmente no puede utilizar
código para crear entornos
de desarrollo de EC2 de AWS
Cloud9 que se conecten a
Ubuntu Server, por ejemplo,
mediante AWS CLI, AWS
CloudFormation, AWS SDK,
Tools for Windows PowerShell
o la API de AWS Cloud9. Se
espera ofrecer compatibilidad con
estos métodos en el futuro.

Actualizaciones anteriores

En la siguiente tabla, se describen cambios importantes realizados en la Guía del usuario de AWS Cloud9
antes de abril de 2019.

Cambio Descripción Fecha de modificación

Se han añadido instrucciones de Se han ampliado las 7 de febrero de 2019


introducción para estudiantes, instrucciones de introducción
educadores y empresas a AWS Cloud9 para incluir
pasos para estudiantes,
educadores y empresas. Para
obtener más información,
consulte Configuración de AWS
Cloud9 (p. 7).

611
AWS Cloud9 Guía del usuario

Cambio Descripción Fecha de modificación

AWS CloudTrailSe ha añadido AWS CloudTrail ya admite 21 de enero de 2019


compatibilidad con AWS Cloud9. Para obtener
más información, consulte
Registro de llamadas a la API
de AWS Cloud9 con AWS
CloudTrail (p. 528).

Se ha añadido compatibilidad AWS Cloud9 ahora admite 7 de diciembre de 2018


con VPC compartidas las VPC compartidas en
Amazon VPC. Para obtener más
información, consulte Requisitos
de Amazon VPC para AWS
Cloud9 (p. 500).

AWSSe ha añadido integración AWS Cloud9 ahora es 26 de noviembre de 2018


de RoboMaker compatible con AWS
RoboMaker, un servicio que
facilita las tareas de desarrollo,
prueba e implementación
de aplicaciones de robótica
inteligentes a escala. Para
obtener más información,
consulte Introducción a AWS y
Desarrollo con AWS Cloud9 en
la Guía para desarrolladores de
AWS RoboMaker.

Se ha añadido información sobre El IDE de AWS Cloud9 ahora 2 de octubre de 2018


características de productividad ofrece características de
adicionales para proyectos de productividad adicionales para
lenguaje algunos lenguajes en el contexto
de un proyecto de lenguaje.
Para obtener más información,
consulte Compatibilidad con
TypeScript mejorada con
proyectos de lenguajes (p. 147).

Se ha añadido la ventana Go (Ir); Se agregó la ventana Go (Ir) 2 de octubre de 2018


se han eliminado las ventanas al IDE de AWS Cloud9 para
Navigate (Navegar) y Commands los entornos creados el 2 de
(Comandos) octubre de 2018 o después de
esta fecha. Esta nueva ventana
reemplaza a las ventanas
Navigate (Navegar) y Commands
(Comandos), que se han quitado
del IDE para los entornos
creados a partir del 2 de octubre
de 2018. Para obtener más
información, consulte Paso
10: Ventana Go (Ir) (p. 125) en
Recorrido del IDE (p. 116).

612
AWS Cloud9 Guía del usuario

Cambio Descripción Fecha de modificación

AWS CDKSe ha añadido una Se ha agregado una nueva 30 de agosto de 2018


muestra de muestra que indica cómo
utilizar AWS Cloud9 con el kit
de desarrollo en la nube de
AWS (AWS CDK). Para obtener
más información, consulte la
Ejemplo de AWS CDK para AWS
Cloud9 (p. 411).

Se ha agregado información Para los entornos de desarrollo 31 de julio de 2018


sobre restricciones de de EC2 de AWS Cloud9 creados
direcciones IP de SSH el 31 de julio de 2018 o después
agregadas automáticamente a de esta fecha, AWS Cloud9
entornos de EC2 ahora restringe automáticamente
el tráfico SSH entrante solo
a los rangos de direcciones
IP que utiliza AWS Cloud9
para conectarse a través
de SSH. Para obtener más
información, consulte Intervalos
de direcciones IP de entrada con
SSH para AWS Cloud9 (p. 520).

Se ha añadido una muestra de Se añadió una nueva muestra 19 de junio de 2018


Docker que demuestra cómo usar AWS
Cloud9 con Docker. Para obtener
más información, consulte la
Ejemplo de Docker para AWS
Cloud9 (p. 490).

Se han añadido muestras de Se añadieron nuevas muestras 29 de mayo de 2018


Java, .NET Core y TypeScript que demuestran cómo usar AWS
Cloud9 con Java, .NET Core, y
TypeScript. Para obtener más
información, consulte Muestra de
Java para AWS Cloud9 (p. 429),
Muestra de .NET Core para
AWS Cloud9 (p. 450) y Muestra
de TypeScript para AWS
Cloud9 (p. 484).

Se ha añadido una lista de Se ha añadido información 23 de mayo de 2018


navegadores admitidos acerca de los navegadores
compatibles con AWS Cloud9.
Para obtener más información,
consulte Navegadores
compatibles con AWS
Cloud9 (p. 604).

613
AWS Cloud9 Guía del usuario

Cambio Descripción Fecha de modificación

Se ha añadido información sobre Se ha añadido información 19 de abril de 2018


restricciones de tráfico IP SSH acerca de cómo restringir
el tráfico entrante a tan solo
los rangos de direcciones IP
que AWS Cloud9 utiliza para
conectarse a hosts a través
de SSH. Para obtener más
información, consulte Intervalos
de direcciones IP de entrada con
SSH para AWS Cloud9 (p. 520).

Se han añadido solucionadores Se han añadido nuevos 19 de abril de 2018


de problemas para obtener una solucionadores de problemas
vista previa de las aplicaciones para obtener una vista previa
y compartir las aplicaciones en de las aplicaciones y compartir
ejecución las aplicaciones en ejecución.
Para obtener más información,
consulte La pestaña de vista
previa de la aplicación muestra
un mensaje de error o está
en blanco (p. 586) y No se
puede mostrar la aplicación en
ejecución fuera del IDE (p. 587).

Se ha añadido información de Se ha agregado información 19 de abril de 2018


File Revision History (Historial de sobre cómo utilizar el panel File
revisiones de archivos) Revision History (Historial de
revisiones de archivos) en el IDE.
Para obtener más información,
consulte Trabajo con revisiones
de archivo en el entorno de
desarrollo integrado (IDE) de
AWS Cloud9 (p. 175).

Se ha agregado un solucionador Se ha agregado un nuevo 19 de marzo de 2018


de problemas para abrir entornos solucionador de problemas para
abrir entornos de desarrollo de
AWS Cloud9. Para obtener más
información, consulte No se
puede abrir un entorno (p. 582).

Se ha añadido un solucionador Se ha añadido un nuevo 19 de marzo de 2018


de problemas para el instalador solucionador de problemas para
de AWS Cloud9 el instalador de AWS Cloud9.
Para obtener más información,
consulte El instalador de
AWS Cloud9 se bloquea o
falla (p. 583).

614
AWS Cloud9 Guía del usuario

Cambio Descripción Fecha de modificación

AWS CodePipelineSe ha añadido Se ha añadido información 13 de febrero de 2018


información de acerca de cómo utilizar AWS
Cloud9 con AWS CodePipeline.
Para obtener más información,
consulte Trabajo con AWS
CodePipeline en el entorno de
desarrollo integrado (IDE) de
AWS Cloud9 (p. 312).

Se ha añadido información sobre Se ha añadido información 19 de enero de 2018


aws-shell acerca de cómo utilizar AWS
Cloud9 con el aws-shell. Para
obtener más información,
consulte la Muestra de AWS
Command Line Interface y aws-
shell para AWS Cloud9 (p. 390).

Se ha añadido disponibilidad de Esta guía ya está disponible en 10 de enero de 2018


documentación en GitHub GitHub. También puede utilizar
GitHub para enviar comentarios
y realizar solicitudes de cambio
del contenido de esta guía. Para
obtener más información, haga
clic en el icono Edit on GitHub
(Editar en GitHub) en la barra de
navegación de la guía o consulte
el repositorio de awsdocs/aws-
cloud9-user-guide en el sitio web
de GitHub.

Disponibilidad del formato Kindle Esta guía ya está disponible en 2 de enero de 2018
el formato de Amazon Kindle.
Para obtener más información,
haga clic en el icono Open
Kindle (Abrir Kindle) en la barra
de navegación de la guía o
consulte AWS Cloud9: User
Guide Kindle Edition en el sitio
web de Amazon.

Se ha agregado información de Se ha agregado información 19 de diciembre de 2017


Amazon Lightsail acerca de cómo utilizar AWS
Cloud9 con Amazon Lightsail.
Para obtener más información,
consulte Trabajo con instancias
de Amazon Lightsail en el
entorno de desarrollo integrado
(IDE) de AWS Cloud9 (p. 303).

615
AWS Cloud9 Guía del usuario

Cambio Descripción Fecha de modificación

Se han agregado descripciones Se han agregado descripciones 7 de diciembre de 2017


de configuración de entorno para de la configuración de AWS
AWS específica para entornos de
desarrollo de AWS Cloud9.
Para obtener más información,
consulte Trabajar con la
configuración de usuarios y de
proyectos de AWS en el entorno
de desarrollo integrado (IDE) de
AWS Cloud9 (p. 204).

Se han añadido instrucciones de Se han añadido pasos para 5 de diciembre de 2017


introducción para usuarios raíz utilizar AWS Cloud9 con un
de la cuenta de AWS y pasos usuario raíz de la cuenta
de configuración avanzada para de AWS. Se han agregado
equipos los pasos de configuración
avanzados para utilizar AWS
Cloud9 con equipos. Para
obtener más información,
consulte Configuración de AWS
Cloud9 (p. 7).

Se ha ampliado la cobertura de Se ha ampliado la cobertura 4 de diciembre de 2017


requisitos del entorno de los requisitos para que una
instancia de Amazon EC2 o su
propio servidor se conecten a un
entorno de desarrollo de SSH
de AWS Cloud9. Para obtener
más información, consulte
Requisitos de anfitrión del
entorno SSH (p. 515).

Publicación inicial de la Esta es la versión inicial de la 30 de noviembre de 2017


documentación Guía de usuario de AWS Cloud9.

616

También podría gustarte