FROM python:3.11-alpine AS base FROM base AS build RUN apk update RUN apk add bluez-dev build-base git ADD requirements.txt . RUN python -m pip install --user -r requirements.txt FROM base AS app RUN apk update RUN apk add bluez bluez-dev openrc dbus-openrc sudo libcap-setcap COPY sudoers /etc/sudoers.d/this RUN adduser -h /app -D appuser WORKDIR /app USER appuser COPY --from=build --chown=appuser:appuser /root/.local /app/.local COPY get_data.py /app COPY bluetooth_utils /app/bluetooth_utils COPY entrypoint.sh /app FROM app ENV PYTHONDONTWRITEBYTECODE 1 ENV PYTHONUNBUFFERED 1 ENTRYPOINT ["/app/entrypoint.sh"]