准备搭建一个 mattermost ,聊天程序。然后在官方文档中给了这样一个 docker-compose.yml: https://github.com/mattermost/docker/blob/main/docker-compose.yml
然后第 51 行开始的这几行代码,我开始看不懂了,可以这么写?
environment:
# timezone inside container
- TZ
# necessary Mattermost options/variables (see env.example)
- MM_SQLSETTINGS_DRIVERNAME
- MM_SQLSETTINGS_DATASOURCE
# necessary for bleve
- MM_BLEVESETTINGS_INDEXDIR
# additional settings
- MM_SERVICESETTINGS_SITEURL
难道不应该是
environment:
# timezone inside container
- ${TZ}
- ${MM_SQLSETTINGS_DRIVERNAME}
- ${MM_SQLSETTINGS_DATASOURCE}
- ${MM_BLEVESETTINGS_INDEXDIR}
- ${MM_SERVICESETTINGS_SITEURL}
吗?这些不都是环境变量吗?为啥可以直接写名字?主要他上半部分是正常变量的写法,我觉得没毛病
大佬们解释一下,第一次见
1
GentleFifth 2023-08-07 19:25:16 +08:00 via Android
|
2
7897894 OP @GentleFifth 谢谢 请问是只有在 environment 中才可以这么写吗?其他地方都要写成`${变量}`吗?
|
3
ncepuzs 2023-08-07 19:35:25 +08:00
|
4
cheng6563 2023-08-07 19:35:29 +08:00
docker 本来就是这样的啊 TZ=Asia/Shanghai 是全写。TZ 就是引用系统变量的简写
|
5
7897894 OP |
7
feelinglucky 2023-08-07 22:21:07 +08:00
这个应该是 YAML 的特性
|
8
julyclyde 2023-08-08 14:03:22 +08:00
这其实是两个问题:
1 compose 文件的 spec 支持什么格式,你用的 compose 软件版本支持哪个版本的 spec 2 这个应用程序支持哪些环境变量 |