Dockerfile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. FROM php:7.0-cli
  2. MAINTAINER Tobias Munk tobias@diemeisterei.de
  3. # Install required system packages
  4. RUN apt-get update && \
  5. apt-get -y install \
  6. git \
  7. zlib1g-dev \
  8. libssl-dev \
  9. --no-install-recommends && \
  10. apt-get clean && \
  11. rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
  12. # Install php extensions
  13. RUN docker-php-ext-install \
  14. bcmath \
  15. zip
  16. # Install pecl extensions
  17. RUN pecl install mongodb xdebug && \
  18. docker-php-ext-enable mongodb && \
  19. docker-php-ext-enable xdebug
  20. # Configure php
  21. RUN echo "date.timezone = UTC" >> /usr/local/etc/php/php.ini
  22. # Install composer
  23. ENV COMPOSER_ALLOW_SUPERUSER=1
  24. RUN curl -sS https://getcomposer.org/installer | php -- \
  25. --filename=composer \
  26. --install-dir=/usr/local/bin
  27. RUN composer global require --optimize-autoloader \
  28. "hirak/prestissimo"
  29. # Prepare application
  30. WORKDIR /repo
  31. # Install vendor
  32. COPY ./composer.json /repo/composer.json
  33. RUN composer install --prefer-dist --optimize-autoloader
  34. # Add source-code
  35. COPY . /repo
  36. ENV PATH /repo:${PATH}
  37. ENTRYPOINT ["codecept"]
  38. # Prepare host-volume working directory
  39. RUN mkdir /project
  40. WORKDIR /project