文章目录
- 变量定义
- 变量赋值
- 使用.env文件
- 使用docker-compose命令
变量定义
docker-compose.yml文件中定义MSA_EXTERNAL_DNS_NAME_OR_IP
identity-api:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://0.0.0.0:80
- IdentityApiClient=http://${MSA_EXTERNAL_DNS_NAME_OR_IP}:5105
ports:
- "5105:80"
变量赋值
使用.env文件
MSA_EXTERNAL_DNS_NAME_OR_IP为变量名,localhost为具体的值
# docker-compose variable
MSA_EXTERNAL_DNS_NAME_OR_IP=localhost
在运行docker-compose命令时,如docker-compose.yml与.env文件在同一目录下。无需指定.env文件路径。如
docker-compose run
如果docker-compose.yml与.env文件不在同一目录下。需要使用–env-file指定文件路径。如
docker run --env-file ./config/.env
如果路径不正确会包如下错误
docker run --env-file ./config/.env
ERROR: Could‘t find env file: home/user/./config/.env
使用docker-compose命令
运行docker-compose时,将变量MSA_EXTERNAL_DNS_NAME_OR_IP设置为192.168.1.1
docker-compose run -e MSA_EXTERNAL_DNS_NAME_OR_IP=192.168.1.1