ha-3dprinter-addons/3dprinter-octoprint/Dockerfile

53 lines
1.5 KiB
Docker

ARG BUILD_FROM="ghcr.io/home-assistant/amd64-base-debian:trixie"
FROM ${BUILD_FROM}
ARG OCTOPRINT_VERSION="1.11.4"
# Setup path for persistent install of Python packages
ENV PYTHONPATH=/data/python/octoprint
ENV PYTHONUSERBASE=/data/python/octoprint
ENV PATH=/data/python/octoprint/bin:${PATH}
ENV OCTOPRINT_VERSION=${OCTOPRINT_VERSION}
# Preparation for install of Caddy
RUN apt update \
&& apt install -y \
--no-install-recommends \
debian-keyring \
debian-archive-keyring \
apt-transport-https \
gpg \
&& curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg \
&& curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
# Install dependencies
RUN apt update \
&& apt install -y \
--no-install-recommends \
python3-venv \
python3-dev \
python3-wheel \
build-essential \
caddy \
libffi-dev \
# Extras.
ffmpeg \
avrdude \
dfu-util \
dfu-programmer \
stm32flash \
# Development/testing
vim \
&& \
apt clean
# Copy root filesystem
COPY rootfs /
RUN chmod +x /etc/cont-init.d/*.sh
RUN chmod +x /etc/services.d/*/*
RUN chmod +x /scripts/*.sh
# Test install, verify that install will be possible.
RUN sed 's/#!/# #!/' /etc/cont-init.d/octoprint.sh > /tmp/octoprint.sh
RUN bash /tmp/octoprint.sh \
&& rm -rf /data/* /tmp/*