Saya memiliki skalar YAML yang memberikan kesalahan berikut ketika saya mencoba mengevaluasi docker-compose.yml
file saya :
KESALAHAN: Format interpolasi tidak valid untuk opsi "lingkungan" dalam layanan "time_service": "$ {Time.now}"
YAML:
---
version: '2'
services:
time_service:
build: "."
environment:
TIME: "${Time.now}"
Bagaimana saya bisa mempertahankan output string yang sama seperti yang tertulis, tetapi menghindari pembuat galangan-menulis menafsirkannya sebagai interpolasi string yang salah?
escaping
docker-compose
Nathan Hanna
sumber
sumber
${}
. Penafsiran dilakukan olehdocker-compose
dan itu ditulis dengan Python, jadi tag ruby juga tidak pantas.Jawaban:
Anda mencapai
docker-compose
substisi variabel, yang didokumentasikan dengan baik di sini :docker-compose
ditulis dengan Python, seperti yang Anda lihat di github , mekanisme penggandaan untuk mendapatkan makna asli dari karakter khusus dapat ditemukan di banyak program, saya perlu menggunakan ini sendiri, saat memprogram, sejauh tahun 1984.sumber
Temukan jawabannya dengan menyalin saran untuk
%
karakter di posting iniIni membutuhkan tanda dolar ganda
$$
.Jadi saya perlu
"$${Time.now}"
, yang mengevaluasi ke"${Time.now}"
sumber