docker - docker-compose.yml 中另一个变量中的用户变量如何
问题描述
我有一个这样的.env文件:
PROJECT_DIR=./test_dir
SUB_DIR=$(PROJECT_DIR)/sub_dir
像这样的 docker-compose.yml文件:
version: '3.5'
services:
service_nginx:
image: nginx
volumes:
- ${SUB_DIR}:/var/www/html
但是我不能在 docker-compose.yml 文件中使用 $SUB_DIR 来获取卷,我得到了这样的错误:
ERROR: Named volume "$(PROJECT_DIR)/sub_dir:/var/www/html:rw" is used in service "service_nginx" but no declaration was found in the volumes section.
解决方案
如下更新您的 env 文件
export PROJECT_DIR=./test_dir
export SUB_DIR=$(PROJECT_DIR)/sub_dir
然后运行以下命令来读取变量;
. ./.env
然后从同一个终端会话部署堆栈。
推荐阅读
- python - 使用 Python Selenium 定位特定的 img
- python-3.x - 如何从一个列表创建一个新的元组列表
- scikit-learn - 在分类树中定义数据:有序与名义
- sql - 如何获得一个类别的子集数量?
- asp.net-core - Entity Framework Core 中现有数据库的模型。我需要与上下文类中的表名相同
- javascript - 碰撞后如何在 Matter.js 中保持速度?
- python - 如何在kivy中按按钮删除?
- java - log4j:ERROR 没有为名为 [file] 的附加程序设置输出流或文件
- r - 如果使用相同的种子,为什么引导方法的结果会有所不同?
- rust - `impl ... for` 是什么意思?