根据
docker docs
,环境变量在.env文件中的格式应为
VAR=VAL
对样品来说效果很好
foo=bar
但没有提到不可避免的特殊字符,例如“=”,这可能会混淆
key-val
分隔符或
space
有效数据库连接字符串的两部分,如:
secrets.env文件:
connectionString=Data Source=some-server;Initial Catalog=db;User ID=uid;Password=secretpassword
docker-compose.debug.yaml文件内容中称为:
services:
some-service:
container_name: "service-name"
env_file:
- secrets.env
ports:
- "80:80"
它进一步被用来转化成
docker-compose.yaml
如下图所示:
所以问题是-如何包含连接字符串
=
和
Spaces
作为价值的一部分?
需要
-我们在VS解决方案中很少有微服务,希望避免重复相同的连接字符串,否则需要在'docker compose.yaml'的服务规范中
尝试
包括单引号/双引号中的值,但在转换后
=
像kubernets yaml文件约定一样,将包含引号的值视为