

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

# Editor de código en Amazon SageMaker Studio
<a name="code-editor"></a>

El editor de código, basado en [Code-OSS, Visual Studio Code: Open Source](https://github.com/microsoft/vscode#visual-studio-code---open-source-code---oss), le ayuda a escribir, probar, depurar y ejecutar su código de análisis y machine learning. El editor de código se amplía y se integra completamente con Amazon SageMaker Studio. También es compatible con las extensiones del entorno de desarrollo integrado (IDE) disponibles en [Open VSX Registry](https://open-vsx.org/). La siguiente página proporciona información sobre el editor de código y los detalles clave para su uso.

El editor de código tiene preinstalada la extensión [AWS Toolkit for VS](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html) Code, que permite las conexiones Servicios de AWS a un generador de código de uso general impulsado por el aprendizaje automático que proporciona recomendaciones de código en tiempo real. [Amazon CodeWhisperer](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/codewhisperer.html) Para obtener más información acerca de las extensiones, consulte [Conexiones y extensiones del editor de código](code-editor-use-connections-and-extensions.md).

**importante**  
A partir del 30 de noviembre de 2023, la experiencia anterior de Amazon SageMaker Studio pasa a denominarse Amazon SageMaker Studio Classic. La siguiente sección está dedicada expresamente al uso de la experiencia de Studio actualizada. Para obtener más información sobre el uso de la aplicación de Studio Classic, consulte [Amazon SageMaker Studio Clásico](studio.md).

Para iniciar el editor de código, cree un espacio privado del editor de código. El espacio del editor de código utiliza una sola instancia de Amazon Elastic Compute Cloud (Amazon EC2) para la computación y un solo volumen de Amazon Elastic Block Store (Amazon EBS) para el almacenamiento. Todo lo que hay en el espacio, como el código, el perfil de Git y las variables de entorno, se almacena en el mismo volumen de Amazon EBS. El volumen tiene 3000 IOPS y un rendimiento de 125. MBps El administrador ha configurado los ajustes de almacenamiento predeterminados de Amazon EBS para su espacio.

El tamaño de almacenamiento predeterminado es de 5 GB, pero el administrador puede aumentar la cantidad de espacio que obtiene. Para obtener más información, consulte [Cambio del tamaño de almacenamiento predeterminado](code-editor-admin-storage-size.md).

El directorio de trabajo de los usuarios dentro del volumen de almacenamiento es `/home/sagemaker-user`. Si especifica su propia AWS KMS clave para cifrar el volumen, todo el contenido del directorio de trabajo se cifra con la clave gestionada por el cliente. Si no especificas ninguna AWS KMS clave, los datos que contiene `/home/sagemaker-user` se cifran con una clave AWS gestionada. Independientemente de si se especifica una AWS KMS clave, todos los datos que se encuentran fuera del directorio de trabajo se cifran con una clave AWS gestionada.

Puede aumentar o reducir la escala de la computación cambiando el tipo de instancia de Amazon EC2 que ejecuta la aplicación de editor de código. Antes de cambiar el tipo de instancia asociado, primero debe detener el espacio del editor de código. Para obtener más información, consulte [Instancias e imágenes de la aplicación del editor de código](code-editor-use-instances.md).

El administrador puede proporcionarle una configuración del ciclo de vida para personalizar el entorno. Puede especificar la configuración del ciclo de vida al crear el espacio. Para obtener más información, consulte [Configuraciones del ciclo de vida del editor de código](code-editor-use-lifecycle-configurations.md).

También puede traer su propio sistema de almacenamiento de archivos si tiene un volumen de Amazon EFS.

![\[La página de bienvenida de la interfaz de usuario de la aplicación del editor de código.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-home.png)


**Topics**
+ [Uso del editor de código](code-editor-use.md)
+ [Guía del administrador del editor de código](code-editor-admin.md)

# Uso del editor de código
<a name="code-editor-use"></a>

Los temas de esta sección proporcionan guías sobre el uso del editor de código, que incluyen cómo iniciar recursos Servicios de AWS, agregar conexiones y cerrarlos, entre otros. Tras crear un espacio de editor de código, puede acceder a la sesión de editor de código directamente a través del navegador.

En el entorno de editor de código, puede hacer lo siguiente: 
+ Acceda a todos los artefactos que persisten en el directorio principal
+ Clona tus GitHub repositorios y confirma los cambios
+ Accede al SDK SageMaker Python

Puede volver a Studio para revisar cualquier recurso creado en su entorno de editor de código, como experimentos, canalizaciones o trabajos de entrenamiento. 

**Topics**
+ [Comprobación de la versión del editor de código](code-editor-use-version.md)
+ [Instancias e imágenes de la aplicación del editor de código](code-editor-use-instances.md)
+ [Inicialización de una aplicación de editor de código en Studio](code-editor-use-studio.md)
+ [Inicie una aplicación de edición de código mediante el AWS CLI](code-editor-launch-cli.md)
+ [Clonación de un repositorio en el editor de código](code-editor-use-clone-a-repository.md)
+ [Conexiones y extensiones del editor de código](code-editor-use-connections-and-extensions.md)
+ [Cierre de los recursos del editor de código](code-editor-use-log-out.md)

# Comprobación de la versión del editor de código
<a name="code-editor-use-version"></a>

Los siguientes pasos muestran cómo comprobar la versión de la aplicación del editor de código.

**Comprobación de la versión de la aplicación del editor de código**

1. Inicie y ejecute un espacio de editor de código y navegue hasta la interfaz de usuario de la aplicación del editor de código. Para obtener más información, consulte [Inicialización de una aplicación de editor de código en Studio](code-editor-use-studio.md).

1. En la esquina superior izquierda de la interfaz de usuario del Editor de Código, elija el botón de menú (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-menu-icon.png)). A continuación, seleccione **Ayuda**. A continuación, seleccione **Acerca de**.

# Instancias e imágenes de la aplicación del editor de código
<a name="code-editor-use-instances"></a>

Solo algunas instancias son compatibles con las aplicaciones del editor de código. Puede elegir el tipo de instancia que sea compatible con su caso de uso en el menú desplegable **Instancia**. 

Las instancias de **Lanzamiento rápido** se inician mucho más rápido que las demás instancias. Para obtener más información sobre los tipos de instancias de inicialización rápida en Studio, consulte [Tipos de instancias disponibles para su uso con las libretas clásicas de Amazon SageMaker Studio](notebooks-available-instance-types.md).

**nota**  
Si utiliza un tipo de instancia de GPU al configurar la aplicación de editor de código, también debe usar una imagen basada en GPU. La interfaz de usuario del espacio del editor de código selecciona automáticamente una imagen compatible al seleccionar el tipo de instancia.

Dentro de un espacio, los datos se almacenan en un volumen de Amazon EBS que persiste independientemente de la duración de una instancia. No perderá los datos cuando cambie de instancias. Si el espacio del editor de código es `Running`, debe detenerlo antes de cambiar los tipos de instancias.

La siguiente tabla muestra las imágenes ARNs de CPU y GPU del editor de código disponibles para cada región.


|  Region  |  CPU  |  GPU  | 
| --- | --- | --- | 
|  us-east-1  | arn:aws:sagemaker:us-east-1:885854791233:image/sagemaker-distribution-cpu |  arn:aws:sagemaker:us-east-1:885854791233:image/sagemaker-distribution-gpu | 
|  us-east-2  | arn:aws:sagemaker:us-east-2:37914896644:image/sagemaker-distribution-cpu | arn:aws:sagemaker:us-east-2:37914896644:image/sagemaker-distribution-gpu | 
|  us-west-1  | arn:aws:sagemaker:us-west-1:053634841547:image/sagemaker-distribution-cpu | arn:aws:sagemaker:us-west-1:053634841547:image/sagemaker-distribution-gpu | 
|  us-west-2  | arn:aws:sagemaker:us-west-2:542918446943:image/sagemaker-distribution-cpu |  arn:aws:sagemaker:us-west-2:542918446943:image/sagemaker-distribution-gpu | 
|  af-south-1  | arn:aws:sagemaker:af-south-1:238384257742:image/sagemaker-distribution-cpu | arn:aws:sagemaker:af-south-1:238384257742:image/sagemaker-distribution-gpu | 
|  ap-east-1  | arn:aws:sagemaker:ap-east-1:523751269255:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-east-1:523751269255:image/sagemaker-distribution-gpu | 
|  ap-south-1  | arn:aws:sagemaker:ap-south-1:245090515133:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-south-1:245090515133:image/sagemaker-distribution-gpu | 
|  ap-northeast-2  | arn:aws:sagemaker:ap-northeast-2:064688005998:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-northeast-2:064688005998:image/sagemaker-distribution-gpu | 
|  ap-southeast-1  | arn:aws:sagemaker:ap-southeast-1:022667117163:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-southeast-1:022667117163:image/sagemaker-distribution-gpu | 
|  ap-southeast-2  | arn:aws:sagemaker:ap-southeast-2:648430277019:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-southeast-2:648430277019:image/sagemaker-distribution-gpu | 
|  ap-northeast-1  | arn:aws:sagemaker:ap-northeast-1:010972774902:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-northeast-1:010972774902:image/sagemaker-distribution-gpu | 
|  ca-central-1  | arn:aws:sagemaker:ca-central-1:481561238223:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ca-central-1:481561238223:image/sagemaker-distribution-gpu | 
|  eu-central-1  | arn:aws:sagemaker:eu-central-1:545423591354:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-central-1:545423591354:image/sagemaker-distribution-gpu | 
|  eu-west-1  | arn:aws:sagemaker:eu-west-1:819792524951:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-west-1:819792524951:image/sagemaker-distribution-gpu | 
|  eu-west-2  | arn:aws:sagemaker:eu-west-2:021081402939:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-west-2:021081402939:image/sagemaker-distribution-gpu | 
|  eu-west-3  | arn:aws:sagemaker:eu-west-3:856416204555:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-west-3:856416204555:image/sagemaker-distribution-gpu | 
|  eu-north-1  | arn:aws:sagemaker:eu-north-1:175620155138:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-north-1:175620155138:image/sagemaker-distribution-gpu | 
|  eu-south-1  | arn:aws:sagemaker:eu-south-1:810671768855:image/sagemaker-distribution-cpu | arn:aws:sagemaker:eu-south-1:810671768855:image/sagemaker-distribution-gpu | 
|  sa-east-1  | arn:aws:sagemaker:sa-east-1:567556641782:image/sagemaker-distribution-cpu | arn:aws:sagemaker:sa-east-1:567556641782:image/sagemaker-distribution-gpu | 
|  ap-northeast-3  | arn:aws:sagemaker:ap-northeast-3:564864627153:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-northeast-3:564864627153:image/sagemaker-distribution-gpu | 
|  ap-southeast-3  | arn:aws:sagemaker:ap-southeast-3:370607712162:image/sagemaker-distribution-cpu | arn:aws:sagemaker:ap-southeast-3:370607712162:image/sagemaker-distribution-gpu | 
|  me-south-1  | arn:aws:sagemaker:me-south-1:523774347010:image/sagemaker-distribution-cpu | arn:aws:sagemaker:me-south-1:523774347010:image/sagemaker-distribution-gpu | 
|  me-central-1  | arn:aws:sagemaker:me-central-1:358593528301:image/sagemaker-distribution-cpu | arn:aws:sagemaker:me-central-1:358593528301:image/sagemaker-distribution-gpu | 
|  il-central-1  | arn:aws:sagemaker:il-central-1:080319125002:image/sagemaker-distribution-cpu | arn:aws:sagemaker:il-central-1:080319125002:image/sagemaker-distribution-gpu | 
|  cn-north-1  | arn:aws:sagemaker:cn-north-1:674439102856:image/sagemaker-distribution-cpu |  arn:aws:sagemaker:cn-north-1:674439102856:image/sagemaker-distribution-gpu  | 
|  cn-northwest-1  | arn:aws:sagemaker:cn-northwest-1:651871951035:image/sagemaker-distribution-cpu |  arn:aws:sagemaker:cn-northwest-1:651871951035:image/sagemaker-distribution-gpu  | 
|  us-gov-west-1  | arn:aws:sagemaker:us-gov-west-1:300992924816:image/sagemaker-distribution-cpu | arn:aws:sagemaker:us-gov-west-1:300992924816:image/sagemaker-distribution-gpu | 
|  us-gov-east-1  | arn:aws:sagemaker:us-gov-east-1:300993876623:image/sagemaker-distribution-cpu | arn:aws:sagemaker:us-gov-east-1:300993876623:image/sagemaker-distribution-gpu | 

Si encuentra límites de instancia, póngase en contacto con su administrador. Para obtener más almacenamiento y procesamiento para un usuario, los administradores pueden solicitar un aumento de AWS las cuotas de un usuario. Para obtener más información sobre cómo solicitar un aumento de cuota, consulta los [puntos de conexión y las cuotas de Amazon SageMaker AI](https://docs.aws.amazon.com/general/latest/gr/sagemaker.html).

# Inicialización de una aplicación de editor de código en Studio
<a name="code-editor-use-studio"></a>

Para configurar y acceder al entorno de desarrollo integrado con el editor de código a través de Studio, debe crear un espacio de editor de código. Para obtener más información sobre espacios en Studio, consulte [Espacios de Amazon SageMaker Studio](studio-updated-spaces.md).

![\[El botón de la aplicación del editor de código y el mosaico de información general de la interfaz de usuario de Studio.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-studio-home.png)


En el siguiente procedimiento se muestra cómo crear y ejecutar un espacio del editor de código.

**Creación y ejecución de un espacio de editor de código**

1. Lance la experiencia de Studio actualizada. Para obtener más información, consulte [Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html).

1. Realice una de las siguientes acciones:
   + En la interfaz de usuario actualizada de Amazon SageMaker Studio, selecciona **Editor de código** en el menú **Aplicaciones**.
   + En la interfaz de usuario actualizada de Amazon SageMaker Studio, selecciona los **espacios de View Code Editor** en la sección **Descripción general** de la página de inicio de Studio.

1. En la esquina superior derecha de la página de inicio del editor de código, elija **Crear espacio del editor de código**.

1. Introduzca un nombre para el espacio del editor de código. El nombre debe tener de 1 a 62 caracteres y usar solo letras, números y guiones.

1. Elija **Crear espacio**.

1. Una vez creado el espacio, dispone de algunas opciones antes de decidir cómo ejecutarlo:
   + Puede editar los ajustes de **Almacenamiento (GB)**, **Configuración del ciclo de vida** o **Asociar sistema de archivos EFS personalizado**. Las opciones para estos ajustes están disponibles según las especificaciones del administrador.
   + En el menú desplegable **Instancia**, puede elegir el tipo de instancia más compatible con su caso de uso. En el menú desplegable **Imagen**, puede elegir una imagen de SageMaker distribución o una imagen personalizada proporcionada por su administrador.
**nota**  
Al cambiar entre las imágenes distribuidas por SageMaker, se modifica la versión subyacente del Editor de código que se utiliza, lo que puede provocar incompatibilidades debido al almacenamiento en caché del navegador. Debe borrar la memoria caché del navegador al cambiar de una imagen a otra.

     Si utiliza un tipo de instancia de GPU al configurar la aplicación de editor de código, también debe usar una imagen basada en GPU. Dentro de un espacio, los datos se almacenan en un volumen de Amazon EBS que persiste independientemente de la duración de una instancia. No perderá los datos cuando cambie de instancias.
**importante**  
Las políticas de IAM personalizadas que permiten a los usuarios de Studio crear espacios también deben conceder permisos para enumerar imágenes (`sagemaker: ListImage`) para ver imágenes personalizadas. Para agregar el permiso, consulte [Adición y eliminación de permisos de identidad de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) en la Guía del usuario de *AWS Identity and Access Management*.   
[AWS políticas gestionadas para Amazon SageMaker AI](security-iam-awsmanpol.md)que otorgan permisos para crear recursos de SageMaker IA ya incluyen permisos para enumerar imágenes al crear esos recursos.
**nota**  
Para actualizar la configuración del espacio, primero debe detener el espacio. Si tu editor de código usa una NVMe instancia con almacenes de instancias, todos los datos almacenados en el NVMe almacén se eliminan cuando se detiene el espacio.

1. Tras actualizar la configuración, seleccione **Ejecutar espacio** en la página de detalles del espacio.

1. Cuando el estado del espacio sea `Running`, seleccione **Abrir editor de código** para ir a la sesión del editor de código. 

![\[La página de detalles del espacio de una aplicación del editor de código en la interfaz de usuario de Studio.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-open.png)


# Inicie una aplicación de edición de código mediante el AWS CLI
<a name="code-editor-launch-cli"></a>

Para configurar y acceder al entorno de desarrollo integrado con el editor de código a través de la AWS Command Line Interface (AWS CLI), debe crear un espacio de editor de código. Asegúrese de cumplir los [Cómo completar los requisitos previos de](code-editor-admin-prerequisites.md) antes de realizar los siguientes pasos. Utilice el siguiente procedimiento para crear y ejecutar un espacio del editor de código.

**Creación y ejecución de un espacio de editor de código**

1. Acceda a un espacio mediante AWS Identity and Access Management (IAM) o AWS IAM Identity Center autenticación. Para obtener más información sobre cómo acceder a los espacios mediante la entrada AWS CLI, consulte *Acceder a los espacios mediante la entrada AWS Command Line Interface*. [Espacios de Amazon SageMaker Studio](studio-updated-spaces.md) 

1. Cree una aplicación y especifique `CodeEditor` como el `app-type` mediante el siguiente comando.

   Si utiliza un tipo de instancia de GPU al crear la aplicación de editor de código, también debe usar una imagen basada en GPU.

   ```
   aws sagemaker create-app \
   --domain-id domain-id \
   --space-name space-name \
   --app-type CodeEditor \
   --app-name default \
   --resource-spec "SageMakerImageArn=arn:aws:sagemaker:region:account-id:image/sagemaker-distribution-cpu"
   ```

   Para obtener más información sobre la imagen del editor de código disponible ARNs, consulte[Instancias e imágenes de la aplicación del editor de código](code-editor-use-instances.md).

1. Una vez que la aplicación del editor de código esté en servicio, lance la aplicación mediante una URL prefirmada. Puede usar la API de `describe-app` para comprobar si la aplicación está en servicio. Utilice la API de `create-presigned-domain-url` para crear una URL prefirmada:

   ```
   aws sagemaker create-presigned-domain-url \
   --domain-id domain-id \
   --space-name space-name \
   --user-profile-name user-profile-name \
   --session-expiration-duration-in-seconds 43200 \
   --landing-uri app:CodeEditor:
   ```

1. Abra la URL generada para empezar a trabajar en la aplicación del editor de código.

# Clonación de un repositorio en el editor de código
<a name="code-editor-use-clone-a-repository"></a>

Puede navegar por las carpetas y clonar un repositorio en la ventana del **Explorador** de la interfaz de usuario de la aplicación del editor de código. 

Para clonar un repositorio, realice los siguientes pasos:

**Clonación de un repositorio**

1. Abra la aplicación de edición de código en el navegador y elija el botón **Exploración** (![\[Icon representing multiple documents or pages stacked on top of each other.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-exploration-icon.png)) en el panel de navegación izquierdo.

1. Seleccione **Clonar repositorio** en la ventana del **Explorador**. A continuación, proporcione una URL de repositorio o elija un origen de repositorio en la petición.

1. Elija una carpeta en la que clonar el repositorio. Tenga en cuenta que la carpeta predeterminada del editor de código es `/home/sagemaker-user/`. La clonación de un repositorio puede tardar un poco.

1. Para abrir el repositorio clonado, elija **Abrir en una ventana nueva** o **Abrir**.

1.  Para volver a la página de inicio de la interfaz de usuario de la aplicación de editor de código, seleccione **Cancelar**.

1. En el repositorio, una petición le pregunta si confía en los autores de los archivos del nuevo repositorio. Dispone de dos opciones:

   1. Para confiar en la carpeta y activar todas las características, elija **Sí, confío en los autores**.

   1. Para explorar el contenido del repositorio en *modo restringido*, seleccione **No, no confío en los autores**.

      En el modo restringido, no se permite la ejecución de tareas, la depuración está deshabilitada, la configuración del espacio de trabajo no se aplica y las extensiones tienen una funcionalidad limitada.

      Para salir del modo restringido, confiar en los autores de todos los archivos de la carpeta actual o de la carpeta principal y activar todas las características, seleccione **Administrar** en el banner del **Modo restringido**.

# Conexiones y extensiones del editor de código
<a name="code-editor-use-connections-and-extensions"></a>

El editor de código admite las Servicios de AWS conexiones IDE y las extensiones disponibles en [Open VSX Registry](https://open-vsx.org/). 

## Conexiones a AWS
<a name="code-editor-use-connections"></a>

Los entornos del editor de código están integrados con el [Kit de herramientas de AWS para VS Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html) para agregar conexiones a Servicios de AWS. Para empezar con las conexiones a Servicios de AWS, debe tener credenciales AWS Identity and Access Management (IAM) válidas. Para obtener más información, consulte [Autenticación y acceso al AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/establish-credentials.html).

En su entorno de editor de código, puede agregar conexiones a: 
+  [AWS Explorer](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/aws-explorer.html): vea, modifique e implemente AWS recursos en Amazon S3 y más. CloudWatch

  El acceso a determinadas funciones de AWS Explorer requiere ciertos AWS permisos. Para obtener más información, consulte [Autenticación y acceso al AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/establish-credentials.html).
+ [Amazon CodeWhisperer](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/codewhisperer.html): cree aplicaciones más rápido con sugerencias de código basadas en IA. 

  Para utilizarlo Amazon CodeWhisperer con el editor de código, debe añadir los siguientes permisos a su función de ejecución de SageMaker IA.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Sid": "CodeWhispererPermissions",
        "Effect": "Allow",
        "Action": ["codewhisperer:GenerateRecommendations"],
        "Resource": "*"
      }
    ]
  }
  ```

------

  Para obtener información, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) y [Agregar y eliminar permisos de identidad de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) en la *Guía del usuario de IAM*.

## Extensiones
<a name="code-editor-use-extensions"></a>

El editor de código admite las extensiones IDE disponibles en el [Open VSX Registry](https://open-vsx.org/). 

Para empezar a utilizar las extensiones en el entorno del editor de código, seleccione el icono de **Extensiones** (![\[Icon showing two overlapping squares representing multiple windows or instances.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-extensions-icon.png)) en el panel de navegación izquierdo. Aquí, puede configurar las conexiones a AWS instalando el AWS Toolkit. Para obtener más información, consulte [Instalación de la AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/setup-toolkit.html).

En la barra de búsqueda, puede buscar directamente extensiones adicionales a través del [Open VSX Registry](https://open-vsx.org/), como AWS Toolkit, Jupyter, Python y más.

# Cierre de los recursos del editor de código
<a name="code-editor-use-log-out"></a>

Cuando termine de usar un espacio del editor de código, puede usar Studio para detenerlo. De esta forma, dejará de incurrir en costos por el espacio. 

Como alternativa, puede eliminar los recursos del editor de código no utilizados utilizando la AWS CLI.

## Detención del espacio del editor de código mediante Studio
<a name="code-editor-use-log-out-stop-space"></a>

Para detener el espacio del editor de código en Studio, siga estos pasos:

**Detención del espacio del editor de código en Studio**

1. Vuelva a la página de inicio del editor de código mediante una de las siguientes acciones: 

   1. En la barra de navegación de la esquina superior izquierda, elija **Editor de código**.

   1. Como alternativa, en el panel de navegación izquierdo, elija **Editor de código** en el menú **Aplicaciones.**

1. Busque el nombre del espacio del editor de código que ha creado. Si el estado del espacio es **En ejecución**, seleccione **Detener** en la columna **Acción**. También puede detener el espacio directamente en la página de detalles del espacio seleccionando **Detener espacio**. Es posible que el espacio tarde un tiempo en detenerse.

![\[La página de detalles del espacio de una aplicación del editor de código en la interfaz de usuario.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-stop-space.png)


Los recursos adicionales, como los puntos de enlace de SageMaker IA, los clústeres de Amazon EMR (Amazon EMR) y los depósitos de Amazon Simple Storage Service (Amazon S3) creados desde Studio, no se eliminan automáticamente cuando la instancia de espacio se cierra. Para dejar de incurrir en cargos de los recursos, elimine los recursos adicionales. Para obtener más información sobre cómo eliminas recursos, consulte [Eliminación de recursos sin usar](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-jl-admin-guide-clean-up.html).

## Elimine los recursos del editor de código mediante el AWS CLI
<a name="code-editor-use-log-out-shut-down-resources"></a>

Puede eliminar la aplicación y el espacio del editor de código con AWS Command Line Interface (AWS CLI).
+ [DeleteApp](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteApp.html)
+ [DeleteSpace](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteSpace.html)

# Guía del administrador del editor de código
<a name="code-editor-admin"></a>

Puede utilizar el editor de código con una instancia bajo demanda para acelerar el tiempo de inicio y disponer de un almacenamiento configurable. Puede lanzar una aplicación de editor de código a través de Amazon SageMaker Studio o a través del AWS CLI. También puede editar la configuración predeterminada del editor de código en la consola de dominio. Para obtener más información, consulte [Edición de la configuración del dominio](domain-edit.md). En los siguientes temas se describe cómo los administradores pueden configurar el editor de código, basado en Code-OSS, Visual Studio Code: Open Source cambiando las opciones de almacenamiento, personalizando los entornos y administrando el acceso de los usuarios, además de proporcionar información sobre los requisitos previos necesarios para utilizar el editor de código.

**Topics**
+ [Cómo completar los requisitos previos de](code-editor-admin-prerequisites.md)
+ [Concesión de acceso a los usuarios a espacios privados](code-editor-admin-user-access.md)
+ [Cambio del tamaño de almacenamiento predeterminado](code-editor-admin-storage-size.md)
+ [Configuraciones del ciclo de vida del editor de código](code-editor-use-lifecycle-configurations.md)
+ [Imágenes personalizadas](code-editor-custom-images.md)

# Cómo completar los requisitos previos de
<a name="code-editor-admin-prerequisites"></a>

Para utilizar el editor de código, basado en Code-OSS, Visual Studio Code: Open Source, debe cumplir los siguientes requisitos previos.

1. Primero debes incorporarte al dominio Amazon SageMaker AI y crear un perfil de usuario. Para obtener más información, consulte [Descripción general del dominio Amazon SageMaker AI](gs-studio-onboard.md).

1. Si interactúa con su aplicación de edición de código mediante el AWS CLI, también debe cumplir los siguientes requisitos previos.

   1.  AWS CLI Actualícela siguiendo los pasos que se indican en [Instalación de la AWS CLI versión actual](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html#install-tool-bundled). 

   1.  En el equipo local, ejecute `aws configure` y proporcione sus credenciales de AWS . Para obtener información sobre AWS las credenciales, consulte [Descripción y obtención de AWS las credenciales](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html). 

1. (Opcional) Para obtener más almacenamiento y procesamiento para su aplicación, puede solicitar un aumento de sus AWS cuotas. Para obtener más información sobre cómo solicitar un aumento de cuota, consulta los [puntos de conexión y las cuotas de Amazon SageMaker AI](https://docs.aws.amazon.com/general/latest/gr/sagemaker.html).

# Concesión de acceso a los usuarios a espacios privados
<a name="code-editor-admin-user-access"></a>

**importante**  
Las políticas de IAM personalizadas que permiten a Amazon SageMaker Studio o Amazon SageMaker Studio Classic crear SageMaker recursos de Amazon también deben conceder permisos para añadir etiquetas a esos recursos. El permiso para añadir etiquetas a los recursos es necesario porque Studio y Studio Classic etiquetan automáticamente todos los recursos que crean. Si una política de IAM permite a Studio y Studio Classic crear recursos, pero no permite el etiquetado, se pueden producir errores de tipo AccessDenied «» al intentar crear recursos. Para obtener más información, consulte [Proporcione permisos para etiquetar los recursos de SageMaker IA](security_iam_id-based-policy-examples.md#grant-tagging-permissions).  
[AWS políticas gestionadas para Amazon SageMaker AI](security-iam-awsmanpol.md)que otorgan permisos para crear SageMaker recursos ya incluyen permisos para añadir etiquetas al crear esos recursos.

En esta sección se proporciona una política que concede a los usuarios acceso a los espacios privados. También puede usar la política para restringir los espacios privados y las aplicaciones asociadas a ellos al propietario asociado al perfil de usuario. 

Para proporcionar permisos a los usuarios, haga lo siguiente:
+ Espacios privados
+ El perfil de usuario necesario para acceder a los espacios privados

Para proporcionar permisos, asocie la siguiente política a los roles de IAM de sus usuarios.

------
#### [ JSON ]

****  

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

      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateApp",
        "sagemaker:DeleteApp"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:app/*",
      "Condition": {
        "Null": {
          "sagemaker:OwnerUserProfileArn": "true"
        }
      }
    },
    {
      "Sid": "SMStudioCreatePresignedDomainUrlForUserProfile",
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreatePresignedDomainUrl"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:user-profile/domain-id/user-profile-name"
    },
    {
      "Sid": "SMStudioAppPermissionsListAndDescribe",
      "Effect": "Allow",
      "Action": [
        "sagemaker:ListApps",
        "sagemaker:ListDomains",
        "sagemaker:ListUserProfiles",
        "sagemaker:ListSpaces",
        "sagemaker:DescribeApp",
        "sagemaker:DescribeDomain",
        "sagemaker:DescribeUserProfile",
        "sagemaker:DescribeSpace"
      ],
      "Resource": "*"
    },
    {
      "Sid": "SMStudioAppPermissionsTagOnCreate",
      "Effect": "Allow",
      "Action": [
        "sagemaker:AddTags"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:*/*",
      "Condition": {
        "Null": {
          "sagemaker:TaggingAction": "false"
        }
      }
    },
    {
      "Sid": "SMStudioRestrictSharedSpacesWithoutOwners",
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateSpace",
        "sagemaker:UpdateSpace",
        "sagemaker:DeleteSpace"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:space/domain-id/*",
      "Condition": {
        "Null": {
          "sagemaker:OwnerUserProfileArn": "true"
        }
      }
    },
    {
      "Sid": "SMStudioRestrictSpacesToOwnerUserProfile",
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateSpace",
        "sagemaker:UpdateSpace",
        "sagemaker:DeleteSpace"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:space/domain-id/*",
      "Condition": {
        "ArnLike": {
        "sagemaker:OwnerUserProfileArn": "arn:aws:sagemaker:us-east-1:111122223333:user-profile/domain-id/user-profile-name"
        },
        "StringEquals": {
          "sagemaker:SpaceSharingType": [
            "Private",
            "Shared"
          ]
        }
      }
    },
    {
      "Sid": "SMStudioRestrictCreatePrivateSpaceAppsToOwnerUserProfile",
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateApp",
        "sagemaker:DeleteApp"
      ],
      "Resource": "arn:aws:sagemaker:us-east-1:111122223333:app/domain-id/*",
      "Condition": {
        "ArnLike": {
        "sagemaker:OwnerUserProfileArn": "arn:aws:sagemaker:us-east-1:111122223333:user-profile/domain-id/user-profile-name"
        },
        "StringEquals": {
          "sagemaker:SpaceSharingType": [
            "Private"
          ]
        }
      }
    }
  ]
}
```

------

# Cambio del tamaño de almacenamiento predeterminado
<a name="code-editor-admin-storage-size"></a>

Puede cambiar la configuración de almacenamiento predeterminada de sus usuarios. También puede cambiar la configuración de almacenamiento predeterminada en función de los requisitos de la organización y las necesidades de los usuarios.

Para cambiar el tamaño de almacenamiento de los usuarios, realice lo siguiente:

1. Actualice la configuración de almacenamiento de Amazon EBS en el dominio. 

1. Cree un perfil de usuario y especifique la configuración de almacenamiento que contiene.

Usa el siguiente comando AWS Command Line Interface (AWS CLI) para actualizar el dominio.

```
aws --region $REGION sagemaker update-domain \
--domain-id $DOMAIN_ID \
--default-user-settings '{
    "SpaceStorageSettings": {
        "DefaultEbsStorageSettings":{
            "DefaultEbsVolumeSizeInGb":5,
            "MaximumEbsVolumeSizeInGb":100
        }
    }
}'
```

Utilice el siguiente AWS CLI comando para crear el perfil de usuario y especificar la configuración de almacenamiento predeterminada.

```
aws --region $REGION sagemaker create-user-profile \
--domain-id $DOMAIN_ID \
--user-profile-name $USER_PROFILE_NAME \
--user-settings '{
    "SpaceStorageSettings": {
        "DefaultEbsStorageSettings":{
            "DefaultEbsVolumeSizeInGb":5,
            "MaximumEbsVolumeSizeInGb":100
        }
    }
}'
```

Utilice los siguientes AWS CLI comandos para actualizar la configuración de almacenamiento predeterminada en el perfil de usuario.

```
aws --region $REGION sagemaker update-user-profile \
--domain-id $DOMAIN_ID \
--user-profile-name $USER_PROFILE_NAME \
--user-settings '{
    "SpaceStorageSettings": {
        "DefaultEbsStorageSettings":{
            "DefaultEbsVolumeSizeInGb":25,
            "MaximumEbsVolumeSizeInGb":200
        }
    }
}'
```

# Configuraciones del ciclo de vida del editor de código
<a name="code-editor-use-lifecycle-configurations"></a>

Puede utilizar las configuraciones del ciclo de vida del editor de código para automatizar la personalización del entorno de Studio. Esta personalización incluye la instalación de paquetes personalizados, la configuración de extensiones, la precarga de conjuntos de datos y la configuración de repositorios de código fuente.

En las siguientes instrucciones, se utiliza AWS Command Line Interface (AWS CLI) para crear, adjuntar, depurar y separar las configuraciones del ciclo de vida del tipo de `CodeEditor` aplicación:
+ [Creación y asociación de configuraciones de ciclo de vida en Studio](code-editor-use-lifecycle-configurations-studio-create.md)
+ [Depuración de configuraciones de ciclo de vida en Studio](code-editor-use-lifecycle-configurations-studio-debug.md)
+ [Desasociación de configuraciones de ciclo de vida en Studio](code-editor-use-lifecycle-configurations-studio-detach.md)

# Creación y asociación de configuraciones de ciclo de vida en Studio
<a name="code-editor-use-lifecycle-configurations-studio-create"></a>

La siguiente sección proporciona AWS CLI comandos para crear una configuración de ciclo de vida, adjuntar una configuración de ciclo de vida al crear un nuevo perfil de usuario y adjuntar una configuración de ciclo de vida al actualizar un perfil de usuario. Para ver los requisitos previos y los pasos generales para crear y asociar configuraciones del ciclo de vida en Studio, consulte [Creación de una configuración de ciclo de vida](jl-lcc-create.md). 

Al crear la configuración del ciclo de vida de Studio con el comando de `create-studio-lifecycle-config`, asegúrese de especificar que el `studio-lifecycle-config-app-type` es `CodeEditor`. En el siguiente ejemplo se muestra cómo crear una nueva configuración de ciclo de vida de Studio para la aplicación del editor de código.

```
aws sagemaker create-studio-lifecycle-config \
--studio-lifecycle-config-name my-code-editor-lcc \
--studio-lifecycle-config-content $LCC_CONTENT \
--studio-lifecycle-config-app-type CodeEditor
```

Tenga en cuenta el ARN de la configuración del ciclo de vida recién creada que se devuelve. Al asociar una configuración de ciclo de vida, proporcione este ARN en la lista `LifecycleConfigArns` de `CodeEditorAppSettings`. 

Puede asociar una configuración de ciclo de vida al crear un perfil de usuario o un dominio. En el siguiente ejemplo se muestra cómo crear un perfil de usuario con la configuración del ciclo de vida asociada. También puede crear un nuevo dominio con una configuración del ciclo de vida asociada mediante el comando [create-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/opensearch/create-domain.html).

```
# Create a new UserProfile
aws sagemaker create-user-profile \
--domain-id domain-id \
--user-profile-name user-profile-name \
--user-settings '{
"CodeEditorAppSettings": {
  "LifecycleConfigArns":
    [lifecycle-configuration-arn-list]
  }
}'
```

Como alternativa, puede asociar una configuración de ciclo de vida al actualizar un perfil de usuario o un dominio. En el siguiente ejemplo se muestra cómo actualizar un perfil de usuario con la configuración del ciclo de vida asociada. También puede actualizar un nuevo dominio con una configuración de ciclo de vida asociada mediante el comando [update-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-domain.html).

```
# Update a UserProfile
aws sagemaker update-user-profile \
--domain-id domain-id \
--user-profile-name user-profile-name \
--user-settings '{
"CodeEditorAppSettings": {
  "LifecycleConfigArns":
    [lifecycle-configuration-arn-list]
  }
}'
```

# Depuración de configuraciones de ciclo de vida en Studio
<a name="code-editor-use-lifecycle-configurations-studio-debug"></a>

Para depurar scripts de configuración del ciclo de vida del editor de código, debe usar Studio. Para obtener instrucciones sobre la depuración de configuraciones de ciclo de vida en Studio, consulte[Depuración de configuraciones del ciclo de vida](jl-lcc-debug.md). Para buscar los registros de una aplicación específica, busque en los flujos de registro utilizando el siguiente formato:

```
domain-id/space-name/CodeEditor/default/LifecycleConfigOnStart
```

# Desasociación de configuraciones de ciclo de vida en Studio
<a name="code-editor-use-lifecycle-configurations-studio-detach"></a>

Para desasociar configuraciones de ciclo de vida del editor de código, puede utilizar la consola o la AWS CLI. Para conocer los pasos para desasociar configuraciones de ciclo de vida de la consola de Studio, consulte [Desasociación de configuraciones de ciclo de vida](jl-lcc-delete.md).

Para separar una configuración de ciclo de vida mediante el AWS CLI, elimine la configuración de ciclo de vida deseada de la lista de configuraciones de ciclo de vida adjunta al recurso. A continuación, pase la lista como parte del comando correspondiente:
+ [update-user-profile](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-user-profile.html)
+ [update-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-domain.html)

Por ejemplo, el siguiente comando elimina todas las configuraciones de ciclo de vida de la aplicación de editor de código asociadas al dominio.

```
aws sagemaker update-domain --domain-id domain-id \
--default-user-settings '{
"CodeEditorAppSettings": {
  "LifecycleConfigArns":
    []
  }
}'
```

# Creación de una configuración de ciclo de vida para clonar repositorios en una aplicación de editor de código
<a name="code-editor-use-lifecycle-configurations-repositories"></a>

En esta sección se muestra cómo clonar un repositorio y crear una aplicación de editor de código con la configuración de ciclo de vida asociada.

1. En su equipo local, cree un archivo con el nombre `my-script.sh` que contenga lo siguiente:

   ```
   #!/bin/bash
   set -eux
   ```

1. Clone el repositorio que elija en el script de configuración de ciclo de vida. 

   ```
   export REPOSITORY_URL="https://github.com/aws-samples/sagemaker-studio-lifecycle-config-examples.git"
   git -C /home/sagemaker-user clone $REPOSITORY_URL
   ```

1. Tras finalizar el script, cree y asocie la configuración de ciclo de vida. Para obtener más información, consulte [Creación y asociación de configuraciones de ciclo de vida en Studio](code-editor-use-lifecycle-configurations-studio-create.md).

1. Cree su aplicación de editor de código con la configuración de ciclo de vida asociada.

   ```
   aws sagemaker create-app \
   --domain-id domain-id \
   --space-name space-name \
   --app-type CodeEditor \
   --app-name default \
   --resource-spec "SageMakerImageArn=arn:aws:sagemaker:region:image-account-id:image/sagemaker-distribution-cpu,LifecycleConfigArn=arn:aws:sagemaker:region:user-account-id:studio-lifecycle-config/my-code-editor-lcc,InstanceType=ml.t3.large"
   ```

   Para obtener más información sobre la imagen del editor de código disponible ARNs, consulte[Instancias e imágenes de la aplicación del editor de código](code-editor-use-instances.md).

# Creación de una configuración de ciclo de vida para instalar extensiones del editor de código
<a name="code-editor-use-lifecycle-configurations-extensions"></a>

En esta sección se muestra cómo crear una configuración de ciclo de vida para instalar extensiones del [Open VSX Registry](https://open-vsx.org/) en su entorno de editor de código.

1. En su equipo local, cree un archivo con el nombre `my-script.sh` que contenga lo siguiente:

   ```
   #!/bin/bash
   set -eux
   ```

1. En el script, instale la extensión [Open VSX Registry](https://open-vsx.org/) que prefiera:

   ```
   sagemaker-code-editor --install-extension AmazonEMR.emr-tools --extensions-dir /opt/amazon/sagemaker/sagemaker-code-editor-server-data/extensions
   ```

   Puede recuperar el nombre de la extensión desde la URL de la extensión en el [Open VSX Registry](https://open-vsx.org/). El nombre de la extensión que se utilizará en el comando `sagemaker-code-editor` debe contener todo el texto que sigue a `https://open-vsx.org/extension/` la URL. Sustituya todas las instancias de una barra (`/`) por un punto (`.`). Por ejemplo, `AmazonEMR/emr-tools` debería ser `AmazonEMR.emr-tools`.  
![\[La página de la extensión Amazon EMR en Open VSX Registry.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/code-editor/code-editor-emr-extension.png)

1. Tras finalizar el script, cree y asocie la configuración de ciclo de vida. Para obtener más información, consulte [Creación y asociación de configuraciones de ciclo de vida en Studio](code-editor-use-lifecycle-configurations-studio-create.md).

1. Cree su aplicación de editor de código con la configuración de ciclo de vida asociada:

   ```
   aws sagemaker create-app \
   --domain-id domain-id \
   --space-name space-name \
   --app-type CodeEditor \
   --app-name default \
   --resource-spec "SageMakerImageArn=arn:aws:sagemaker:region:image-account-id:image/sagemaker-distribution-cpu,LifecycleConfigArn=arn:aws:sagemaker:region:user-account-id:studio-lifecycle-config/my-code-editor-lcc,InstanceType=ml.t3.large"
   ```

   Para obtener más información sobre la imagen del editor de código disponible ARNs, consulte[Instancias e imágenes de la aplicación del editor de código](code-editor-use-instances.md). Para obtener más información sobre las conexiones y las extensiones, consulte [Conexiones y extensiones del editor de código](code-editor-use-connections-and-extensions.md).

# Imágenes personalizadas
<a name="code-editor-custom-images"></a>

Si necesita una funcionalidad diferente a la que proporciona la SageMaker distribución, puede incorporar su propia imagen con sus extensiones y paquetes personalizados. También puede utilizarla para personalizar la interfaz de usuario del editor de código para adaptarla a sus propias necesidades de marca o de conformidad.

La siguiente página proporcionará información y plantillas específicas del editor de código para crear tus propias imágenes de IA personalizadas SageMaker . El objetivo es complementar la información y las instrucciones de Amazon SageMaker Studio sobre cómo crear tu propia imagen de SageMaker IA y llevar tu propia imagen a Studio. Para obtener más información sobre las imágenes personalizadas de Amazon SageMaker AI y cómo llevar tu propia imagen a Studio, consulta[Bring your own image (BYOI)](studio-updated-byoi.md). 

**Topics**
+ [Comprobación de estado y URL de las aplicaciones](#code-editor-custom-images-app-healthcheck)
+ [Ejemplos de Dockerfile](#code-editor-custom-images-dockerfile-templates)

## Comprobación de estado y URL de las aplicaciones
<a name="code-editor-custom-images-app-healthcheck"></a>
+ `Base URL`: la URL base de la aplicación BYOI debe ser `CodeEditor/default`. Solo puede tener una aplicación y siempre debe denominarse `default`.
+ Health Check Endpoint: debe alojar el servidor del editor de código en el puerto 0.0.0.0 8888 para que la SageMaker IA lo detecte.
+  Autenticación: debes pasarlo `--without-connection-token` al abrirlo `sagemaker-code-editor` para que SageMaker AI pueda autenticar a tus usuarios.

**nota**  
Si utilizas Amazon SageMaker Distribution como imagen base, estos requisitos ya están incluidos en el `entrypoint-code-editor` guion incluido.

## Ejemplos de Dockerfile
<a name="code-editor-custom-images-dockerfile-templates"></a>

Los siguientes ejemplos son `Dockerfile` que cumplen con la información y [Especificaciones de imágenes personalizadas](studio-updated-byoi-specs.md) anteriores.

**nota**  
Si va a traer su propia imagen a SageMaker Unified Studio, tendrá que seguir las [especificaciones de Dockerfile](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html) de la Guía del *usuario de Amazon SageMaker Unified Studio*.  
`Dockerfile`Puedes encontrar ejemplos de SageMaker Unified Studio en el [ejemplo de Dockerfile](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html#byoi-specifications-example) de la Guía del *usuario de Amazon SageMaker Unified Studio*.

------
#### [ Example micromamba Dockerfile ]

El siguiente es un ejemplo de Dockerfile para crear una imagen desde cero utilizando un entorno base: [https://mamba.readthedocs.io/en/latest/user_guide/micromamba.html](https://mamba.readthedocs.io/en/latest/user_guide/micromamba.html). 

```
FROM mambaorg/micromamba:latest
ARG NB_USER="sagemaker-user"
ARG NB_UID=1000
ARG NB_GID=100

USER root

RUN micromamba install -y --name base -c conda-forge sagemaker-code-editor

USER $NB_UID

CMD eval "$(micromamba shell hook --shell=bash)"; \
    micromamba activate base; \
    sagemaker-code-editor --host 0.0.0.0 --port 8888 \
        --without-connection-token \
        --base-path "/CodeEditor/default"
```

------
#### [ Example SageMaker AI Distribution Dockerfile ]

El siguiente es un ejemplo de Dockerfile para crear una imagen basada en [Amazon SageMaker AI](https://github.com/aws/sagemaker-distribution/tree/main) Distribution:

```
FROM public.ecr.aws/sagemaker/sagemaker-distribution:latest-cpu
ARG NB_USER="sagemaker-user"
ARG NB_UID=1000
ARG NB_GID=100
ENV MAMBA_USER=$NB_USER

USER root

 # install scrapy in the base environment
RUN micromamba install -y --name base -c conda-forge scrapy

 # download VSCodeVim
RUN \
  wget https://github.com/VSCodeVim/Vim/releases/download/v1.27.2/vim-1.27.2.vsix \
  -P /tmp/exts/ --no-check-certificate

 # Install the extension
RUN \
  extensionloc=/opt/amazon/sagemaker/sagemaker-code-editor-server-data/extensions \
  && sagemaker-code-editor \
    --install-extension "/tmp/exts/vim-1.27.2.vsix" \
    --extensions-dir "${extensionloc}"

USER $MAMBA_USER
ENTRYPOINT ["entrypoint-code-editor"]
```

------