rack-sequel-postgres-passenger-mri.dockerfile 856 B

12345678910111213141516171819202122232425262728
  1. FROM ruby:3.4
  2. ADD ./ /rack-sequel
  3. WORKDIR /rack-sequel
  4. ENV RUBY_YJIT_ENABLE=1
  5. # Use Jemalloc
  6. RUN apt-get update && \
  7. apt-get install -y --no-install-recommends libjemalloc2
  8. ENV LD_PRELOAD=libjemalloc.so.2
  9. RUN bundle config set without 'mysql puma unicorn'
  10. RUN bundle install --jobs=4 --gemfile=/rack-sequel/Gemfile
  11. # TODO: https://github.com/phusion/passenger/issues/1916
  12. ENV _PASSENGER_FORCE_HTTP_SESSION=true
  13. ENV DBTYPE=postgresql
  14. RUN ruby -r /rack-sequel/config/auto_tune -e 'puts auto_tune.first' > instances
  15. EXPOSE 8080
  16. CMD bundle exec passenger start --log-level 1 \
  17. --engine builtin --disable-turbocaching --disable-security-update-check \
  18. --spawn-method direct --max-pool-size $(cat instances) --min-instances $(cat instances) --max-request-queue-size 1024 \
  19. --address 0.0.0.0 --port 8080 --environment production