Dockerfile 994 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. FROM php:7.4-apache
  2. # Install extensions
  3. RUN apt-get update && apt-get install -y \
  4. libfreetype6-dev \
  5. libjpeg62-turbo-dev \
  6. libpng-dev \
  7. && docker-php-ext-install -j$(nproc) iconv \
  8. && docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ \
  9. && docker-php-ext-install -j$(nproc) gd
  10. # Prepare files and folders
  11. RUN mkdir -p /speedtest/
  12. # Copy sources
  13. COPY backend/ /speedtest/backend
  14. COPY chartjs/ /speedtest/chartjs
  15. COPY *.js /speedtest/
  16. COPY *.html /speedtest/
  17. COPY docker/entrypoint.sh /
  18. ENV TIME_ZONE=Asia/Shanghai
  19. RUN ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime && echo $TIME_ZONE > /etc/timezone
  20. RUN printf '[PHP]\ndate.timezone = "Asia/Shanghai"\n' > /usr/local/etc/php/conf.d/tzone.ini
  21. # Prepare environment variabiles defaults
  22. ENV WEBPORT=80
  23. ENV MAX_LOG_COUNT=100
  24. ENV IP_SERVICE="ip.sb"
  25. ENV SAME_IP_MULTI_LOGS="false"
  26. VOLUME ["/speedlogs"]
  27. # Final touches
  28. EXPOSE 80
  29. CMD ["bash", "/entrypoint.sh"]