Comments (15)
Hi there,
The provided Log implies that moonraker can not create its logfile.
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
Did you modify the docker-compose.yaml in regards to the log volume?
Please share your docker-compose.yaml
and your moonraker.cfg
file.
-Markus
from prind.
Only modified what is on the guide.
files on #11 (comment)
from prind.
Please upload the configs as files to your reply.
Pasting them into the reply field makes them unreadable.
from prind.
Please upload the configs as files to your reply. Pasting them into the reply field makes them unreadable.
Changed their extensions as otherwise it wouldn't let me upload them.
moonraker.txt
docker-compose.txt
d
from prind.
Thanks, your Configs seem to be allright.
Stop your stack, remove the log volume and partially start your stack again.
The last command attaches to moonraker so you can read its logs.
docker compose --profile <profilename> down
docker volume rm prind_log
docker compose --profile <profilename> up -d klipper
docker compose --profile <profilename> up moonraker
from prind.
Identical result:
pi@raspberrypi:
/Klipper/prind$ docker volume rm prind_log/Klipper/prind$ docker compose --profile fluidd up -d klipper
prind_log
pi@raspberrypi:
[+] Running 3/3
⠿ Network prind_default Created 0.4s
⠿ Volume "prind_log" Created 0.0s
⠿ Container klipper Started 1.4s
pi@raspberrypi:~/Klipper/prind$ docker compose --profile fluidd up moonraker
[+] Running 3/3
⠿ Container traefik Created 0.2s
⠿ Container klipper Running 0.0s
⠿ Container moonraker Created 0.2s
Attaching to moonraker
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
moonraker exited with code 1
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
moonraker exited with code 1
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
moonraker exited with code 1
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
moonraker exited with code 1
^CGracefully stopping... (press Ctrl+C again to force)
[+] Running 1/1
⠿ Container moonraker Stopped
from prind.
It does not seem to be the logging volume that is causing the issues.
The only other possible cause I can think of, would be that the config directory is not writable by the user that is used within the container.
Please execute the following commands from within your prind directory.
ls -an .
ls -an config/
from prind.
pi@raspberrypi:
/Klipper/prind$ ls -an ./Klipper/prind$ ls -an config/
total 84
drwxr-xr-x 7 1000 1000 4096 feb 25 22:35 .
drwxr-xr-x 4 1000 1000 4096 feb 25 22:15 ..
drwxr-xr-x 2 1000 1000 4096 feb 23 22:09 config
drwxr-xr-x 7 1000 1000 4096 feb 23 22:09 docker
-rw-r--r-- 1 1000 1000 4223 feb 23 22:12 docker-compose.yaml
drwxr-xr-x 8 1000 1000 4096 feb 23 22:09 .git
drwxr-xr-x 3 1000 1000 4096 feb 23 22:09 .github
-rw-r--r-- 1 1000 1000 25 feb 23 22:09 .gitignore
-rw-r--r-- 1 1000 1000 35149 feb 23 22:09 LICENSE
-rw-r--r-- 1 1000 1000 7492 feb 23 22:09 README.md
drwxr-xr-x 2 1000 1000 4096 feb 23 22:09 scripts
pi@raspberrypi:
total 20
drwxr-xr-x 2 1000 1000 4096 feb 23 22:09 .
drwxr-xr-x 7 1000 1000 4096 feb 25 22:35 ..
-rw-r--r-- 1 1000 1000 1256 feb 23 22:09 build.config
-rw-r--r-- 1 1000 1000 271 feb 23 22:09 moonraker.cfg
-rw-r--r-- 1 1000 1000 4035 feb 25 23:07 printer.cfg
I have noticed I cannot cd to the log volume location:
pi@raspberrypi:~/Klipper/prind$ docker volume inspect prind_log
[
{
"CreatedAt": "2022-02-25T23:22:17+01:00",
"Driver": "local",
"Labels": {
"com.docker.compose.project": "prind",
"com.docker.compose.version": "2.2.3",
"com.docker.compose.volume": "log"
},
"Mountpoint": "/var/lib/docker/volumes/prind_log/_data",
"Name": "prind_log",
"Options": {
"device": "tmpfs",
"type": "tmpfs"
},
"Scope": "local"
}
]
pi@raspberrypi:~/Klipper/prind$ cd /var/lib/docker/volumes/prind_log/_data
-bash: cd: /var/lib/docker/volumes/prind_log/_data: Permiso denegado
Which means permission denied. Is this normal under debian raspberry pi?
from prind.
The permissions seem to be ok. While developing this stack, I ran into an issue where I had to chown the config directory to uid/gid 1000, otherwise moonraker would not start.
From your output this already seems to be the case.
It is normal that the user pi
cannot access these directories, as they belong to root
Could you try starting the stack as user root
instead of pi
?
from prind.
Did start it as root, had to move compose to /usr/local/lib/docker/cli-plugins, but the outcome is the same:
root@raspberrypi:/home/pi/Klipper/prind# docker compose --profile fluidd up
[+] Running 5/5
⠿ Container traefik Running 0.0s
⠿ Container ustreamer Created 0.3s
⠿ Container klipper Running 0.0s
⠿ Container moonraker Created 0.0s
⠿ Container fluidd Created 0.3s
Attaching to fluidd, klipper, moonraker, traefik, ustreamer
ustreamer | -- INFO [4335.168 main] -- Using internal blank placeholder
ustreamer | -- INFO [4335.169 main] -- Listening HTTP on [0.0.0.0]:8080
ustreamer | -- INFO [4335.169 stream] -- Using V4L2 device: /dev/webcam
ustreamer | -- INFO [4335.169 stream] -- Using desired FPS: 30
ustreamer | -- INFO [4335.169 http] -- Starting HTTP eventloop ...
ustreamer | ================================================================================
ustreamer | -- INFO [4335.254 stream] -- Device fd=8 opened
ustreamer | -- INFO [4335.254 stream] -- Using input channel: 0
ustreamer | -- ERROR [4335.255 stream] -- Requested resolution=1280x960 is unavailable
ustreamer | -- INFO [4335.256 stream] -- Using resolution: 1280x720
ustreamer | -- INFO [4335.256 stream] -- Using pixelformat: MJPEG
ustreamer | -- INFO [4335.256 stream] -- Using HW FPS: 30
ustreamer | -- ERROR [4335.256 stream] -- Device does not support setting of HW encoding quality parameters
ustreamer | -- INFO [4335.256 stream] -- Using IO method: MMAP
ustreamer | -- INFO [4335.268 stream] -- Requested 5 device buffers, got 5
ustreamer | -- INFO [4335.494 stream] -- Capturing started
ustreamer | -- INFO [4335.495 stream] -- Switching to HW encoder: the input is (M)JPEG ...
ustreamer | -- INFO [4335.495 stream] -- Using JPEG quality: encoder default
ustreamer | -- INFO [4335.495 stream] -- Creating pool JPEG with 1 workers ...
ustreamer | -- INFO [4335.495 stream] -- Capturing ...
moonraker | Traceback (most recent call last):
moonraker | File "/opt/moonraker/moonraker/moonraker.py", line 16, in
moonraker | import logging
moonraker | File "/usr/local/lib/python3.10/logging/init.py", line 57, in
moonraker | _startTime = time.time()
moonraker | PermissionError: [Errno 1] Operation not permitted
moonraker exited with code 1
from prind.
We'll have to look inside the Container to check for permissions.
As the moonraker container is restarting, we'll use klipper instead.
docker exec -it klipper ls -na /opt
from prind.
pi@raspberrypi:~/Klipper/prind$ docker exec -it klipper ls -na /opt
total 24
drwxr-xr-x 1 0 0 4096 Feb 25 22:22 .
drwxr-xr-x 1 0 0 4096 Feb 25 22:22 ..
drwxr-xr-x 2 1000 1000 4096 Feb 23 21:09 cfg
drwxr-xr-x 2 1000 1000 4096 Feb 25 02:55 gcode
drwxr-xr-x 1 1000 1000 4096 Feb 23 02:34 klipper
drwxrwxrwt 2 0 0 60 Feb 25 23:41 log
drwxrwxrwt 2 0 0 80 Feb 25 23:41 run
drwxr-xr-x 1 1000 1000 4096 Feb 23 02:34 venv
from prind.
Hm, did a full upgrade of my install by switching to bullseye repo (was on buster) and doing apt upgrade. Stack starts ok now and im looking at the fluidd web!
Think might be related with this: docker-library/python#674
from prind.
I just pushed a change for Klipper and Moonraker images and rebuilt the most recent images. (8055c18)
Stop your stack, prune all images and explicitly set die Tags for klipper and moonraker in docker-compose.yaml
mkuf/klipper:7c964e5
mkuf/moonraker:ed20223
docker compose --profile fluidd down
docker image prune -af
docker compose --profile fluidd up -d klipper
docker compose --profile fluidd up moonraker
from prind.
Think might be related with this: docker-library/python#674
Great find.
Timing-wise we now can't quite pin down wich change fixed this issue.
Imho it is more likely that your change fixed the issue, as logs were working before on other installs.
from prind.
Related Issues (20)
- How do I run this without a webcam? HOT 2
- Fluidd starts as mainsail and klipper can't connect HOT 2
- No webcam in OrcaSlicer HOT 7
- Klippain Support HOT 2
- [Feature] Add support for monitoring the containers HOT 1
- Latest version-tagged moonraker (`v0.8.0`) is out of date HOT 6
- TIMELAPSE not working due to local webcam url not being accessable inside moonraker container (probably) HOT 2
- [timelapse.py:getWebcamConfig()] - WARNING: no camera configured, using the fallback config HOT 2
- ustreamer not working? HOT 6
- Dependency Dashboard
- moonraker-telegram-bot config in docker-compose.yaml needs update HOT 9
- Missing GIT for Update Manager HOT 6
- Action Required: Fix Renovate Configuration
- Unable to Connect mainsail to printer ( Serial name/ Serial permissions?) HOT 1
- Klipper container missing dependency? HOT 9
- Moonraker crash after update HOT 2
- Guide Assistance HOT 1
- Fatal Python error: PyGILState_Release: auto-releasing thread-state, but no thread-state for this thread HOT 5
- [Documentation enhance] Webcam setup HOT 1
- Slow webcam HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prind.