Sign inSign up

mirafox/apache-php

By mirafox

•Updated almost 10 years ago

Контейнер с Apache + mod_php (7.1, 7.0 или 5.6) и поддержкой Let's Encrypt

Image
0

981

mirafox/apache-php repository overview

⁠Описание

Это Dockerfile, позволяющие собрать простой образ для Docker с Apache, PHP (как модуль) и поддержкой Let's Encrypt. Имеется возможность изменения параметров PHP, доступно три версии PHP 7.1, 7.0 и 5.6.

⁠PHP собран с поддержкой следующих модулей
  • Расширения, включенные по умолчанию: gd, mysqli, pdo, pdo_mysql, intl, dom, xml, xsl, xmlrpc, zip, bz2, fileinfo, curl, iconv, json, soap, calendar, gettext, mcrypt, tidy, phar, gettext, mysql (доступно только для php 5.6), imagick
  • Расширения, отключенные по умолчанию: mongodb, gearman, opcache, memcached , redis, imap, ldap, xcache (доступно только для PHP 5.6)

⁠Репозиторий Git

Репозиторий исходных файлов данного проекта: https://github.com/MiraFox/apache-php⁠

⁠Репозиторий Docker Hub

Расположение образа в Docker Hub: https://hub.docker.com/r/mirafox/apache-php/⁠

⁠Версии

TagApachePHP
latest2.4.107.1.0
7.12.4.107.1.0
7.02.4.107.0.14
5.62.4.105.6.29

⁠Использование Docker Hub

sudo docker pull mirafox/apache-php

⁠Запуск

sudo docker run -d -p 80:80 -p 443:443 \
    -v /home/username/sitename/www/:/var/www/html/ \
    -v /home/username/sitename/logs/:/var/log/apache2/ \
    mirafox/apache-php

⁠Доступные параметры конфигурации

⁠Параметры изменяющие настройки PHP
ПараметрИзменяемая директиваПо умолчанию
PHP_ALLOW_URL_FOPENallow_url_fopenOn
PHP_DISPLAY_ERRORSdisplay_errorsOff
PHP_MAX_EXECUTION_TIMEmax_execution_time30
PHP_MAX_INPUT_TIMEmax_input_time60
PHP_MEMORY_LIMITmemory_limit128M
PHP_POST_MAX_SIZEpost_max_size8M
PHP_SHORT_OPEN_TAGshort_open_tagOn
PHP_TIMEZONEdate.timezoneEurope/Moscow
PHP_UPLOAD_MAX_FILEZIZEupload_max_filesize2M
⁠Пример использования
sudo docker run -d \
    -e 'PHP_TIMEZONE=Europe/Moscow' \
    -e 'PHP_MEMORY_LIMIT=512' \
    -e 'PHP_SHORT_OPEN_TAG=On' \
    -e 'PHP_UPLOAD_MAX_FILEZIZE=16' \
    -e 'PHP_MAX_EXECUTION_TIME=120' \
    -e 'PHP_MAX_INPUT_TIME=120' \
    -e 'PHP_DISPLAY_ERRORS=On' \
    -e 'PHP_POST_MAX_SIZE=32' \
    -e 'PHP_ALLOW_URL_FOPEN=Off' \
    mirafox/apache-php
⁠Параметры подключения расширений PHP
  • PHP_MODULE_MEMCACHED: при установки в значение On подключается расширение memcached
  • PHP_MODULE_OPCACHE: при установки в значение On подключается расширение OPcache
  • PHP_MODULE_XCACHE: при установки в значение On подключается расширение XCache (только для версии PHP 5.6)
  • PHP_MODULE_REDIS: при установки в значение On подключается расширение Redis
  • PHP_MODULE_MONGO: при установки в значение On подключается расширение MongoDB
  • PHP_MODULE_GEARMAN: при установки в значение On подключается расширение Gearman
  • PHP_MODULE_IMAP: при установки в значение On подключается расширение IMAP
  • PHP_MODULE_LDAP: при установки в значение On подключается расширение LDAP
⁠Пример использования
sudo docker run -d -e 'PHP_MODULE_MEMCACHED=On' -d mirafox/apache-php

⁠Поддержка Let's Encrypt

Данный образ имеет поддержку SSL сертификатов Let's Encrypt. Для установки сертификата необходимо при запуске контейнера добавить параметры:

  • SSL_DOMAIN: имя домена, на который будет выдан SSL сертификат
  • SSL_EMAIL: E-Mail администратора домена

Оба параметра обязательны, если Вы желаете использовать Let's Encrypt

⁠Пример использования
sudo docker run -d \
    -e 'SSL_DOMAIN=example.com,www.example.com' \
    -e '[email protected]' \
    mirafox/apache-php
⁠Установка сертификата
docker exec -it <CONTAINER_NAME> /usr/local/bin/letsencrypt-init
⁠Перевыпуск сертификата
docker exec -it <CONTAINER_NAME> /usr/local/bin/letsencrypt-renew

⁠Использование PHP Composer

docker exec -it <CONTAINER_NAME> /usr/local/bin/composer

Tag summary

Content type

Image

Digest

Size

295.9 MB

Last updated

almost 10 years ago

docker pull mirafox/apache-php