如何在 Docker 中正確建立 Apache2 容器
P粉428986744
P粉428986744 2024-02-03 20:28:19
0
1
412

我有以下 Dockerfile:

FROM php:8.0-apache
WORKDIR /var/www/html

EXPOSE 80

RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf && \
    rm -rf /etc/apache2/sites-enabled/000-default.conf && \
    service apache2 restart

我以這種方式在該映像上運行容器:

sudo docker run -d --name apache2-container -e TZ=UTC -p 8080:80 -v /home/xxx/www:/var/www/html -v /home/xxx/apache2.conf:/etc/apache2/apache2.conf my_image

/home/xxx/apache2.conf 是:

User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
ErrorLog ${APACHE_LOG_DIR}/error.log

HostnameLookups Off

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

# Include list of ports to listen on
Include ports.conf

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Require all denied
</Directory>

<Directory /srv/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

ServerName localhost

<VirtualHost *:80>
    DocumentRoot /var/www/html
</VirtualHost>

建立鏡像或建立容器期間沒有任何錯誤,但是當我嘗試造訪 localhost:8080 時,網站載入了 15 分鐘,沒有任何結果。

我做錯了什麼? 謝謝

P粉428986744
P粉428986744

全部回覆(1)
P粉986937457

我無法發表評論,但這裡有幾個調試問題:

  • 編輯 docker 檔案後是​​否重建了映像?
  • 當您發出請求時,網路標籤會顯示什麼? (有沒有重定向)
  • 您可以在不使用 htaccess 配置的情況下嘗試看看這是否是問題所在嗎?
  • 您的 index.php 檔案在基本目錄 (var/www/html) 中是什麼樣子?
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!