Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Connexion à un VPC avec des sous-réseaux sans accès à Internet
Avant de connecter votre IDE distant à des espaces Studio situés dans des sous-réseaux privés sans accès à Internet, assurez-vous que votre administrateur l'a faitConfiguration de Studio pour l’exécuter avec des sous-réseaux sans accès à Internet au sein d’un VPC.
Vous disposez des options suivantes pour connecter votre IDE distant aux espaces Studio situés dans des sous-réseaux privés :
-
Configurer le proxy HTTP (compatible avec VS Code et Kiro)
-
Serveur distant et extensions préemballés (VS Code uniquement)
Important
Le curseur n'est pas pris en charge pour la connexion aux espaces Studio dans des sous-réseaux privés sans accès Internet sortant.
Rubriques
Proxy HTTP avec liste d’autorisations contrôlée
Lorsque votre espace Studio se trouve derrière un pare-feu ou un proxy, demandez à votre administrateur d'autoriser l'accès à votre serveur IDE, à vos extensions et à vos points de terminaison CDNs . Pour de plus amples informations, veuillez consulter Configuration d’un proxy HTTP avec une liste d’autorisations contrôlée.
Cette option fonctionne lorsque vous êtes autorisé à configurer un proxy HTTP et elle vous permet d’installer des extensions supplémentaires de manière flexible, car certaines extensions nécessitent un point de terminaison public.
Serveur distant et extensions préemballés (VS Code uniquement)
Note
Cette option n'est disponible que pour Visual Studio Code. Kiro et Cursor ne prennent pas en charge la configuration préconfigurée de serveurs distants.
Lorsque vos espaces Studio ne peuvent pas accéder à des points de terminaison externes pour télécharger le serveur distant VS Code et ses extensions, vous pouvez les prépackager. Avec cette approche, votre administrateur peut exporter une archive contenant le répertoire .VS
Code-server d’une version spécifique de VS Code. L'administrateur utilise ensuite un script SageMaker AI Lifecycle Configuration (LCC) pour copier et extraire l'archive dans votre répertoire personnel ()/home/sagemaker-user. Pour de plus amples informations, veuillez consulter Configurer un serveur distant préconfiguré et des extensions (VS Code uniquement).
Instructions pour prépackager votre serveur distant VS Code et les extensions
-
Installez VS Code sur votre ordinateur local.
-
Lorsque vous vous connectez à l' SageMaker espace :
-
Utilisez le profil par défaut pour garantir la compatibilité avec les extensions prépackagées. Dans le cas contraire, vous devrez installer les extensions à l’aide des fichiers VSIX téléchargés après vous être connecté à l’espace Studio.
-
Choisissez un script LCC spécifique à la version de VS Code à attacher à l’espace lorsque vous lancez cet espace.
-
Exemple d’utilisation d’un fichier Docker pour prépackager votre serveur distant VS Code et les extensions
Voici un exemple de fichier Docker pour lancer un conteneur local avec un serveur SSH préinstallé, s’il n’est pas possible de créer un espace avec un accès à distance et Internet activé.
Note
-
Dans cet exemple, le serveur SSH ne nécessite pas d’authentification et est uniquement utilisé pour exporter le serveur distant VS Code.
-
Le conteneur doit être généré et exécuté sur une architecture 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"]
Générez et exécutez le conteneur à l’aide des commandes suivantes :
# 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 &'
Connectez-vous en utilisant la commande suivante :
ssh sagemaker-user@localhost -p 2222
Avant de pouvoir connecter ce conteneur, configurez les éléments suivants dans le fichier .ssh/config. Ensuite, vous pourrez voir remote_access_export en tant que nom d’hôte sur le panneau latéral de connexion SSH à distance lors de la connexion. Par exemple :
Host remote_access_export HostName localhost User=sagemaker-user Port 2222 ForwardAgent yes
Archivez /tmp/remote_access/.VS Code-server et suivez les étapes décrites dans Serveur distant VS Code prépackagé et extensions pour connecter et installer l’extension. Après l’avoir décompressé, assurez-vous que le dossier .VS
Code-server apparaît en tant que dossier parent.
cd /tmp/remote_access/ sudo tar -czvf VS Code-server-with-extensions-for-1.100.2.tar.gz .VS Code-server
Exemple de script LCC (LCC-install-VS C ode-server-v 1.100.2)
Voici un exemple qui montre comment installer une version spécifique du serveur distant 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