2023-01-24 19:58:55 +00:00
|
|
|
ARG BASE_IMAGE=python:3.11-alpine
|
|
|
|
FROM $BASE_IMAGE
|
2022-12-28 21:28:54 +00:00
|
|
|
|
|
|
|
# https://docs.docker.com/engine/reference/builder/
|
|
|
|
|
|
|
|
# For debugging
|
|
|
|
# docker run --rm -v "$(pwd)":/files:ro extract_otp_secrets_only_txt
|
|
|
|
# docker build . -t extract_otp_secrets_only_txt -f Dockerfile_only_txt --pull --build-arg RUN_TESTS=false
|
2023-01-24 19:58:55 +00:00
|
|
|
# docker run --entrypoint /bin/ash -it --rm -v "$(pwd)":/files:ro extract_otp_secrets_only_txt -l
|
|
|
|
# docker run --entrypoint /extract/run_pytest.sh --rm -v "$(pwd)":/files:ro extract_otp_secrets_only_txt extract_otp_secrets_test.py -k "not qreader" --relaxed -vvv -s
|
|
|
|
|
|
|
|
# https://github.com/pypa/manylinux/blob/main/docker/Dockerfile
|
2022-12-28 21:28:54 +00:00
|
|
|
|
|
|
|
WORKDIR /extract
|
|
|
|
|
2023-01-24 19:58:55 +00:00
|
|
|
COPY requirements*.txt src/ run_pytest.sh pytest.ini tests/ example_*.txt example_*.png example_*.csv example*.json docker/.alias ./
|
2022-12-28 21:28:54 +00:00
|
|
|
|
|
|
|
ARG RUN_TESTS=true
|
|
|
|
|
|
|
|
RUN apk add --no-cache \
|
|
|
|
jpeg \
|
|
|
|
zlib \
|
|
|
|
&& echo "Arch: $(apk --print-arch)" \
|
|
|
|
&& if [[ "$(apk --print-arch)" == "aarch64" ]]; then apk add --no-cache --virtual .build-deps \
|
|
|
|
gcc \
|
|
|
|
jpeg-dev \
|
|
|
|
libc-dev \
|
|
|
|
py3-setuptools \
|
|
|
|
python3-dev \
|
|
|
|
zlib-dev \
|
|
|
|
; fi \
|
|
|
|
&& pip install --no-cache-dir -U \
|
|
|
|
colorama \
|
|
|
|
Pillow \
|
|
|
|
protobuf \
|
|
|
|
qrcode \
|
|
|
|
&& if [[ "$(apk --print-arch)" == "aarch64" ]]; then apk del .build-deps; fi \
|
2023-01-24 19:58:55 +00:00
|
|
|
&& if [[ "$RUN_TESTS" == "true" ]]; then /extract/run_pytest.sh extract_otp_secrets_test.py -k "not qreader" --relaxed; else echo "Not running tests..."; fi \
|
|
|
|
&& echo 'test -s /extract/.alias && . /extract/.alias || true' >> ~/.profile
|
2022-12-28 21:28:54 +00:00
|
|
|
|
|
|
|
WORKDIR /files
|
|
|
|
|
2023-01-24 19:58:55 +00:00
|
|
|
ENTRYPOINT ["python", "/extract/extract_otp_secrets.py"]
|
2022-12-28 21:28:54 +00:00
|
|
|
|
|
|
|
LABEL org.opencontainers.image.source https://github.com/scito/extract_otp_secrets
|
|
|
|
LABEL org.opencontainers.image.license GPL-3.0+
|
2023-01-24 19:58:55 +00:00
|
|
|
LABEL maintainer="Scito https://scito.ch, https://github.com/scito"
|