Docker compose 如何指定多个";环境文件;对于docker compose服务?
目前,我已按如下方式设置了我的服务Docker compose 如何指定多个";环境文件;对于docker compose服务?,docker-compose,Docker Compose,目前,我已按如下方式设置了我的服务 version: '3' services: gateway: container_name: gateway image: node:lts-alpine working_dir: / volumes: - ./package.json:/package.json - ./tsconfig.json:/tsconfig.json - ./services/gateway:/service
version: '3'
services:
gateway:
container_name: gateway
image: node:lts-alpine
working_dir: /
volumes:
- ./package.json:/package.json
- ./tsconfig.json:/tsconfig.json
- ./services/gateway:/services/gateway
- ./packages:/packages
- ./node_modules:/node_modules
env_file: .env
command: yarn run ts-node-dev services/gateway --colors
ports:
- 3000:3000
因此,我指定了一个env_文件
。但是现在我想传递多个.env文件
不幸的是,以下是不可能的:
env_files:
- .env.secrets
- .env.development
有没有办法将多个.env文件传递给docker compsoe中的一个服务?在声明和处理多个env和变量时,我们遵循与下面类似的方法。可以将带有默认环境变量的.env放在docker compose文件夹中
.env
VAR = 1.1.1.1
并在Compose文件上声明相同的env变量,则Compose文件中定义的环境变量优先,并重写.env文件中定义的环境变量
docker compose.dev.override.yml
service:
environment:
- ENVIRONMENT=Development
- VAR=localhost
我明白了,这是一个好主意,但使用这种方法,我无法真正将我的secret env与我的configuration env变量分开。不过,谢谢你!