FROM alpine:3.20 RUN rm /usr/lib/python3.12/EXTERNALLY-MANAGED # dependencies needed for compiling c extensions # also busybox-extras for telnet for easier use of backdoor RUN apk --update add py3-pip g++ python3-dev libffi-dev musl-dev file make busybox-extras # Try to get wheels working RUN pip install --upgrade pip wheel # Install gevent so that we don't need to re-install it when common changes RUN pip install gevent==22.10.2 # Install common lib first as it changes less COPY common /tmp/common RUN pip install /tmp/common && rm -r /tmp/common # Install actual application COPY downloader /tmp/downloader RUN pip install /tmp/downloader && rm -r /tmp/downloader # Install yt-dlp last as it changes often RUN pip install yt-dlp LABEL org.opencontainers.image.source https://github.com/dbvideostriketeam/wubloader ENTRYPOINT ["python3", "-m", "downloader", "--base-dir", "/mnt"]