Dockerfile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. FROM alpine:3.12
  2. LABEL maintainer "[email protected]"
  3. # build minimized
  4. WORKDIR /
  5. RUN apk add --no-cache --virtual .build-tools git g++ build-base linux-headers cmake python2 && \
  6. apk add --no-cache --virtual .build-deps curl-dev rapidjson-dev libevent-dev pcre2-dev yaml-cpp-dev && \
  7. git clone https://github.com/svaarala/duktape --depth=1 && \
  8. cd duktape && \
  9. python2 -m ensurepip && \
  10. pip2 install PyYAML --no-cache-dir && \
  11. mkdir dist && \
  12. python2 util/dist.py && \
  13. cd dist/source/src && \
  14. cc -c -O3 -o duktape.o duktape.c && \
  15. cc -c -O3 -o duk_module_node.o -I. ../extras/module-node/duk_module_node.c && \
  16. ar cr libduktape.a duktape.o && \
  17. ar cr libduktape_module.a duk_module_node.o && \
  18. install -m0644 ./*.a /usr/lib && \
  19. install -m0644 duk*.h /usr/include && \
  20. install -m0644 ../extras/module-node/duk_module_node.h /usr/include && \
  21. cd ../../../.. && \
  22. rm -rf duktape /usr/lib/python2.7 && \
  23. git clone https://github.com/tindy2013/subconverter --depth=1 && \
  24. cd subconverter && \
  25. cmake -DCMAKE_BUILD_TYPE=Release . && \
  26. make -j4 && \
  27. mv subconverter /usr/bin && \
  28. mv base ../ && \
  29. cd .. && \
  30. rm -rf subconverter && \
  31. apk add --no-cache --virtual subconverter-deps pcre2 libcurl yaml-cpp libevent && \
  32. apk del .build-tools .build-deps
  33. # set entry
  34. WORKDIR /base
  35. CMD subconverter