我有2个文件,第一个是(dockerfile
),第二个是(test.env
)
当我运行dockerfile时,它将使用变量aaa which = to test.env中的index.php
dockerfile:
FROM php:7.2.2-apache
ENV test.env ${aaa}
COPY ${aaa} /var/www/html
test.env:
aaa='index.php'
任何帮助将不胜感激 谢谢
答案 0 :(得分:1)
您可以提供在构建阶段用作构建参数的变量。容器可以使用环境变量,但不能构建映像。
针对您的问题:
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
答案 1 :(得分:0)
将无法直接使用它。 您可能想尝试一下:
RecyclerView
答案 2 :(得分:-1)
您可以在Dockerfile中定义一个变量:
ARG aaa='index.php'
ENV aaa=${aaa}
但是,如果要使用外部文件中的文件,可以通过以下方式运行容器:
docker run --env-file=test.env