Support for runArgs for `docker compose` scenario
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- docker, docker-compose
- Área
- devops
Línea de trabajo
Comienza revisando la referencia de devcontainer.json enlazada en la issue y la configuración existente de docker-compose mostrada en los ejemplos. Sigue cómo se invoca docker compose para una configuración de dockerComposeFile. Se considera terminado cuando una opción runArgs env-file puede apuntar al archivo .env de la raíz del proyecto sin copiarlo en .devcontainer ni exponer el archivo completo al contenedor.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
As a developer, I want to point docker compose to my (the correct) .env-file.
{
"name": "Python 3 & Poetry",
"dockerComposeFile": [
"../../docker-compose.yml",
"./docker-compose.yml"
],
"runArgs": ["--env-file=../../.env"], <-- New Option
...
}
Discussed in https://github.com/orgs/devcontainers/discussions/36
Originally posted by bgloss March 10, 2023
I don't get the environment variables from my project's .env file into the docker-compose.ymlsetup with a pretty default project layout.
My project layout is as follows:
.devcontainer/
devcontainer.json
docker-compose.yml
Dockerfile
.env
I want to have in docker-compose.yml a section to create a Postgres container with setting up the environment one by one: POSTGRES_USER, POSTGRES_PASSWORD, and POSTGRES_DB and fill them with variables from the project's .env file. The relevant section in docker-compose.yml is:
postgres:
image: postgres:latest
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_DB: ${POSTGRES_DB}
I do NOT want to have a copy of my .env file in the .devcontainer/ folder, as it is the case in some of the DevContainer templates. This would work, as in this case docker compose loads it by default. I don't want this organization, as the .env file is also needed by the project's code and expected in the project root.
I also don't want to expose the whole .env-file to my container, which I could do with the env_file option in the docker compose service description.
When building a container myself (just docker, no docker compose), I can add in devcontainer.json the option runArgs next to the option build giving the env-file information to docker: --env-file ../.env However, this is not possible when using a docker-compose setup in vscode and DevContainers with "dockerComposeFile": "docker-compose.yml".
https://containers.dev/implementors/json_reference/
At the command line docker compose --env-file ../.env up does the trick.
So, my questions:
- Am I missing something?
- Is this a missing feature in
devcontainer.json?
- Lenguaje dominante
- Sin datos de lenguaje
- Estrellas
- 2
- Forks
- 1
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de devcontainers/community
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
devcontainers/community#245 · 2 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
devcontainers/community#183 ·
-
Choose wisely and witty Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 1/100
devcontainers/community#169 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
devcontainers/community#113 · 1 reacción ·
Todos los issues de devcontainers/community
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Azure/azure-functions-docker#1257 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 75/100
conda-forge/vowpalwabbit-feedstock#104 · 1 comentario · 1 reacción ·
-
Add 4.2.2 Kafka version Abiertogood-start
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
deploy.sh hardcodes --dest while components.conf advertises WITH_PROXY_CA_BUNDLE as env-overridable Abiertoarea:proxy bug security severity:low track:open-source
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
components-web-app/docs#73 ·