Hi there,
I am running octoprint in a docker container. Octoprint itself works but I am unable to get gphoto2 to perform "capture-image-and-download" successfully.
Observed result
gphoto2 --list-ports : lists ports as expected
gphoto2 --summary : Reports everything about the DSLR camera attached (Nikon D3100)
gphoto2 --capture-image-and-download : triggers image capture on the camera and downloads the image to the docker container. But it also reports " Error PTP Operation Not Supported"
Desired result
gphoto2 --capture-image-and-download : triggers image capture on the camera and downloads the image to docker. No error reported.
I tested this by re-creating a docker container with debian:11 (ie. instead of the octoprint docker image) and I am able to achieve the desired result, ie. image capture and download with no error reported.
Any advice is highly appreciated.
Kind regards,
Dockerfile (octoprint)
FROM octoprint/octoprint:latest
ENV UDEV=1
# install the image dependencies
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install build-essential -y
RUN apt-get install locales -y && dpkg-reconfigure locales
RUN apt-get install vim -y
RUN apt-get install libtool -y
RUN apt-get install libusb-1.0-0-dev -y
RUN apt-get install libexif-dev -y
RUN apt-get install libusb-dev -y
RUN apt-get install usbutils -y
RUN apt-get install libpopt-dev -y
RUN apt-get install libgphoto2-6 -y
RUN apt-get install gphoto2 -y
docker-compose file (octoprint)
version: '2.2'
services:
octoprint:
build:
context: .
dockerfile: Dockerfile
privileged: true
restart: unless-stopped
ports:
- 80:80
devices:
# use `python -m serial.tools.miniterm` to see what the name is of the printer, this requires pyserial
- /dev/ttyACM0:/dev/ttyACM0
- /dev/bus/usb:/dev/bus/usb
#- /dev/video0:/dev/video0
volumes:
- octoprint:/octoprint
- /usr/bin/vcgencmd:/usr/bin/vcgencmd
- /usr/lib/arm-linux-gnueabihf/libvcos.so.0:/usr/lib/arm-linux-gnueabihf/libvcos.so.0
- /usr/lib/arm-linux-gnueabihf/libvchiq_arm.so.0:/usr/lib/arm-linux-gnueabihf/libvchiq_arm.so.0
# uncomment the lines below to ensure camera streaming is enabled when
# you add a video device
environment:
- ENABLE_MJPG_STREAMER=false
#- MJPG_STREAMER_INPUT=-n -r 1920x1080 -f 30
#- CAMERA_DEV=/dev/video0
#- TZ=Europe/Berlin
volumes:
octoprint: