lwan-lua.dockerfile 968 B

12345678910111213141516171819202122232425262728
  1. FROM ubuntu:21.10
  2. RUN apt-get update -yqq && \
  3. apt-get install -yqq \
  4. git pkg-config build-essential cmake zlib1g-dev \
  5. libsqlite3-dev libmariadb-dev wget libluajit-5.1-dev
  6. ADD ./ /lwan
  7. WORKDIR /lwan
  8. RUN mkdir mimalloc && \
  9. wget https://github.com/microsoft/mimalloc/archive/817569dfad79732233fb86649c89e04387ce02e9.tar.gz -O - | tar xz --strip-components=1 -C mimalloc && \
  10. cd mimalloc && mkdir build && cd build && \
  11. CFLAGS="-flto -ffat-lto-objects" cmake .. -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=OFF && make -j install
  12. RUN wget https://github.com/lpereira/lwan/archive/e637f1ea724389a36dcab02affb6ec3fe5ecb0b6.tar.gz -O - | tar xz --strip-components=1 && \
  13. mkdir build && cd build && \
  14. cmake /lwan -DCMAKE_BUILD_TYPE=Release -DUSE_ALTERNATIVE_MALLOC=mimalloc && \
  15. make lwan-static
  16. RUN make clean && make
  17. ENV LD_LIBRARY_PATH=/usr/local/lib:/usr/lib
  18. ENV LD_PRELOAD=/usr/local/lib/libmimalloc.so
  19. EXPOSE 8080
  20. CMD ["./techempower"]