m4b-tool: Out of memory exception with Docker image

I have build the latest docker image and it is working mostly well. I have a few books that it is running out of memory on when processing.

My command is:

docker run -it --rm -u $(id -u):$(id -g) -v $(pwd):/mnt m4b-tool merge AUDIOBOOK_DIRECTORY --jobs=4 --audio-bitrate=64k --mark-tracks --audio-format=mp3 --audio-codec=libmp3lame --output-file='book.mp3'

The error I receive is:

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 68606456 bytes) in phar:///usr/local/bin/m4b-tool/src/library/M4bTool/Command/AbstractCommand.php on line 308
an error occured, that has not been caught:
Array
(
    [type] => 1
    [message] => Allowed memory size of 134217728 bytes exhausted (tried to allocate 68606456 bytes)
    [file] => phar:///usr/local/bin/m4b-tool/src/library/M4bTool/Command/AbstractCommand.php
    [line] => 308
)

I have plenty of memory to throw at this - but I’m not sure if there is a way for me to do so.

I am on macOS Catalina, using Docker for Mac. I have increased the RAM for the Docker for Mac VM to 4GB and received the same error, so I assume this is from how PHP in the docker image is configured.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Reactions: 1
  • Comments: 17 (9 by maintainers)

Most upvoted comments

Ok, got the files but till now i had no luck with reproducing the issue (i tried really hard!). I’ll prepare a “debug”-Version of m4b-tool for your system, so that we might track this down on the system where the problem is definetely reproducable… I’ll get back to you as soon as I got something new.