moonraker: allow host control via systemd

This commit is contained in:
Markus Küffner
2022-03-23 23:41:51 +01:00
parent aa85c2bacf
commit b6bdc8d08f
3 changed files with 16 additions and 7 deletions

View File

@@ -7,7 +7,7 @@ klippy_uds_address: /opt/run/klipper.sock
config_path: /opt/cfg config_path: /opt/cfg
[machine] [machine]
provider: none provider: systemd_cli
[database] [database]
database_path: /opt/db database_path: /opt/db

View File

@@ -51,6 +51,7 @@ services:
image: mkuf/moonraker:nightly image: mkuf/moonraker:nightly
container_name: moonraker container_name: moonraker
restart: unless-stopped restart: unless-stopped
pid: host
logging: logging:
driver: none driver: none
command: command:
@@ -64,11 +65,13 @@ services:
klipper: klipper:
condition: service_started condition: service_started
volumes: volumes:
- ./config:/opt/cfg - /run/dbus:/run/dbus
- /run/systemd:/run/systemd
- run:/opt/run - run:/opt/run
- gcode:/opt/gcode - gcode:/opt/gcode
- log:/opt/log - log:/opt/log
- moonraker-db:/opt/db - moonraker-db:/opt/db
- ./config:/opt/cfg
profiles: profiles:
- fluidd - fluidd
- mainsail - mainsail

View File

@@ -21,12 +21,14 @@ RUN apt update \
libopenjp2-7 \ libopenjp2-7 \
python3-libgpiod \ python3-libgpiod \
curl \ curl \
libcurl4-openssl-dev \ libcurl4 \
libssl-dev \ libssl1.1 \
liblmdb0 \ liblmdb0 \
libsodium-dev \ libsodium23 \
zlib1g-dev \ zlib1g \
iproute2 \ iproute2 \
systemd \
sudo \
&& apt clean && apt clean
WORKDIR /opt WORKDIR /opt
@@ -39,6 +41,10 @@ RUN groupadd moonraker --gid 1000 \
&& usermod moonraker --append --groups dialout \ && usermod moonraker --append --groups dialout \
&& chown -R moonraker:moonraker /opt/* && chown -R moonraker:moonraker /opt/*
RUN ln -s /bin/systemctl /sbin/shutdown \
&& ln -s /bin/systemctl /sbin/reboot \
&& echo -n "moonraker ALL = NOPASSWD: /bin/systemctl, /sbin/shutdown, /sbin/reboot" > /etc/sudoers.d/moonraker
## Start Moonraker ## Start Moonraker
USER moonraker USER moonraker
EXPOSE 7125 EXPOSE 7125