Ir al contenido

VS Code

  1. VS Code
  2. Extensión Dev Containers (ms-vscode-remote.remote-containers)
  3. Docker o Podman ejecutándose en su máquina (consulte Primeros pasos). VS Code Dev Containers también es compatible con Podman como backend.
Ventana de terminal
git clone https://github.com/f5-sales-demo/devcontainer.git
code devcontainer

VS Code detecta .devcontainer/devcontainer.json y muestra una notificación: “Reopen in Container”. Haga clic en ella, o use la paleta de comandos:

Dev Containers: Reopen in Container

VS Code construye (o descarga) la imagen, inicia el contenedor, instala las extensiones y abre una terminal dentro del contenedor.

El archivo .devcontainer/devcontainer.json indica a VS Code que use Docker Compose:

"dockerComposeFile": ["../docker-compose.yml", "../docker-compose.build.yml"],
"service": "dev",
"workspaceFolder": "/workspace"

La configuración del devcontainer incluye explícitamente el archivo de compilación, de modo que VS Code puede construir la imagen localmente cuando utiliza “Reopen in Container” o “Rebuild Container”.

Las extensiones se instalan automáticamente dentro del contenedor:

ExtensiónDescripción
PythonSoporte del lenguaje Python
ESLintAnálisis de código JavaScript/TypeScript
PrettierFormateo de código
DockerSoporte para Dockerfile y compose
TerraformSoporte del lenguaje HCL
GoSoporte del lenguaje Go
Rust AnalyzerSoporte del lenguaje Rust
YAMLSoporte del lenguaje YAML
KubernetesSoporte para manifiestos de Kubernetes

Para agregar extensiones, edite el arreglo customizations.vscode.extensions en .devcontainer/devcontainer.json.

VS Code reenvía automáticamente los puertos definidos en el archivo compose. La pantalla noVNC está disponible en http://localhost:6080/vnc.html — VS Code le notificará cuando el puerto esté listo.

Se pueden reenviar puertos adicionales bajo demanda desde el panel Ports en VS Code.

Si prefiere la línea de comandos en lugar de la interfaz de VS Code:

Ventana de terminal
npm install -g @devcontainers/cli
devcontainer up --workspace-folder .
devcontainer exec --workspace-folder . zsh

Después de modificar el Dockerfile o los archivos compose:

Dev Containers: Rebuild Container

Esto reconstruye la imagen y reinicia el contenedor. Los volúmenes con nombre (workspace, home) persisten entre reconstrucciones.