Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

434
Vistas
docker-compose - cómo escapar de las variables de entorno

Con docker-compose v2, las variables de entorno se pueden configurar simplemente:

 enviroment: - MONGO_PATH=mongodb://db-mongo:27017

El archivo docker-compose.yml completo es:

 version: '2' services: web: build: . environment: - MONGO_PATH=mongodb://db-mongo:27017 ports: - "3000:3000" volumes: - .:/app - /app/node_modules depends_on: - db-mongo - db-redis db-mongo: image: mongo restart: unless-stopped command: --smallfiles ports: - "27017:27017" volumes: - ./data:/data/db [...]

Sin embargo, ¿cómo puedo escapar de las variables de entorno que no son una cadena simple?

 {"database": {"data": {"host": "mongo"}}}

Lo intenté:

 NODE_CONFIG=\{"database": \{"data"\: \{"host": "mongo"\}, "session": \{"host": "redis" \}\}\} NODE_CONFIG="\{"database": \{"data"\: \{"host": "mongo"\}, "session": \{"host": "redis" \}\}\}" NODE_CONFIG='{"database": {"data": {"host": "mongo"}, "session": {"host": "redis" }}}'

ERROR: yaml.parser.ParserError: al analizar una asignación de bloques en "./docker-compose.yml", se esperaba la línea 6, columna 9, pero se encontró '}' en "./docker-compose.yml", línea 6, columna 92

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Las variables de entorno (incluido su nombre) deben incluirse completamente entre comillas simples o dobles : "" o ''

 environment: - 'NODE_CONFIG={"database": {"data": {"host": "mongo"}, "session": {"host": "redis" }}}'

Y usando comillas dobles:

 environment: - 'PORT=3000' - "NODE_CONFIG={\"database\": {\"data\": {\"host\": \"mongo\"}, \"session\": {\"host\": \"redis\" }}}"

Es notable notar que el uso de comillas dobles "" , como bash, permitirá colocar variables dentro de la variable de entorno.

 "MY_HOME_ENV_VARIABLE=${HOME}"
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda