A lightweight, minimal MKVToolNix Docker container 🎞️
10K+
A lightweight, minimal MKVToolNix Docker container
Add the following fuction definitions to ~/.profile (create the file if it doesn't exist):
function mkvextract() {
docker run -it --rm -w "$(pwd)" \
-v "/path/to/data:/path/to/data" \
thecatlady/mkvtoolnix mkvextract "$@"
}
function mkvinfo() {
docker run -it --rm -w "$(pwd)" \
-v "/path/to/data:/path/to/data" \
thecatlady/mkvtoolnix mkvinfo "$@"
}
function mkvmerge() {
docker run -it --rm -w "$(pwd)" \
-v "/path/to/data:/path/to/data" \
thecatlady/mkvtoolnix mkvmerge "$@"
}
function mkvpropedit() {
docker run -it --rm -w "$(pwd)" \
-v "/path/to/data:/path/to/data" \
thecatlady/mkvtoolnix mkvpropedit "$@"
}
Then, run the following command to refresh your Bash profile settings:
source ~/.profile
You will then be able to issue mkvextract, mkvinfo, mkvmerge, and mkvpropedit commands as if MKVToolNix were installed natively!
Do note that only the directories defined in the volume mounts will be accessible to the container/command. You may add additional volume mounts to suit your configuration.
For example, I defined my mkvmerge() function as follows, since all of my video files are located in /share/Downloads, /share/Movies, and /share/TV Shows on my host:
function mkvmerge() {
docker run -it --rm -w "$(pwd)" \
-v "/share/Downloads:/share/Downloads" \
-v "/share/Movies:/share/Movies" \
-v "/share/TV Shows:/share/TV Shows" \
thecatlady/mkvtoolnix mkvmerge "$@"
}
If you wish to change this behavior, you can modify the function definitions above to better suit your needs.
To update when a new image is published, run the commands below:
docker pull thecatlady/mkvtoolnix
docker image prune
Show your support by starring this project! 🌟
You can also support me by becoming a GitHub sponsor or making a one-time donation 💖
Content type
Image
Digest
Size
8.4 MB
Last updated
over 5 years ago
docker pull thecatlady/mkvtoolnix