[QUESTION] ARM / ARM64 Version comming?
the-hotmann opened this issue · comments
Yes it is possible and providing a multi-arch image is in my plan.
I had a discussion with the developper of MakeMKV and hopefully the next version of MakeMKV will greatly simplify the multi-arch support. So because of that I cannot provide an exact timeline about the availability of the image.
Thanks for your efforts and work on this! :)
The latest Docker image is now multi-arch :)
Thanks, just tested. Sadly I get a black screen. Just the little debug-box with the settings appears.
Nothing meaningful in the logs.
Ah lol .. after about 20 min it just appeared. Did not do anything. A workaround is:
- change to
Local Scaling
- change browser window size
- change to
Remote Resizing
Actually noticed. That I first need to resize. Otherwise no change
is detected and therefore no image is sent. Would be nice, to at the very begin have a full picture. Just happens on the ARM64 version
What I also noticed:
- the env
MAKEMKV_KEY
does not work properly. I want to just paste my key as this variable. I am aware, that default is Beta and unset is an option, but I littleraly want to paste the key-string in there. Otherwise the env should be calledMAKEMKV_KEY_TYPE
notMAKEMKV_KEY
. Hope that makes sense.
Should I open a new issue here for this, or is it ok so?
Just the little debug-box with the settings appears.
Not sure what you mean by this... do you have a screenshot ?
the env MAKEMKV_KEY does not work properly. I want to just paste my key as this variable. I am aware, that default is Beta and unset is an option, but I littleraly want to paste the key-string in there. Otherwise the env should be called MAKEMKV_KEY_TYPE not MAKEMKV_KEY. Hope that makes sense.
Yes, you should be able to put your license key into the variable. What doesn't work exactly ?
Not sure what you mean by this... do you have a screenshot ?
Of course! Everytime I restart the container this happens and needs minutes to show something.
Here you go:
After the workaround and some waiting, the screen will reappear.
What doesn't work exactly ?
I deleted the whole config folder to start clean with the ARM64 version. And put the key string as the env MAKEMKV_KEY
.
It did not work. I will had to paste the key again in the app under Help
==> Register
. After saving and restarting the container the license was set.
After the workaround and some waiting, the screen will reappear.
Can you try to add --ulimit nofile=65536:65536
to your docker run
command to see if it help?
I deleted the whole config folder to start clean with the ARM64 version. And put the key string as the env MAKEMKV_KEY.
It did not work. I will had to paste the key again in the app under Help ==> Register. After saving and restarting the container the license was set.
Before registering the key with MakeMKV, can you verify if the key was put in /config/settings.conf
? If yes, then can you compare the file after registering in MakeMKV ?
Also, could you provide the output of:
docker exec <container name> cat /proc/self/limits
Can you try to add
--ulimit nofile=65536:65536
to yourdocker run
command to see if it help?
I am using docker-compose
, so I added:
ulimits:
nofile:
soft: 65536
hard: 65536
so the template would look like this:
version: '3'
services:
makemkv:
image: jlesage/makemkv
ports:
- "5800:5800"
volumes:
- "/docker/appdata/makemkv:/config:rw"
- "/home/user:/storage:ro"
- "/home/user/MakeMKV/output:/output:rw"
devices:
- "/dev/sr0:/dev/sr0"
- "/dev/sg2:/dev/sg2"
ulimits:
nofile:
soft: 65536
hard: 65536
to the config of this service.
Thanks! This actually helped! The screen is immediately showing up now.
can you verify if the key was put in
/config/settings.conf
?
You're right. It is in there and works now. I guess I know why this happened.
I think MakeMKV searches in /config/.MakeMKV/settings.conf
and not in /config/settings.conf
. But /config/.MakeMKV
is a link to /config
. And since I backuped the config folder and restored it, both folders existed as links has not been backuped as links, but as the same folder again, so I had seperate filestates. After this I set it up fresh.
This actually is bad-practice as it (/config/.MakeMKV
) could point anywhere else on the host and therefore allow access to folders you don't want it to point to. But I guess that problem must be addressed by the MakeMKV Dev?
Also, could you provide the output of:
docker exec <container name> cat /proc/self/limits
Here you go:
BEFORE:
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size unlimited unlimited bytes
Max resident set unlimited unlimited bytes
Max processes unlimited unlimited processes
Max open files 1073741816 1073741816 files
Max locked memory 8388608 8388608 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 30126 30126 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
AFTER:
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size unlimited unlimited bytes
Max resident set unlimited unlimited bytes
Max processes unlimited unlimited processes
Max open files 65536 65536 files
Max locked memory 8388608 8388608 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 30126 30126 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
So actually things are now more limited. But it works just fine now. It even is reproducable. When I turn off the ulimit
the screen again takes long to appear.
I think MakeMKV searches in /config/.MakeMKV/settings.conf and not in /config/settings.conf. But /config/.MakeMKV is a link to /config. And since I backupped the config folder and restored it, both folders existed as links has not been backuped as links, but as the same folder again, so I had seperate filestates. After this I set it up fresh.
This link is created by the container, because MakeMKV is always looking to the .MakeMKV
folder. One thing that could be done is to re-create the link every time the container is started (thus removing anything already at /config/.MakeMKV
).
This actually is bad-practice as it (/config/.MakeMKV) could point anywhere else on the host and therefore allow access to folders you don't want it to point to. But I guess that problem must be addressed by the MakeMKV Dev?
I'm not sure what you mean, but since this is inside the container, it cannot points to anywhere on the host.
So actually things are now more limited. But it works just fine now. It even is reproducable. When I turn off the ulimit the screen again takes long to appear.
Thanks for the outputs. This is a known Docker bug. I can check if this limit can be set by the container itself.
This link is created by the container, because MakeMKV is always looking to the
.MakeMKV
folder. One thing that could be done is to re-create the link every time the container is started (thus removing anything already at/config/.MakeMKV
).
I guess that would be a good workaround. If /config/.MakeMKV
is a folder - delete it and create a link.
I'm not sure what you mean, but since this is inside the container, it cannot points to anywhere on the host.
My bad, I had a wrong tought as I could also see the link on the host (obviously) but when changing directory to .MakeMKV
it did not work, as the folder /config
does not exist on my host.
Thanks for the outputs. This is a known Docker bug. I can check if this limit can be set by the container itself.
Thank you very much! :)
Can you try the latest image and let me know if it is working fine without setting ulimits
in your compose file?
Thanks, I will try and report back.
Indeed, I now don't need any ulimits
anymore. Seems like you fixed it! 🙌