As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Forneça aos usuários acesso a imagens personalizadas
Esta documentação fornece step-by-step instruções para fornecer aos usuários acesso a imagens personalizadas para seus ambientes de editor de código. Você pode usar as informações desta página para criar ambientes personalizados para os fluxos de trabalho do seu usuário. O processo envolve a utilização de:
-
Docker
-
AWS Command Line Interface
-
Amazon Elastic Container Registry
-
Amazon SageMaker AWS Management Console
Depois de seguir as orientações nesta página, os usuários do Code Editor no SageMaker domínio da Amazon terão acesso à imagem e ao ambiente personalizados em seus espaços do Editor de Código para fortalecer seus fluxos de trabalho de aprendizado de máquina.
Importante
Esta página pressupõe que você tenha o AWS Command Line Interface e Docker instalado em sua máquina local.
Para que seus usuários executem com sucesso suas imagens no Editor de código, você deve fazer o seguinte:
Para que seus usuários executem a imagem com sucesso
-
Crie o Dockerfile
-
Crie a imagem a partir do Dockerfile
-
Faça o upload da imagem para o Amazon Elastic Container Registry
-
Anexe a imagem ao seu SageMaker domínio da Amazon
-
Faça com que seus usuários acessem a imagem a partir do espaço do Editor de Código
Etapa 1: criar o Dockerfile
Crie um Dockerfile para definir as etapas necessárias para criar o ambiente necessário para executar o aplicativo no contêiner do seu usuário.
Importante
Seu Dockerfile deve atender às especificações fornecidas em. Especificações do Dockerfile
Para exemplos de Dockerfiles no formato correto, consulte. Amostras do Dockerfile
Etapa 2: criar o Dockerfile
No mesmo diretório do Dockerfile, crie sua imagem usando o seguinte comando:
docker build -t username/imagename:tag your-account-id.dkr.ecr.
Região da AWS
.amazonaws.com/your-repository-name
:tag
Importante
Sua imagem deve ser marcada no seguinte formato: 123456789012
.dkr.ecr.your-region.amazonaws.com/your-repository-name
:tag
Caso contrário, você não poderá enviá-lo para um repositório do Amazon Elastic Container Registry.
Etapa 3: Envie a imagem para o repositório Amazon Elastic Container Registry
Depois de criar sua imagem, faça login no seu ECR repositório da Amazon usando o seguinte comando:
aws ecr get-login-password --region
Região da AWS
| docker login --username AWS --password-stdin123456789012
.dkr.ecr.Região da AWS
.amazonaws.com
Depois de fazer login, envie seu Dockerfile usando o seguinte comando:
docker push
123456789012
.dkr.ecr.Região da AWS
.amazonaws.com/your-repository-name
:tag
Etapa 4: Anexar imagem ao SageMaker domínio Amazon de seus usuários
Depois de enviar a imagem, você deve acessá-la do seu SageMaker domínio da Amazon usando o SageMaker console ou AWS CLI o.
Anexe a imagem usando o SageMaker console
Use o procedimento a seguir para anexar a imagem a um SageMaker domínio por meio do SageMaker console:
-
Abra o SageMaker console
. -
Em Configurações do administrador, escolha Domínios.
-
Na lista de domínios, selecione um domínio.
-
Abra a guia Ambiente.
-
Para imagens personalizadas para aplicativos pessoais do Studio, escolha Anexar imagem.
-
Especifique a fonte da imagem. Você pode criar uma nova imagem ou escolher uma imagem existente.
-
Escolha Próximo.
-
Escolha Editor de código como o tipo de aplicativo.
-
Selecione Enviar.
Anexe a imagem usando o AWS CLI
Use o procedimento a seguir para anexar a imagem a um SageMaker domínio por meio do AWS CLI :
-
Crie uma SageMaker imagem. A função ARN deve ter a
AmazonSageMakerFullAccess
política anexada.aws sagemaker create-image \ --image-name
code-editor-custom-image
\ --role-arn arn:aws:iam::account-id
:role/service-role/execution-role
-
Crie uma versão de SageMaker imagem a partir da imagem. Passe o valor exclusivo da tag que você escolheu ao enviar a imagem para a AmazonECR.
aws sagemaker create-image-version \ --image-name code-editor-custom-image \ --base-image
repository-uri
:tag
-
Crie um arquivo de configuração chamado
app-image-config-input.json
. A configuração da imagem do aplicativo é usada como configuração para executar uma SageMaker imagem como um aplicativo de editor de código. Você também pode especificar seusContainerConfig
argumentos aqui.{ "AppImageConfigName":
"code-editor-app-image-config"
, "CodeEditorAppImageConfig": { "ContainerConfig": {} } } -
Crie o
AppImageConfig
usando o arquivo de configuração de imagem do aplicativo que você criou.aws sagemaker create-app-image-config \ --cli-input-json file://
app-image-config-input.json
-
Crie um arquivo de configuração denominado
updateDomain.json
. Certifique-se de especificar seu ID de domínio.{ "DomainId":
"domain-id"
, "DefaultUserSettings": { "CodeEditorAppSettings": { "CustomImages": [ { "ImageName":"code-editor-custom-image"
, "AppImageConfigName":"code-editor-app-image-config"
} ] } } } -
Chame o
UpdateDomain
comando com o arquivo de configuração como entrada.nota
Você deve excluir todos os aplicativos em seu domínio antes de atualizar o domínio com a nova imagem. Observe que você só precisa excluir aplicativos; não precisa excluir perfis de usuário ou espaços compartilhados. Para obter instruções sobre como excluir aplicativos, escolha uma das opções a seguir.
-
Se você usa o SageMaker console, execute as etapas 1 a 5d e 6 a 7d da seção Excluir um domínio (console).
-
Se você usar o AWS CLI, execute as etapas 1 a 3 da seção Excluir um domínio (AWS CLI).
aws sagemaker update-domain --cli-input-json file://updateDomain.json
-
Etapa 5: Faça com que seus usuários acessem a imagem a partir do espaço do Editor de código
Agora, seus usuários podem selecionar a imagem que você anexou ao domínio deles no espaço do Editor de código.
Para obter mais informações sobre como selecionar uma imagem personalizada, consulteInicie um aplicativo de editor de código no Studio.