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á.
Conectar-se à VPC com sub-redes sem acesso à internet
Antes de conectar o Visual Studio Code aos espaços do Studio em sub-redes privadas sem acesso à internet, verifique se o administrador já o fez. Consulte Configurar o Studio para ser executado com sub-redes sem acesso à internet em uma VPC.
Você tem duas opções para conectar o Visual Studio Code local aos espaços do Studio em sub-redes privadas:
-
Configurar o proxy HTTP.
-
Usar o servidor remoto e extensões pré-empacotados do VS Code.
Tópicos
Proxy HTTP com lista de permissões controlada
Quando o espaço do Studio estiver protegido por um firewall ou proxy, peça ao administrador que permita o acesso ao servidor do VS Code, aos endpoints e às extensões relacionadas CDNs . Para obter mais informações, consulte Configurar o proxy HTTP com lista de permissões controlada.
Depois de configurado, você pode configurar o proxy HTTP para o desenvolvimento remoto do VS Code fornecendo o URL do proxy com a configuração remote.SSH.httpsProxy ou remote.SSH.httpProxy.
nota
Considere habilitar “Remote.SSH: usar arquivos de configuração Curl e Wget” para usar a configuração dos arquivos curlrc e wgetrc do ambiente remoto. Isso é para que os wgetrc arquivos curlrc e, colocados em seus respectivos locais padrão no SageMaker espaço, possam ser usados para habilitar determinados casos.
Essa opção funciona quando você tem permissão para configurar o proxy HTTP e permite instalar extensões adicionais de forma flexível, pois algumas extensões exigem um endpoint público.
Usar o servidor remoto e extensões pré-empacotados do VS Code.
Quando seus espaços do Studio não conseguem acessar endpoints externos para baixar o servidor remoto e extensões do VS Code, você pode empacotá-los previamente. Com essa abordagem, o administrador pode exportar um tarball que contém o diretório .VS
Code-server de uma versão específica do VS Code. Em seguida, o administrador usa um script SageMaker AI Lifecycle Configuration (LCC) para copiar e extrair o tarball em seu diretório inicial (). /home/sagemaker-user Para obter mais informações, consulte Configurar o servidor remoto e as extensões pré-empacotados do Visual Studio Code.
Instruções para pré-empacotar o servidor remoto e as extensões do VS Code
-
Instale o VS Code na máquina local.
-
Quando você se conecta ao SageMaker espaço:
-
Use o perfil padrão para garantir a compatibilidade com extensões pré-empacotadas. Caso contrário, você precisará instalar extensões usando os arquivos VSIX baixados depois de se conectar ao espaço do Studio.
-
Escolha um script de LCC específico da versão do VS Code para anexar ao espaço ao iniciá-lo.
-
Exemplo de uso do Dockerfile para pré-empacotar seu servidor remoto e extensões do VS Code
A seguir é apresentado um exemplo de Dockerfile para iniciar um contêiner local com o servidor SSH pré-instalado, caso não seja possível criar um espaço com acesso remoto e internet habilitada.
nota
-
Neste exemplo, o servidor SSH não requer autenticação e é usado apenas para exportar o servidor remoto do VS Code.
-
O contêiner deve ser criado e executado em uma arquitetura x64.
FROM amazonlinux:2023 # Install OpenSSH server and required tools RUN dnf install -y \ openssh-server \ shadow-utils \ passwd \ sudo \ tar \ gzip \ && dnf clean all # Create a user with no password RUN useradd -m -s /bin/bash sagemaker-user && \ passwd -d sagemaker-user # Add sagemaker-user to sudoers via wheel group RUN usermod -aG wheel sagemaker-user && \ echo 'sagemaker-user ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/sagemaker-user && \ chmod 440 /etc/sudoers.d/sagemaker-user # Configure SSH to allow empty passwords and password auth RUN sed -i 's/^#\?PermitEmptyPasswords .*/PermitEmptyPasswords yes/' /etc/ssh/sshd_config && \ sed -i 's/^#\?PasswordAuthentication .*/PasswordAuthentication yes/' /etc/ssh/sshd_config # Generate SSH host keys RUN ssh-keygen -A # Expose SSH port EXPOSE 22 WORKDIR /home/sagemaker-user USER sagemaker-user # Start SSH server CMD ["bash"]
Use os seguintes comandos para criar e executar o contêiner:
# Build the image docker build . -t remote_server_export # Run the container docker run --rm -it -d \ -v /tmp/remote_access/.VS Code-server:/home/sagemaker-user/.VS Code-server \ -p 2222:22 \ --name remote_server_export \ remote_server_export # change the permisson for the mounted folder docker exec -i remote_server_export \ bash -c 'sudo chown sagemaker-user:sagemaker-user ~/.VS Code-server' # start the ssh server in the container docker exec -i remote_server_export bash -c 'sudo /usr/sbin/sshd -D &'
Conecte-se usando o seguinte comando:
ssh sagemaker-user@localhost -p 2222
Para que esse contêiner possa ser conectado, faça a configuração abaixo no arquivo .ssh/config. Depois, você poderá ver remote_access_export como um nome de host no painel lateral de SSH remoto ao se conectar. Por exemplo:
Host remote_access_export HostName localhost User=sagemaker-user Port 2222 ForwardAgent yes
Arquive /tmp/remote_access/.VS Code-server e siga as etapas em “Servidor remoto e extensões pré-empacotados do VS Code” para conectar e instalar a extensão. Depois de descompactar, verifique se a pasta .VS
Code-server aparece como a pasta principal.
cd /tmp/remote_access/ sudo tar -czvf VS Code-server-with-extensions-for-1.100.2.tar.gz .VS Code-server
Exemplo de script LCC (LCC-install-VS C ode-server-v 1.100.2)
Veja a seguir um exemplo de como instalar uma versão específica do servidor remoto do VS Code.
#!/bin/bash set -x remote_server_file=VS Code-server-with-extensions-for-1.100.2.tar.gz if [ ! -d "${HOME}/.VS Code-server" ]; then cd /tmp aws s3 cp s3://S3_BUCKET/remote_access/${remote_server_file} . tar -xzvf ${remote_server_file} mv .VS Code-server "${HOME}" rm ${remote_server_file} else echo "${HOME}/.VS Code-server already exists, skipping download and install." fi