Compose Down fails for projects started with multiple --env-file arguments

Abierto Apto para principiantes
#653 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@sylvesterkaczmarek ya está trabajando en esto.

Desde el 6/11/2026.

  • #654 de @sylvesterkaczmarek — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
75/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
docker-compose, typescript, vscode
Área
devtools

Línea de trabajo

El issue sigue el valor a través de getComposeEnvFile y composeGroup, pero no indica los archivos de origen ni las pruebas. Empieza por localizar esos puntos de entrada y comprobar cómo Compose Down construye sus argumentos a partir de environmentFile. Conserva el orden de los archivos de la etiqueta y genera un argumento --env-file por cada ruta; verifica el comando generado con una prueba de regresión para dos archivos.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

When a Compose project is started with multiple environment files, selecting Compose Down from the project's context menu in the VS Code Containers view fails.

Container Tools reads the comma-separated com.docker.compose.project.environment_file label and passes its entire value as a single --env-file argument.

Steps to reproduce
  1. Start a Compose project with two environment files: docker compose --env-file .env --env-file override.env up -d
  2. Open the Containers view in VS Code.
  3. Right-click the running Compose project.
  4. Select Compose Down.
Actual behavior

The extension generates a command containing: --env-file '/path/to/.env,/path/to/override.env'

Compose treats this as a single filename and fails: couldn't find env file: /path/to/.env,/path/to/override.env

Expected behavior

The extension should handle multiple environment files and generate a separate argument for each: --env-file '/path/to/.env' --env-file '/path/to/override.env'

The original file order should be preserved so that environment variable precedence remains unchanged.

Investigation

The running containers have this label: com.docker.compose.project.environment_file=/path/to/.env,/path/to/override.env

In the installed extension bundle, getComposeEnvFile returns the label unchanged, and composeGroup passes that string as environmentFile.

Environment

Container Tools: 2.5.3 (ms-azuretools.vscode-containers)
Docker extension: 2.0.0 (ms-azuretools.vscode-docker)
Extension host: Linux, VS Code Server

Workaround

Run Compose Down manually with a separate --env-file argument for each file.

Lenguaje dominante
TypeScript
Estrellas
147
Forks
93
Merge medio
9 h 16 min
PR fusionados (30 d)
14

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de microsoft/vscode-containers

Todos los issues de microsoft/vscode-containers

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.