Apache进入Docker问题

时间:2019-04-02 12:44:58

标签: apache docker

我创建了一个内部包含Apache的docker映像。我有一个问题(我认为),它是apache模块的路径,我在libexec内部的模块中有一个错误

dockerfile
FROM httpd:2.4
COPY ./httpd.conf /usr/local/apache2/conf/httpd.conf
COPY ./libexec /libexec/apache2/
COPY ./public/ /usr/local/apache2/htdocs/



但是当我运行docker build -t web_admin .时,出现此错误:

httpd: Syntax error on line 72 of /usr/local/apache2/conf/httpd.conf: Cannot load libexec/apache2/apache2/mod_authn_file.so into server: /libexec/apache2/apache2/mod_authn_file.so: invalid ELF header



这只是我的httpd.conf文件的一小部分

ServerRoot "/"

<IfDefine SERVER_APP_HAS_DEFAULT_PORTS>
    Listen 8080
</IfDefine>
<IfDefine !SERVER_APP_HAS_DEFAULT_PORTS>
    Listen 80
</IfDefine>

LoadModule authn_file_module libexec/apache2/apache2/mod_authn_file.so
LoadModule authn_core_module libexec/apache2/apache2/mod_authn_core.so
LoadModule authz_host_module libexec/apache2/apache2/mod_authz_host.so

# other modules
# other confs

DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">
MultiViews
    Options FollowSymLinks Multiviews
    MultiviewsMatch Any
    AllowOverride None
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

1 个答案:

答案 0 :(得分:0)

如果该模块是为除docker映像以外的其他体系结构/平台/操作系统构建的,则可能会发生这种情况。