Docker с Apache и php 5.3

Автор:Игорь Тельменко

Docker с Apache и php 5.3

В продолжение темы развертывания окружения с php 5.3 соорудил вариант на docker. Прошу любить и жаловать — проект docker-grandpa-php.

Этот вариант более легковесен, чем вариант с vagrant.

Для работы требуются установленные docker и docker-compose.

Шаги по развертыванию:

  • Клонировать репозиторий в удобную директорию
  • Изменить опцию MAIN_WEB_ROOT_PATH и другие опции в файле .env
  • Добавить конфигурацию Ваших виртуальных хостов Apache в директорию main/sites
  • Добавить Ваши локальные домены в /etc/hosts

Опция MAIN_WEB_ROOT_PATH должна содержать путь к директории, которая будет смонтирована в папку /var/www образа main.

Затем можно запускать командой:

или

После чего Ваши сайты должны открываться как обычно в браузере.

Образ main основан на Ubuntu 12.04 (LTS) и содержит Apache, php 5.3, различные расширения php (в том числе xdebug) и memcached.

Директория share монтируется к /root/share образа main.

MySQL и mariadb вынесены в отдельные образы, как это принято в docker. Для соединения с ними из контейнера main к ним нужно подключаться по их именам — mysql и mariadb. Эти имена в качестве хостов надо прописывать в веб-приложениях.

Полезные команды:

Открыть bash-терминал в главном контейнере:

Отобразить список контейнеров сборки и их статусы:

Остановить все контейнеры текущей сборки:

2 комментария

JustGASTДата:10:12 дп - Ноя 24, 2017

Игорь, благодарю вас за статью и за репозиторий! Один из немногих, работающих практически из коробки!

Внесу лепту:
В файле php53.conf.example у вас используется тег IfVersion, а модуль version не включается в Dockerfile

Из-за этого контейнер не стартует.
Исправление:
Добавить в main/Dockerfile строчку
RUN a2enmod version
после RUN a2enmod rewrite.

С pull request на гитхабе не разбирался, а то бы закоммитил =)

Игорь ТельменкоДата:10:20 дп - Ноя 24, 2017

Спасибо за исправление! Проверю и добавлю в репозиторий.

Оставить ответ