laravel-ripple.dockerfile 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. FROM php:8.3-cli
  2. RUN apt-get update -yqq >> /dev/null
  3. RUN apt-get install -y libevent-dev \
  4. libssl-dev \
  5. pkg-config \
  6. build-essential \
  7. unzip >> /dev/null
  8. RUN docker-php-ext-install pdo_mysql \
  9. opcache \
  10. posix \
  11. pcntl \
  12. sockets >> /dev/null
  13. RUN pecl install event >> /dev/null
  14. RUN docker-php-ext-enable pdo_mysql opcache posix pcntl sockets
  15. RUN docker-php-ext-enable --ini-name zz-event.ini event
  16. RUN echo "opcache.enable_cli=1" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
  17. RUN echo "opcache.jit=1205" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
  18. RUN echo "opcache.jit_buffer_size=128M" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
  19. COPY --from=composer --link /usr/bin/composer /usr/local/bin/composer
  20. # Initialize
  21. WORKDIR /laravel
  22. COPY --link . .
  23. RUN mkdir -p bootstrap/cache \
  24. storage/logs \
  25. storage/framework/sessions \
  26. storage/framework/views \
  27. storage/framework/cache
  28. RUN echo "RIP_HTTP_LISTEN=http://0.0.0.0:8080" >> .env
  29. RUN echo "RIP_HTTP_WORKERS=64" >> .env
  30. RUN echo "RIP_HTTP_RELOAD=0" >> .env
  31. # Configure
  32. RUN composer install --quiet
  33. RUN composer require cloudtay/laravel-ripple --quiet
  34. RUN php artisan vendor:publish --tag=ripple-config
  35. RUN php artisan optimize
  36. # Start
  37. EXPOSE 8080
  38. ENTRYPOINT ["php","artisan","ripple:server","start"]