2022-06-12 20:02:05 +02:00
|
|
|
#Building main conteiner
|
2022-07-19 17:56:54 +02:00
|
|
|
FROM python:alpine
|
2022-06-11 21:57:50 +02:00
|
|
|
|
2022-07-19 17:56:54 +02:00
|
|
|
RUN apk update
|
2022-08-02 13:13:58 +00:00
|
|
|
RUN apk add g++ git pcre2-dev libnetfilter_queue-dev libpcap-dev libcrypto1.1 libnfnetlink-dev libmnl-dev make cmake nftables boost-dev libcap shadow bash
|
2022-07-01 02:29:28 +02:00
|
|
|
|
2022-07-17 10:36:14 +02:00
|
|
|
WORKDIR /tmp/
|
2022-07-19 17:56:54 +02:00
|
|
|
RUN git clone --single-branch --branch release https://github.com/jpcre2/jpcre2
|
|
|
|
|
RUN git clone --single-branch https://github.com/mfontanini/libtins.git
|
2022-07-17 10:36:14 +02:00
|
|
|
WORKDIR /tmp/jpcre2
|
|
|
|
|
RUN ./configure; make; make install
|
2022-07-19 17:56:54 +02:00
|
|
|
WORKDIR /tmp/libtins
|
|
|
|
|
RUN mkdir build; cd build; cmake ../ -DLIBTINS_ENABLE_CXX11=1; make; make install
|
|
|
|
|
|
2022-07-18 18:52:14 +02:00
|
|
|
RUN mkdir -p /execute/modules
|
2022-08-02 13:13:58 +00:00
|
|
|
|
|
|
|
|
|
2022-06-11 21:57:50 +02:00
|
|
|
WORKDIR /execute
|
|
|
|
|
|
2022-07-22 01:12:54 +02:00
|
|
|
ADD ./backend/requirements.txt /execute/requirements.txt
|
2022-08-02 13:13:58 +00:00
|
|
|
|
|
|
|
|
RUN pip3 install --no-cache-dir -r /execute/requirements.txt --no-warn-script-location
|
|
|
|
|
|
|
|
|
|
RUN chown nobody:nobody -R /execute/
|
|
|
|
|
RUN usermod -d /tmp/nobody nobody && usermod --shell /bin/sh nobody
|
|
|
|
|
USER nobody
|
|
|
|
|
RUN mkdir /tmp/nobody
|
2022-07-22 01:12:54 +02:00
|
|
|
|
2022-07-22 00:34:57 +02:00
|
|
|
COPY ./backend/binsrc /execute/binsrc
|
2022-07-17 17:02:27 +02:00
|
|
|
|
2022-07-21 20:25:39 +02:00
|
|
|
ARG GCC_PARAMS
|
2022-07-22 00:34:57 +02:00
|
|
|
RUN g++ binsrc/nfqueue.cpp -o modules/cppqueue -O3 -march=native -lnetfilter_queue -pthread -lpcre2-8 -ltins -lmnl -lnfnetlink
|
|
|
|
|
RUN g++ binsrc/proxy.cpp -o modules/proxy -O3 -march=native $GCC_PARAMS -pthread -lboost_system -lboost_thread -lpcre2-8
|
2022-07-17 10:36:14 +02:00
|
|
|
|
2022-08-02 13:13:58 +00:00
|
|
|
|
2022-06-28 16:02:52 +02:00
|
|
|
COPY ./backend/ /execute/
|
2022-06-21 10:37:02 +02:00
|
|
|
COPY ./frontend/build/ ./frontend/
|
2022-06-12 20:02:05 +02:00
|
|
|
|
2022-08-02 13:13:58 +00:00
|
|
|
USER root
|
|
|
|
|
ENTRYPOINT ["/bin/sh", "/execute/docker-entrypoint.sh"]
|
2022-06-12 20:02:05 +02:00
|
|
|
|
|
|
|
|
|