我有点困惑,我有一个docker-compose文件,我正在尝试安装apache
和mariadb
...
web:
image: php:5.6-apache
volumes:
- ./:/var/www/html/
environment:
- ALLOW_OVERRIDE=true
ports:
- "80:80"
links:
- db
db:
image: mariadb
restart: always
volumes:
- ./docker/db:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: admin
MYSQL_PASSWORD: test
MYSQL_DATABASE: database
ports:
- "8889:3306"
一切正常,直到我尝试在Apache中进行一些URL重写,我得到了这个......
web_1 | [Thu Apr 12 16:55:31.646473 2018] [core:alert] [pid 18] [client 172.17.0.1:34330] /var/www/html/applications/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration
所以我按照一些在线说明添加Dockerfile
和...
FROM php:5.6-apache
MAINTAINER Raphael Mäder <ra@mader.com>
RUN a2enmod rewrite
ADD . /var/www/html
但它无法解决问题。事实上,即使我在这样的文件中添加错误......
FROM php:5.6-apache
bleurrrrgggghhh
MAINTAINER Raphael Mäder <ra@mader.com>
RUN a2enmod rewrite
ADD . /var/www/html
然后拨打docker-compose
一切都很好。所以我知道无法调用docker文件。即使我用docker-compose rm
删除图像并仍然重新启动它。
我对如何运行得到Dockerfile命令的工作感到困惑吗?
答案 0 :(得分:0)
构建图像后,除非您明确希望重建图像,否则不会再次构建图像。使用docker-compose,您可以传递--build
以强制重建图像。
docker-compose up --build web