ffead-cpp-crystal-http.dockerfile 1.4 KB

123456789101112131415161718192021222324252627
  1. FROM buildpack-deps:bionic
  2. ENV IROOT=/installs
  3. COPY te-benchmark-um/ te-benchmark-um/
  4. COPY *.sh ./
  5. RUN mkdir /installs && chmod 755 *.sh && /install_ffead-cpp-dependencies.sh && /install_ffead-cpp-framework.sh && \
  6. /install_ffead-cpp-httpd.sh && /install_ffead-cpp-nginx.sh && rm -rf ${IROOT}/ffead-cpp-src
  7. RUN rm -f /usr/local/lib/libffead-* /usr/local/lib/libte_benc* /usr/local/lib/libinter.so /usr/local/lib/libdinter.so && \
  8. ln -s ${IROOT}/ffead-cpp-4.0/lib/libte_benchmark_um.so /usr/local/lib/libte_benchmark_um.so && \
  9. ln -s ${IROOT}/ffead-cpp-4.0/lib/libffead-modules.so /usr/local/lib/libffead-modules.so && \
  10. ln -s ${IROOT}/ffead-cpp-4.0/lib/libffead-framework.so /usr/local/lib/libffead-framework.so && \
  11. ln -s ${IROOT}/ffead-cpp-4.0/lib/libinter.so /usr/local/lib/libinter.so && \
  12. ln -s ${IROOT}/ffead-cpp-4.0/lib/libdinter.so /usr/local/lib/libdinter.so && \
  13. ldconfig
  14. RUN curl -sL "https://keybase.io/crystal/pgp_keys.asc" | apt-key add - \
  15. && echo "deb https://dist.crystal-lang.org/apt crystal main" | tee /etc/apt/sources.list.d/crystal.list \
  16. && apt-get update -y && apt install -y --no-install-recommends crystal && rm -rf /var/lib/apt/lists/*
  17. WORKDIR ${IROOT}/lang-server-backends/crystal/crystal
  18. RUN crystal build --release --no-debug crystal-ffead-cpp.cr -o crystal-ffead-cpp.out && cp crystal-ffead-cpp.out $IROOT/ && rm -rf ${IROOT}/lang-server-backends
  19. WORKDIR /
  20. CMD ./run_ffead.sh ffead-cpp-4.0 crystal-http