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.
Proporcione a los usuarios acceso a imágenes personalizadas
Esta documentación proporciona step-by-step instrucciones para proporcionar a los usuarios acceso a imágenes personalizadas para sus entornos de editor de código. Puede utilizar la información de esta página para crear entornos personalizados para los flujos de trabajo de sus usuarios. El proceso implica la utilización de:
-
Docker
-
AWS Command Line Interface
-
Amazon Elastic Container Registry
-
Amazon SageMaker AWS Management Console
Tras seguir las instrucciones de esta página, los usuarios de Code Editor del SageMaker dominio Amazon tendrán acceso a la imagen y el entorno personalizados desde sus espacios de Code Editor para potenciar sus flujos de trabajo de aprendizaje automático.
importante
En esta página se asume que tienes las AWS Command Line Interface y Docker instalado en su máquina local.
Para que sus usuarios ejecuten correctamente su imagen en el Editor de código, debe hacer lo siguiente:
Para que sus usuarios ejecuten la imagen correctamente
-
Cree el Dockerfile
-
Cree la imagen a partir del Dockerfile
-
Cargue la imagen en Amazon Elastic Container Registry
-
Adjunta la imagen a tu SageMaker dominio de Amazon
-
Haz que tus usuarios accedan a la imagen desde su espacio de editor de código
Paso 1: Crea el Dockerfile
Cree un Dockerfile para definir los pasos necesarios para crear el entorno necesario para ejecutar la aplicación en el contenedor de su usuario.
importante
Su Dockerfile debe cumplir con las especificaciones que se proporcionan en. Especificaciones de Dockerfile
Para ver ejemplos de Dockerfiles en el formato correcto, consulte. Ejemplos de Dockerfile
Paso 2: Construye el Dockerfile
En el mismo directorio que tu Dockerfile, crea tu imagen con el siguiente comando:
docker build -t username/imagename:tag your-account-id.dkr.ecr.
Región de AWS
.amazonaws.com/your-repository-name
:tag
importante
La imagen debe estar etiquetada con el siguiente formato: 123456789012
.dkr.ecr.your-region.amazonaws.com/your-repository-name
:tag
De lo contrario, no podrás subirlo a un repositorio de Amazon Elastic Container Registry.
Paso 3: Inserta la imagen en el repositorio de Amazon Elastic Container Registry
Una vez que hayas creado la imagen, inicia sesión en tu ECR repositorio de Amazon con el siguiente comando:
aws ecr get-login-password --region
Región de AWS
| docker login --username AWS --password-stdin123456789012
.dkr.ecr.Región de AWS
.amazonaws.com
Una vez que hayas iniciado sesión, inserta tu Dockerfile con el siguiente comando:
docker push
123456789012
.dkr.ecr.Región de AWS
.amazonaws.com/your-repository-name
:tag
Paso 4: Adjunta una imagen al SageMaker dominio de Amazon de tus usuarios
Después de insertar la imagen, debes acceder a ella desde tu SageMaker dominio de Amazon mediante la SageMaker consola o el AWS CLI.
Adjunta la imagen mediante la SageMaker consola
Utilice el siguiente procedimiento para adjuntar la imagen a un SageMaker dominio a través de la SageMaker consola:
-
Abra la SageMaker consola
. -
En Configuraciones de administración, elija Dominios.
-
En la lista de dominios, selecciona un dominio.
-
Abra la pestaña Entorno.
-
Para imágenes personalizadas para aplicaciones personales de Studio, selecciona Adjuntar imagen.
-
Especifique la fuente de la imagen. Puede crear una imagen nueva o elegir una imagen existente.
-
Elija Next (Siguiente).
-
Elija Code Editor como tipo de aplicación.
-
Elija Enviar.
Adjunte la imagen mediante el AWS CLI
Utilice el siguiente procedimiento para adjuntar la imagen a un SageMaker dominio mediante AWS CLI :
-
Cree una SageMaker imagen. El rol ARN debe tener la
AmazonSageMakerFullAccess
política adjunta.aws sagemaker create-image \ --image-name
code-editor-custom-image
\ --role-arn arn:aws:iam::account-id
:role/service-role/execution-role
-
Cree una versión SageMaker de imagen a partir de la imagen. Pasa el valor de etiqueta único que elegiste al enviar la imagen a AmazonECR.
aws sagemaker create-image-version \ --image-name code-editor-custom-image \ --base-image
repository-uri
:tag
-
Crea un archivo de configuración llamado
app-image-config-input.json
. La configuración de la imagen de la aplicación se utiliza como configuración para ejecutar una SageMaker imagen como una aplicación de edición de código. También puede especificar susContainerConfig
argumentos aquí.{ "AppImageConfigName":
"code-editor-app-image-config"
, "CodeEditorAppImageConfig": { "ContainerConfig": {} } } -
Cree el archivo
AppImageConfig
utilizando el archivo de configuración de imagen de la aplicación que ha creado.aws sagemaker create-app-image-config \ --cli-input-json file://
app-image-config-input.json
-
Cree un archivo de configuración llamado
updateDomain.json
. Asegúrese de especificar su ID de dominio.{ "DomainId":
"domain-id"
, "DefaultUserSettings": { "CodeEditorAppSettings": { "CustomImages": [ { "ImageName":"code-editor-custom-image"
, "AppImageConfigName":"code-editor-app-image-config"
} ] } } } -
Llama al
UpdateDomain
comando con el archivo de configuración como entrada.nota
Debe eliminar todas las aplicaciones de su dominio antes de actualizar el dominio con la nueva imagen. Tenga en cuenta que solo necesita eliminar las aplicaciones; no necesita eliminar los perfiles de usuario ni los espacios compartidos. Para obtener instrucciones sobre cómo eliminar aplicaciones, elija una de las siguientes opciones.
-
Si usa la SageMaker consola, siga los pasos 1 a 5d y 6 a 7d de la sección Eliminar un dominio (consola).
-
Si utilizas la AWS CLI, sigue los pasos 1 a 3 de la sección Eliminar un dominio (AWS CLI).
aws sagemaker update-domain --cli-input-json file://updateDomain.json
-
Paso 5: Haga que sus usuarios accedan a la imagen desde su espacio de edición de código
Tus usuarios ahora pueden seleccionar la imagen que has adjuntado a su dominio desde su espacio de edición de código.
Para obtener más información sobre cómo seleccionar una imagen personalizada, consulteLanza una aplicación de edición de código en Studio.