这是我的Dockerfile:
FROM php:7.1-apache
WORKDIR /etc/apache2/conf-enabled
RUN ln -s ../conf-available/lda-htaccess.conf .
WORKDIR /etc/apache2/conf-available
RUN echo "<Directory /var/www/html>\n" \
" AllowOverride All\n" \
"</Directory>\n" \
> lda-htaccess.conf
这是结果目录条目:
root@866474a33e66:/etc/apache2/conf-available# ls -al
total 36
drwxr-xr-x 1 root root 4096 Oct 11 18:12 .
drwxr-xr-x 1 root root 4096 Sep 12 09:38 ..
-rw-r--r-- 1 root root 315 Apr 2 2019 charset.conf
-rw-r--r-- 1 root root 204 Sep 12 09:38 docker-php.conf
-rw-r--r-- 1 root root 3224 Apr 2 2019 localized-error-pages.conf
-rw-r--r-- 1 root root 189 Apr 2 2019 other-vhosts-access-log.conf
-rw-r--r-- 1 root root 2174 Apr 2 2019 security.conf
-rw-r--r-- 1 root root 455 Apr 2 2019 serve-cgi-bin.conf
-rw-r--r-- 1 root root 62 Oct 11 18:12 ''$'\302\240''lda-htaccess.conf'
root@866474a33e66:/etc/apache2/conf-available#
如何格式化echo命令,是否使用exec表单或使用什么内容似乎都无关紧要。结果总是一样的。
这是我的版本:
Docker版本19.03.2,内部版本6a30dfc
我在这里做错了什么?看来这应该工作-我以前使用过这种模式。
最佳答案
事实证明,在>之后和文件名之前有一个Unicode空格字符。修复了修复Dockerfile构建的问题。我的语法没有错误。
关于docker - 带有重定向命令的Dockerfile “RUN echo”导致文件名困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58346852/