docker - 如何在 dockerfile 中使用 .ENV 文件中的变量?
问题描述
我有 2 个文件,第一个是 ( dockerfile
),第二个是 (),test.env
当我运行 dockerfile 时,我希望它将变量 aaa which = to index.php 从 test.env
码头文件:
FROM php:7.2.2-apache
ENV test.env ${aaa}
COPY ${aaa} /var/www/html
测试环境:
aaa='index.php'
任何帮助将不胜感激谢谢
解决方案
您可以提供要在构建阶段使用的变量作为构建参数。环境变量可以被容器使用,但不能用于构建镜像。
对于您的问题:
docker build $(sed 's/^/ --build-arg /g' test.env | xargs) -t <your_image_tag> .
如果您在 test.env 中定义了未在 Dockerfile 中声明为参数 (ARG) 的变量,您将收到警告。
你的 Dockerfile 应该是:
FROM php:7.2.2-apache
ARG aaa
COPY ${aaa} /var/www/html
推荐阅读
- java - 如何使用反射 API 将数据插入 H2 数据库
- css - 在 ReactJS 中组合条件样式和悬停
- css - 构建后 Angular 中未加载字体真棒字体
- postgresql - pgbench 无效的客户端数量
- javascript - 如何使用我的函数从 123456789 返回 305274961
- exchangelib - 转发传入的 OUTLOOK exchangelib 消息
- docker - 无法从网络设备正确发送到 kafka-docker
- xml - xmlstarlet 在无效的 xhtml 上选择查询
- ruby-on-rails-5 - Rails 5 消息应用程序不会显示聊天室消息,除非重新加载
- node.js - npm install sqlite3 - gyp 错误:无法获取本地颁发者证书