# Docker-compose file for Octoprint Containers version: '3' volumes: octoprint_vol: {} octoklipper_vol: {} #klipper_vol: {} services: # Octoprint itself octoprint: build: context: octoprint args: OP_MACHINE_NAME: release: latest image: cyteen/octoprint-octoprint restart: always environment: WITH_KLIPPER: "yes" KLIPPER_HOME: "/octo_printer" #WITH_SAFEMODE: "yes" #OCTO_PRINTER: "/octo_printer" OCTO_PRINTER: "/tmp" PRINTER_CFG: "klipper-geeetech-a10-bltouch.cfg" SOCAT_TYPE: "TCP" SOCAT_HOST: "klipper" SOCAT_PORT: "9999" #SOCAT DEBUG: " -d -d -d -t 60 -T 60 " volumes: - octoprint_vol:/opt/octoprint/data - octoklipper_vol:/octo_printer - /home/default/octoprint-containers/octoprint/printerProfiles:/opt/octoprint/data/octoprint/printerProfiles - /home/default/octoprint-containers/octoprint/bin:/opt/octoprint/bin # - tmp:/tmp # Uncomment next line for "Plain Docker" setup # - /run/dbus:/host/run/dbus # Webcam stream webcam: build: context: webcam args: OP_MACHINE_NAME: image: amedee/octoprint-webcam restart: always privileged: true devices: - "/dev/video0:/dev/video0" - "/dev/video1:/dev/video1" - "/dev/video2:/dev/video2" environment: WEBCAM_INPUT: "${WEBCAM_INPUT:-input_raspicam.so -fps 5}" WEBCAM_START: "${WEBCAM_START:-true}" # http/https proxy haproxy: build: context: haproxy args: OP_MACHINE_NAME: image: amedee/octoprint-haproxy restart: always depends_on: - octoprint - webcam volumes: - octoprint_vol:/opt/haproxy/data ports: - "80:80" - "443:443" # klipper 3d-Printer firmware klipper: build: context: klipper args: KLIPPER_BRANCH: "work-python3-20200612" KLIPPER_HOME: "/octo_printer" PRINTER_CFG: "printer.cfg" #OCTO_PRINTER: "/octo_printer" OCTO_PRINTER: "/tmp" image: cyteen/octoprint-klipper restart: always devices: - "/dev/ttyUSB0:/hostdevices/ttyUSB0" environment: KLIPPER_HOME: "/octo_printer" #PRINTER_CFG: "printer.cfg" PYTHONDIR: "/home/klippy/klippy-env" SRCDIR: "/home/klippy/klipper" PRINTER_CFG: "klipper-geeetech-a10-bltouch.cfg" #PRINTER_CFG: "generic-bigtreetech-skr-v1.3.cfg" OCTO_PRINTER: "/tmp" #OCTO_PRINTER: "/octo_printer" SER2NET_CONFIG: "9999:raw:0:/tmp/printer:115200 8DATABITS NONE 1STOPBIT -XONXOFF LOCAL -RTSCTS" volumes: #- klipper_vol:/${HOME}/.config #- ./klipper/klipper_cfg:/home/klippy/.config/klipper - /home/default/octoprint-containers/klipper/klipper_cfg:/home/klippy/.config/klipper #- ./klipper_cfg:/home/klippy/.config/klipper - octoklipper_vol:/octo_printer #- octoprint_vol:/home/klippy/.config/klipper #- octoprint_vol:/tmp #command: ["/home/klippy/klippy-env/bin/python3", "/home/klippy/klipper/klippy/klippy.py", "${OCTO_PRINTER}/${PRINTER_CFG}", "--logfile", "${OCTO_PRINTER}/klippy.log", "--input-tty", "${OCTO_PRINTER}/printer" ]