Dockerfile 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. FROM php:8-apache
  2. # Install extensions
  3. RUN apt-get update && apt-get install -y \
  4. libfreetype6-dev \
  5. libjpeg62-turbo-dev \
  6. libpng-dev \
  7. libpq-dev \
  8. && docker-php-ext-install -j$(nproc) iconv \
  9. && docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ \
  10. && docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \
  11. && docker-php-ext-install -j$(nproc) gd pdo pdo_mysql pdo_pgsql pgsql \
  12. && rm -rf /var/lib/apt/lists/*
  13. # Prepare files and folders
  14. RUN mkdir -p /speedtest/
  15. # Copy sources
  16. COPY backend/ /speedtest/backend
  17. COPY results/*.php /speedtest/results/
  18. COPY results/*.ttf /speedtest/results/
  19. COPY *.js /speedtest/
  20. COPY favicon.ico /speedtest/
  21. COPY docker/servers.json /servers.json
  22. COPY docker/*.php /speedtest/
  23. COPY docker/entrypoint.sh /
  24. # Prepare default environment variables
  25. ENV TITLE=LibreSpeed
  26. ENV MODE=standalone
  27. ENV PASSWORD=password
  28. ENV TELEMETRY=false
  29. ENV ENABLE_ID_OBFUSCATION=false
  30. ENV REDACT_IP_ADDRESSES=false
  31. ENV WEBPORT=80
  32. # Final touches
  33. EXPOSE 80
  34. CMD ["bash", "/entrypoint.sh"]