Dockerfile 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. FROM golang:1.9.4 as builder
  2. ADD . /go/src/github.com/redjack/marionette/
  3. WORKDIR /go/src/github.com/redjack/marionette/
  4. RUN GOOS=linux GOARCH=amd64 go build -a -o marionette ./cmd/marionette
  5. FROM ubuntu:16.04
  6. WORKDIR /root/
  7. RUN apt-get update && \
  8. apt-get install -y build-essential software-properties-common m4 wget python2.7 python-dev python-pip unzip libffi-dev && \
  9. pip2 install cffi cryptography
  10. RUN wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2 && \
  11. tar -xvjf gmp-6.1.2.tar.bz2 && cd gmp-6.1.2 && \
  12. ./configure --enable-cxx && make && make install && \
  13. cd /root && rm -rf gmp-*
  14. RUN wget https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.1.tar.gz && \
  15. tar zxvf pycrypto-2.6.1.tar.gz && cd pycrypto-2.6.1 && \
  16. python2.7 setup.py build && python2.7 setup.py install && \
  17. cd /root && rm -rf pycrypto-*
  18. RUN wget -O regex2dfa.zip https://github.com/kpdyer/regex2dfa/archive/master.zip && \
  19. unzip regex2dfa.zip && cd regex2dfa-master && \
  20. ./configure && make && python2.7 setup.py install && \
  21. cd /root && rm -rf regex2dfa*
  22. RUN wget -O libfte.zip https://github.com/kpdyer/libfte/archive/master.zip && \
  23. unzip libfte.zip && cd libfte-master && \
  24. python2.7 setup.py install && \
  25. cd /root && rm -rf libfte*
  26. COPY --from=builder /go/src/github.com/redjack/marionette/marionette .
  27. ENTRYPOINT ["./marionette"]