ARG BUILD_FROM FROM ${BUILD_FROM} # First install requirements to leverage caching when requirements don't change COPY requirements.txt requirements_optional.txt docker/platformio_install_deps.py platformio.ini / RUN \ pip3 install --no-cache-dir -r /requirements.txt -r /requirements_optional.txt \ && /platformio_install_deps.py /platformio.ini # Copy root filesystem COPY docker/rootfs/ / # Then copy esphome and install COPY . /opt/esphome/ RUN pip3 install --no-cache-dir -e /opt/esphome # Build arguments ARG BUILD_VERSION=dev # Labels LABEL \ io.hass.name="ESPHome" \ io.hass.description="Manage and program ESP8266/ESP32 microcontrollers through YAML configuration files" \ io.hass.type="addon" \ io.hass.version=${BUILD_VERSION}