1FROM python:3-alpine as builder
2
3COPY . /src
4
5WORKDIR /src
6
7ARG BUILD_DEPS="curl gcc g++ libpcap-dev"
8ARG OUI_SRC="http://standards-oui.ieee.org/oui.txt"
9
10RUN apk add --no-cache ${BUILD_DEPS} && python -m venv "/opt/venv"
11
12RUN curl --location --silent --output "/src/dshell/data/oui.txt" "${OUI_SRC}"
13
14ENV PATH="/opt/venv/bin:${PATH}"
15
16RUN pip install --upgrade pip wheel && pip install --use-feature=2020-resolver .
17
18FROM python:3-alpine
19
20ARG RUN_DEPS="bash libstdc++ libpcap"
21
22COPY --from=builder /opt/venv /opt/venv
23
24RUN apk add --no-cache ${RUN_DEPS}
25
26VOLUME ["/data"]
27
28WORKDIR "/data"
29
30ENV PATH="/opt/venv/bin:${PATH}"
31
32ENTRYPOINT ["dshell"]
33