在docker-compose文件中将环境变量添加为正则表达式

时间:2019-01-15 10:47:48

标签: docker docker-compose

我尝试添加具有正则表达式值的环境变量

version: "2.3"
services:
    ...
  php:
    ...
    environment:
      - "CORS_ALLOW_ORIGIN=^https?://localhost(:[0-9]+)?$"

运行docker-compose up

它给了我这个错误: ERROR: Invalid interpolation format for "environment" option in service "php": "CORS_ALLOW_ORIGIN=^https?://localhost(:[0-9]+)?$"

我已经玩过并删除了$,它可以正常工作,但想保留它。

有什么主意吗?

2 个答案:

答案 0 :(得分:0)

它试图扩大您的美元符号。尝试使用\$代替$或在单引号中取值以防止宏扩展。

答案 1 :(得分:0)

使用 $$ 转义美元 ($) 符号。

version: "2.3"
services:
    ...
  php:
    ...
    environment:
      - "CORS_ALLOW_ORIGIN='^https?://localhost(:[0-9]+)?$$'

参见 docker-compose doc (v2) 中的变量替换