Dockerfile 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. FROM php:5.6-apache
  2. COPY docker_config/php.ini /usr/local/etc/php/
  3. RUN apt-get update && apt-get install -y \
  4. libfreetype6-dev \
  5. libjpeg62-turbo-dev \
  6. libmcrypt-dev \
  7. libpng12-dev \
  8. netcat \
  9. mysql-client
  10. # Elgg requirements
  11. RUN docker-php-ext-install pdo pdo_mysql mysql
  12. RUN docker-php-ext-install mbstring gd
  13. WORKDIR /var/www/html/
  14. #Configs apache
  15. RUN a2enmod rewrite
  16. #Set time zone in server
  17. ENV TIMEZONE="America/Sao_Paulo"
  18. RUN cp /usr/share/zoneinfo/${TIMEZONE} /etc/localtime
  19. # set defaults or env vars for Elgg and MySQL
  20. # MySQL
  21. ENV MYSQL_USER=${MYSQL_USER:-"root"}
  22. ENV MYSQL_PASS=${MYSQL_PASS:-"root-pass"}
  23. ENV MYSQL_PORT=${MYSQL_PORT:-"3306"}
  24. # required for installation
  25. ENV ELGG_DB_HOST=${ELGG_DB_HOST:-"mysql"}
  26. ENV ELGG_DB_USER=$MYSQL_USER
  27. ENV ELGG_DB_PASS=$MYSQL_PASS
  28. ENV ELGG_DB_NAME=${ELGG_DB_NAME:-"elgg"}
  29. ENV ELGG_SITE_NAME=${ELGG_SITE_NAME:-"Elgg Site"}
  30. ENV ELGG_DATA_ROOT=${ELGG_DATA_ROOT:-"/media/elgg/"}
  31. ENV ELGG_WWW_ROOT=${ELGG_WWW_ROOT:-"http://localhost:8000"}
  32. # admin user setup
  33. ENV ELGG_DISPLAY_NAME=${ELGG_DISPLAY_NAME:-"Admin"}
  34. ENV ELGG_EMAIL=${ELGG_EMAIL:-"admin@myelgg.org"}
  35. ENV ELGG_USERNAME=${ELGG_USERNAME:-"admin"}
  36. ENV ELGG_PASSWORD=${ELGG_PASSWORD:-"admin-pass"}
  37. # optional for installation
  38. ENV ELGG_DB_PREFIX=${ELGG_DB_PREFIX:-"elgg_"}
  39. ENV ELGG_PATH=${ELGG_PATH:-"/var/www/html/"}
  40. # 2 is ACCESS_PUBLIC
  41. ENV ELGG_SITE_ACCESS=${ELGG_SITE_ACCESS:-"2"}
  42. COPY . /elgg-docker/
  43. RUN chmod +x /elgg-docker/elgg-install.sh