Bash Can';t访问RUN script.sh Dockerfile中的环境变量
我有一个Dockerfile:Bash Can';t访问RUN script.sh Dockerfile中的环境变量,bash,docker,docker-compose,Bash,Docker,Docker Compose,我有一个Dockerfile: FROM php:5.6-apache WORKDIR /var/www/html/ # ENV VARIABLES ENV INI_FOLDER /usr/local/etc/php ENV WWW_FOLDER /var/www # ADD THE ENV CONFIGURATOR AND SET PERMISSIONS ADD env.sh $WWW_FOLDER/ RUN chmod +x $WWW_FOLDER/env.sh RUN /var/ww
FROM php:5.6-apache
WORKDIR /var/www/html/
# ENV VARIABLES
ENV INI_FOLDER /usr/local/etc/php
ENV WWW_FOLDER /var/www
# ADD THE ENV CONFIGURATOR AND SET PERMISSIONS
ADD env.sh $WWW_FOLDER/
RUN chmod +x $WWW_FOLDER/env.sh
RUN /var/www/env.sh
问题是在env.sh
中,我无法访问docker compose上设置的变量。有没有解决办法
更新:添加了docker compose
version: '2.0'
services:
app:
env_file:
- app/mysql.env
- app/app.env
volumes:
- C:\Users\svirl\Documents\workspace\docker\my-app:/var/www/html/:rw
build: app
env.sh
在运行时应该可以访问$INI\u文件夹
和$WWW\u文件夹
。到底是什么让你觉得它没有?你提到docker compose。你也可以添加你的撰写文件吗?嗨,我添加了你的请求。我指的不是$INI_文件夹,我没有测试那些变量,我指的是app.env
和mysql.env
变量。env.sh
在运行时应该可以访问$INI_文件夹
和$WWW_文件夹
。到底是什么让你觉得它没有?你提到docker compose。你也可以添加你的撰写文件吗?嗨,我添加了你的请求。我指的不是$INI_文件夹,我没有测试那些变量,我指的是app.env
和mysql.env
变量。