【发布时间】:2019-01-04 12:42:26
【问题描述】:
在我的 Docker/Laravel 5 项目中,我试图重命名 Docker 的 .env 文件(我在 Laravel 项目中有类似的文件),所以我在 docker-compose.yml 中添加了 2 行:
version: '3.1'
services:
web:
env_file:
./docker_app.env
build:
context: ./web
dockerfile: Dockerfile.yml
environment:
- APACHE_RUN_USER=www-data
volumes:
- ${APP_PATH_HOST}:${APP_PTH_CONTAINER}
ports:
- 8081:80
working_dir: ${APP_PTH_CONTAINER}
db:
image: mysql:5.7.24
restart: always
environment:
MYSQL_ROOT_PASSWORD: 1
volumes:
- ${DB_PATH_HOST}:/var/lib/mysql
但是当我运行构建命令时出现错误:
$ docker-compose up -d --build
WARNING: The APP_PATH_HOST variable is not set. Defaulting to a blank string.
WARNING: The APP_PTH_CONTAINER variable is not set. Defaulting to a blank string.
WARNING: The DB_PATH_HOST variable is not set. Defaulting to a blank string.
...
Step 2/3 : RUN apt-get update && apt-get install -y libfreetype6-dev libwebp-dev libjpeg62-turbo-dev libpng-dev nano libgmp-dev libldap2-dev netcat sqlite3 git libsqlite3-dev && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-webp-dir=/usr/include/ --with-jpeg-dir=/usr/include/ && docker-php-ext-install gd pdo pdo_mysql pdo_sqlite zip gmp bcmath pcntl ldap sysvmsg exif && a2enmod rewrite
...
docker_app.env 内容为:
DB_PATH_HOST=./databases
APP_PATH_HOST=./SiteApp
APP_PTH_CONTAINER=/var/www/html/
docker-compose.yml、docker_app.env和SiteApp子目录在同一个根目录下
如果我在docker-compose.yml 中为env_file 参数设置了无效文件,我会收到另一个错误吗?
如何解决这个错误?
谢谢!
【问题讨论】:
-
构建上下文是
./web。docker_app.env文件在 web 目录中吗?
标签: docker docker-compose environment-variables