MakeMKV
Docker app from Djoss' Repository
Overview
MakeMKV is your one-click solution to convert video that you own into free and patents-unencumbered format that can be played everywhere. MakeMKV is a format converter, otherwise called "transcoder". It converts the video clips from proprietary (and usually encrypted) disc into a set of MKV files, preserving most information but not changing it in any way. The MKV format can store multiple video/audio tracks with all meta-information and preserve chapters.
The graphical user interface (GUI) of the application can be accessed through a modern web browser, requiring no installation or configuration on the client side, or via any VNC client.
The container is built against Alpine Linux to provide an efficient image in terms of size and resource usage.
A fully automated mode is also available: insert a DVD or Blu-ray disc into an optical drive and let MakeMKV rips it without any user interaction.
For a complete documentation of this container, see https://github.com/jlesage/docker-makemkv#readme
NOTE: For the container to have access to your optical drive(s), you need to add them to your container configuration. This is done by adding a new "Device". An optical drive is represented by two Linux device files: "/dev/srX" and "/dev/sgY". For optimal performance, the container needs both of them. To determine the right devices to use, start the container and look at its log.
Runtime arguments
- Web UI
http://[IP]:[PORT:5800]- Network
bridge- Privileged
- false
Template configuration
Stores the application's configuration, state, logs, and any files requiring persistency.
- Target
- /config
- Default
- /mnt/user/appdata/makemkv
Contains files from the host that need to be accessible to the application.
- Target
- /storage
- Default
- /mnt/user
This is where extracted videos are written.
- Target
- /output
ID of the user the application runs as.
- Target
- USER_ID
- Default
- 99
ID of the group the application runs as.
- Target
- GROUP_ID
- Default
- 100
Mask controlling permissions for newly created files and folders, specified in octal notation.
- Target
- UMASK
- Default
- 0000
Priority at which the application should run. A niceness value of `-20` is the highest, `19` is the lowest and `0` the default. NOTE: Setting a negative value requires additional permissions. Thus, `--cap-add=SYS_NICE` must be added to Extra Parameters (shown when Advanced View is enabled).
- Target
- APP_NICENESS
- Default
- 0
Width (in pixels) of the application's window.
- Target
- DISPLAY_WIDTH
- Default
- 1920
Height (in pixels) of the application's window.
- Target
- DISPLAY_HEIGHT
- Default
- 1080
When set to `1`, enables dark mode for the application.
- Target
- DARK_MODE
- Default
- 0
When set to `1`, enables audio support, allowing audio produced by the application to play through the browser.
- Target
- WEB_AUDIO
- Default
- 0
When set to `1`, enables the web file manager, allowing interaction with files inside the container through a web browser, supporting operations like renaming, deleting, uploading, and downloading.
- Target
- WEB_FILE_MANAGER
- Default
- 0
Comma-separated list of paths within the container that the file manager can access. By default, the container's entire filesystem is not accessible, and this variable specifies allowed paths. If set to `AUTO`, commonly used folders and those mapped to the container are automatically allowed. The value `ALL` allows access to all paths (no restrictions).
- Target
- WEB_FILE_MANAGER_ALLOWED_PATHS
- Default
- AUTO
Comma-separated list of paths within the container that the file manager cannot access. A denied path takes precedence over an allowed path.
- Target
- WEB_FILE_MANAGER_DENIED_PATHS
- Default
- None
When set to `1`, enables the web notification service, allowing the browser to display desktop notifications from the application.
- Target
- WEB_NOTIFICATION
- Default
- 0
When set to `1`, enables access to a terminal from the web interface. It is strongly recommended to configure the container with secure web access (HTTPS).
- Target
- WEB_TERMINAL
- Default
- 0
When set to `1`, protects the application's GUI with a login page when accessed via a web browser. Access is granted only with valid credentials.
- Target
- WEB_AUTHENTICATION
- Default
- 0
Lifetime of a token, in hours. A token is assigned to the user after successful login. As long as the token is valid, the user can access the application's GUI without logging in again. Once the token expires, the login page is displayed again.
- Target
- WEB_AUTHENTICATION_TOKEN_VALIDITY_TIME
- Default
- 24
Optional username for web authentication. Provides a quick and easy way to configure credentials for a single user. For more secure configuration or multiple users, see the documentation.
- Target
- WEB_AUTHENTICATION_USERNAME
Optional password for web authentication. Provides a quick and easy way to configure credentials for a single user. For more secure configuration or multiple users, see the documentation.
- Target
- WEB_AUTHENTICATION_PASSWORD
When set to `1`, uses an encrypted connection to access the application's GUI (via web browser or VNC client).
- Target
- SECURE_CONNECTION
- Default
- 0
Method used for encrypted VNC connection. Possible values are `SSL` or `TLS`.
- Target
- SECURE_CONNECTION_VNC_METHOD
- Default
- SSL
Interval, in seconds, at which the system checks if web or VNC certificates have changed. When a change is detected, affected services are automatically restarted. A value of `0` disables the check.
- Target
- SECURE_CONNECTION_CERTS_CHECK_INTERVAL
- Default
- 60
Port used by the web server to serve the application's GUI. This port is internal to the container and typically does not need to be changed. NOTE: This setting is relevant only when the Network Type is set to something else than Bridge.
- Target
- WEB_LISTENING_PORT
- Default
- 5800
Port used by the VNC server to serve the application's GUI. This port is internal to the container and typically does not need to be changed. NOTE: This setting is relevant only when the Network Type is set to something else than Bridge.
- Target
- VNC_LISTENING_PORT
- Default
- 5900
MakeMKV registration key to use. The key is written to the configuration file during container startup. When set to `BETA`, the latest beta key is automatically used. When set to `UNSET`, no key is automatically written to the configuration file.
- Target
- MAKEMKV_KEY
- Default
- BETA
Setting this to `1` enables the MakeMKV, `0` disables it.
- Target
- MAKEMKV_GUI
- Default
- 1
When set to `1`, the automatic disc ripper is enabled.
- Target
- AUTO_DISC_RIPPER
- Default
- 0
Filename of the custom MakeMKV profile the automatic disc ripper should use. The profile is expected to be found under the `/config` folder of the container, unless an absolute path is specified.
- Target
- AUTO_DISC_RIPPER_MAKEMKV_PROFILE
When set to `1`, disc is ejected from the drive when ripping is terminated.
- Target
- AUTO_DISC_RIPPER_EJECT
- Default
- 0
When set to `1`, discs from all available optical drives are ripped in parallel. Else, each disc from optical drives is ripped one at time.
- Target
- AUTO_DISC_RIPPER_PARALLEL_RIP
- Default
- 0
Interval, in seconds, the automatic disc ripper checks for the presence of a DVD/Blu-ray discs.
- Target
- AUTO_DISC_RIPPER_INTERVAL
- Default
- 5
Titles with a length less than this value are ignored. Length is in seconds. By default, no value is set, meaning that value from MakeMKV's configuration file is taken.
- Target
- AUTO_DISC_RIPPER_MIN_TITLE_LENGTH
Rip mode of Blu-ray discs. `mkv` is the default mode, where a set of MKV files are produced. When set to `backup`, a copy of the (decrypted) file system of the disc is created instead.
- Target
- AUTO_DISC_RIPPER_BD_MODE
- Default
- mkv
Rip mode of DVD discs. `mkv` is the default mode, where a set of MKV files are produced. When set to `backup`, a copy of the (decrypted) file system of the disc is instead created as an ISO file.
- Target
- AUTO_DISC_RIPPER_DVD_MODE
- Default
- mkv
When set to `0`, files are written to `/output/DISC_LABEL/`, where `DISC_LABEL` is the label/name of the disc. If this directory exists, then files are written to `/output/DISC_LABEL-XXXXXX`, where `XXXXXX` are random readable characters. When set to `1`, the `/output/DISC_LABEL-XXXXXX` pattern is always used.
- Target
- AUTO_DISC_RIPPER_FORCE_UNIQUE_OUTPUT_DIR
- Default
- 0
When set to `1`, progress of discs ripped by the automatic disc ripper is not shown in the MakeMKV GUI.
- Target
- AUTO_DISC_RIPPER_NO_GUI_PROGRESS
- Default
- 0
Port to access the application's GUI via the web interface. NOTE: This setting is relevant only when the Network Type is set to `Bridge`.
- Target
- 5800
- Default
- 7806
Port to access the application's GUI via VNC protocol. Optional if no VNC client is used. NOTE: This setting is relevant only when the Network Type is set to `Bridge`.
- Target
- 5900
- Default
- 7906
Categories
Download Statistics
Total Downloads Over Time
Details
jlesage/makemkvRun MakeMKV on Unraid.
MakeMKV is listed in Community Apps for Unraid OS. Explore Unraid to build a flexible home server, NAS, or homelab.