Definizione di un valore booleano in un file docker-compose.yml:
environment:
SOME_VAR: true
e docker up
risultati in esecuzione in:
contains true, which is an invalid type, it should be a string, number, or a null
Tentativi di risolvere il problema
- Se true viene modificato in True, il problema persiste.
L'utilizzo
'true'
non è accettato dal codice stesso ( un'app play framework viene avviata utilizzando il parametro./target/universal/stage/bin/APPNAME -Dplay.evolutions.db.default.autoApply=
, ovvero uno-Dplay.evolutions.db.default.autoApply=true
o entrambi-Dplay.evolutions.db.default.autoApply=false
):VAR ha il tipo STRING anziché BOOLEAN
L'uso di
yes
ono
come variabile comporta:contiene true, che è un tipo non valido, dovrebbe essere una stringa, un numero o un valore nullo
Utilizzo
yes
e utilizzo di uno script che si trasformayes
in opere vere
Discussione
Secondo i documenti Any boolean values; true, false, yes no, need to be enclosed in quotes to ensure they are not converted to True or False by the YML parser
:
Ambiente
Aggiungi variabili d'ambiente. È possibile utilizzare un array o un dizionario. Qualsiasi valore booleano; true, false, yes no, devono essere racchiusi tra virgolette per assicurarsi che non vengano convertiti in True o False dal parser YML.
Le variabili di ambiente con solo una chiave vengono risolte sui loro valori sulla macchina su cui è in esecuzione Compose, che può essere utile per valori segreti o specifici dell'host.
environment: RACK_ENV: development SHOW: 'true' SESSION_SECRET: environment: - RACK_ENV=development - SHOW=true - SESSION_SECRET
Domanda
Perché non è permesso?
DevOps Stack Exchange is a question and answer site for software engineers working on automated testing, continuous delivery, service integration and monitoring, and building SDLC infrastructure