Apache работает на Docker, но не получает ответа на хостеApache

Ответить
Anonymous
 Apache работает на Docker, но не получает ответа на хосте

Сообщение Anonymous »

Пытаюсь запустить экземпляр Moodle в Docker с помощью php-apache
Привет, в настоящее время я пытаюсь настроить экземпляр Moodle с помощью Docker.
< ul>
[*]Контейнер mariadb (изображение: mariadb:latest)
[*]Контейнер PHP (изображение: php:8.3-apache)

Согласно докеру, все работает, и если я использую nmap для проверки связи с адресом, я получаю:

Код: Выделить всё

Nmap scan report for localhost (127.0.0.1)
Host is up (0.000099s latency).
Not shown: 997 closed tcp ports (conn-refused)
PORT     STATE SERVICE
80/tcp   open  http
443/tcp  open  https
3306/tcp open  mysql

Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
Мой код представляет собой простую вилку Github — Moodle, и он был правильно установлен в /var/www/html/moodle при сборке.
Ошибка: пустой ответ
Когда я открываю свой локальный хост в браузере, я получаю сообщение 127.0.0.1 не отправлял никаких данных. (примечание: это браузер) сообщение, а не сообщение об ошибке Apache). Я не получаю никаких сообщений об ошибках/журналах в своих контейнерах докеров.
Я обновил Apache DocumentRoot, чтобы он соответствовал WORKDIR, но проблема все еще сохраняется.
Из-за отсутствия ошибок/отзывов Мне трудно понять, где искать.
Настройка Docker
Вот мои файлы Docker на случай, если вы захотите повторить мой сценарий:
  • создайте в корне каталог /moodle, содержащий клон из этого репозитория Github.
  • создайте пустой репозиторий /moodledata (убедитесь, что он имеет права на запись/создание)

Код: Выделить всё

docker-compose.yml

Код: Выделить всё

name: 'moodle_405'

services:
mariadb:
image: mariadb:latest
container_name: mariadb
environment:
- MYSQL_ROOT_PASSWORD=bitnami
- MYSQL_DATABASE=moodle
- MYSQL_USER=admin
- MYSQL_PASSWORD=password
volumes:
- ./mariadb:/var/lib/mysql
ports:
- "3306:3306"

moodle:
image: php:8.3-apache
container_name: moodle
build:
context: .
dockerfile: Dockerfile
environment:
- MOODLE_DATABASE_HOST=mariadb
- MOODLE_DATABASE_NAME=moodle
- MOODLE_DATABASE_USER=admin
- MOODLE_DATABASE_PASSWORD=password
volumes:
# ./moodle contains a simple fork from moodle's github repository
- ./moodle:/var/www/html/moodle
# ./moodledata is an empty folder that will be updated during moodle's setup
- ./moodledata:/var/www/moodledata
depends_on:
- mariadb
ports:
- "80:8080"
- "443:8443"

Код: Выделить всё

Dockerfile

Код: Выделить всё

FROM php:8.3-apache

LABEL maintainer="John Whick "
LABEL description="John's Moodle setup for docker"
LABEL version="1.2"

# PHP extensions
RUN apt-get update && apt-get install -y \
libpng-dev \
libjpeg-dev \
libfreetype6-dev \
libxml2-dev \
libzip-dev \
unzip \
git \
&& docker-php-ext-install mysqli zip gd xml soap intl \
&& a2enmod rewrite

# Set Apache DocumentRoot
RUN sed -ri -e 's!/var/www/html!/var/www/html/moodle!g' \
/etc/apache2/sites-available/*.conf \
/etc/apache2/apache2.conf \
/etc/apache2/conf-available/*.conf

WORKDIR /var/www/html/moodle

EXPOSE 80
EXPOSE 8080
Спасибо, что уделили время.


Подробнее здесь: https://stackoverflow.com/questions/793 ... se-on-host
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Apache»