En esta página, se explica cómo usar Cloud Code para el desarrollo remoto de VS Code, es decir, para abrir tu base de código en un contenedor remoto en el que se compila, depura e implementa tu aplicación. Esto crea una aplicación portátil, sin importar el SO de tu máquina de desarrollo.
Requisitos previos
Además de la configuración que se describe en Instala la extensión de Cloud Code, instala el paquete de extensiones de VS Code para Desarrollo remoto.
Configuración
Si deseas configurar una carpeta
.devcontainer
con un Dockerfile y un archivoDevcontainer.json
configurados para el lenguaje que usas, haz clic en Abrir una ventana remota > Agregar archivos de configuración de contenedor de desarrollo. Como alternativa, puedes seguir los pasos que se indican en Desarrollo remoto en contenedores.Después de seguir las indicaciones, tu lugar de trabajo incluirá lo siguiente:
Dockerfile: Define una imagen de contenedor que contiene las herramientas para desarrolladores que se instalarán en un contenedor de desarrollo remoto.
Devcontainer.json
: Le indica a la extensión de herramientas remotas de VS Code cómo ejecutar el contenedor de desarrollo remoto.
Abre el Dockerfile y agrega instrucciones para instalar Google Cloud CLI y Skaffold. Para conocer los comandos actualizados, consulta las guías de instalación.
En el Dockerfile, agrega instrucciones para copiar gcloud CLI de localhost y los parámetros de configuración de Skaffold antes del comando
>> $HOME/.bashrc
. Como alternativa, puedes volver a escribir los comandos para instalar gcloud CLI y Skaffold.# Copy localhost's ~/.kube/config file into the container and swap out localhost # for host.docker.internal whenever a new shell starts to keep them in sync. RUN echo '\n\ if [ "$SYNC_LOCALHOST_KUBECONFIG" == "true" ]; then\n\ mkdir -p $HOME/.kube\n\ cp -r $HOME/.kube-localhost/* $HOME/.kube\n\ sed -i -e "s/localhost/host.docker.internal/g" $HOME/.kube/config\n\ \n\ fi' \ if [ "$SYNC_LOCALHOST_GCLOUD" == "true" ]; then\n\ mkdir -p $HOME/.config/gcloud\n\ cp -r $HOME/.gcloud-localhost/* $HOME/.config/gcloud\n\ \n\ fi' \
Abre el archivo
Devcontainer.json
y agrega los siguientes argumentos de ejecución para copiar los archivos de configuración de gcloud CLI y de Skaffold desde el localhost:"-e", "SYNC_LOCALHOST_KUBECONFIG=true", "-e", "SYNC_LOCALHOST_GCLOUD=true",
Una vez que tus archivos tengan el contenido requerido, haz clic en Abrir una ventana remota.
Ejemplo de archivo devcontainer.json
El archivo devcontainer.json
le indica a la extensión del Contenedor remoto qué puertos
exponer en el contenedor, cómo activar unidades y qué extensiones instalar
en el contenedor remoto. En el siguiente archivo devcontainer.json
de muestra, se especifica que la extensión del contenedor remoto debe instalar la extensión de Cloud Code para VS Code:
"runArgs": [
"-v","/var/run/docker.sock:/var/run/docker.sock",
"--mount", "type=bind,source=${env:HOME}${env:USERPROFILE}/.kube,target=/root/.kube-localhost",
"--mount", "type=bind,source=${env:HOME}${env:USERPROFILE}/.config/gcloud,target=/root/.gcloud-localhost",
"-e", "SYNC_LOCALHOST_KUBECONFIG=true",
"-e", "SYNC_LOCALHOST_GCLOUD=true",
"--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"
]
¿Qué sigue?
- Lee los documentos de Visual Studio sobre el desarrollo remoto con SSH.
- Sigue un instructivo para ejecutar Visual Studio Code en un contenedor de Docker con la extensión de contenedores para desarrolladores.