mirror of
https://github.com/mkuf/prind.git
synced 2026-05-06 07:17:23 +02:00
klipper works in docker
This commit is contained in:
21
docker-compose.yaml
Normal file
21
docker-compose.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.4'
|
||||
|
||||
services:
|
||||
klipper:
|
||||
image: klipper:latest
|
||||
build:
|
||||
args:
|
||||
VERSION: 319c36df52eb016667d13ab006cae3752d0212e7
|
||||
dockerfile: klipper.Dockerfile
|
||||
context: .
|
||||
target: klippy
|
||||
container_name: klipper
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./config:/opt/cfg
|
||||
- run:/opt/run
|
||||
devices:
|
||||
- /dev/ttymxc3:/dev/ttymxc3
|
||||
|
||||
volumes:
|
||||
run:
|
||||
39
klipper.Dockerfile
Normal file
39
klipper.Dockerfile
Normal file
@@ -0,0 +1,39 @@
|
||||
FROM python:2 as base
|
||||
|
||||
ARG REPO=https://github.com/Klipper3d/klipper
|
||||
ARG VERSION=master
|
||||
|
||||
WORKDIR /opt
|
||||
|
||||
## Download Klipper
|
||||
RUN git clone ${REPO} klipper \
|
||||
&& cd klipper \
|
||||
&& git checkout ${VERSION}
|
||||
|
||||
## Install klipper requirements
|
||||
RUN pip install -r klipper/scripts/klippy-requirements.txt
|
||||
|
||||
## Compile Python code
|
||||
RUN python klipper/klippy/chelper/__init__.py
|
||||
|
||||
## Create directories
|
||||
RUN mkdir run cfg
|
||||
|
||||
## User & Permissions
|
||||
RUN groupadd klipper --gid 1000 \
|
||||
&& useradd klipper --uid 1000 --gid klipper \
|
||||
&& usermod klipper --append --groups dialout \
|
||||
&& chown -R klipper:klipper klipper run cfg
|
||||
|
||||
## --- Targets ---
|
||||
|
||||
## Start Klippy
|
||||
FROM base as klippy
|
||||
USER klipper
|
||||
ENTRYPOINT ["python"]
|
||||
CMD ["klipper/klippy/klippy.py", "-I", "run/klipper.tty", "-a", "run/klipper.sock", "cfg/printer.cfg"]
|
||||
|
||||
## For building MCU Code
|
||||
FROM base as build
|
||||
RUN apt update \
|
||||
&& apt install build-essential libncurses-dev libnewlib-arm-none-eabi gcc-arm-none-eabi binutils-arm-none-eabi
|
||||
Reference in New Issue
Block a user