服务“ Web”中“环境”选项的无效插值格式:“ SECRET_KEY =

时间:2019-07-28 14:47:53

标签: django docker

我正在从事在线书店项目。 我正在尝试在dockercompose.yml中设置环境变量

project_folder / settings.py

SECRET_KEY = os.environ.get('SECRET_KEY')

dockercompose.yml文件中的代码文件

version: '3.7'

services:
  web:
      build: .
      command: python /code/manage.py runserver 0.0.0.0:8000
      volumes:
          - .:/code
      ports:
          - 8000:8000
      depends_on:
          - db
      environment:
          - SECRET_KEY=my_secret_key
          - DEBUG=1

  db:
    image: postgres:11
    volumes:
      - postgres_data:/var/lib/postgresql/data/
volumes:
  postgres_data:

运行命令时出现以下错误

$docker-compose down

ERROR: Invalid interpolation format for "environment" option in service "web": "SECRET_KEY=my_secret_key"

1 个答案:

答案 0 :(得分:0)

因为您的secret_key包含$符号。您需要对其进行转义。

使用官方文档中here中指定的双$符号$$对其进行转义。

或者,如果可能的话,您也可以只添加一个没有$符号的新secret_key。