Skip to content

Conversation

jeeshofone
Copy link
Contributor

@jeeshofone jeeshofone commented Jan 26, 2024

Overview

This pull request introduces significant updates to the docker-ripper project, aiming to enhance the readability and add flexibility to Docker configurations.

Key Changes

  • Updated output formats for various disk types, including addition of ISO format.
  • Added debug logging environment variable DEBUGTOWEB to aid in monitoring and troubleshooting.
  • Added debug logging in console with environment variable DEBUG
  • Introduced several new environment variables to control behavior and added default values to improve user experience.
  • Refined docker-compose.yml to include more configuration options with explanations for each and definitions for building the images.
  • Improved Dockerfile for both latest and manual build to optimize space and improve readability.

Docker Compose Adjustments

The provided docker-compose.yml now includes configurations that allow users to:

  • Customize whether to eject disks post-ripping (EJECTENABLED).
  • Choose to create ISO images exclusively or as part of the normal ripping process (JUSTMAKEISO and ALSOMAKEISO).
  • Set storage paths depending on the type of disk being ripped.
  • Optionally Affix timestamps to output folders for better organization.
  • Opt to use built images or build from provided Dockerfiles (latest and manual-build options) in the compose file

Building the Image:

The README now also contains simplified instructions for building and running the project using Docker Compose:

Clone the repository
Navigate to the repo directory
Build the image using docker compose build
Run the container using docker compose up -d

Asks

  • I do not have any BluRay discs to test these changes out with; however, the code that actually starts makemkv has not been touched. I would recommend this be tested before merging.

Updates

2024-01-27 - Changed to Draft, investigating use of chmod, testing

this is useful for me to test options on the same disc without re-inserting the disc and for those working with "remote" drives
also a small fix for the Dockerfile
update port to use a port
set build to the latest dockerfile
comment out optional configuration
  ┬─┬ノ( º _ ºノ)
Refactor Dockerfile for improved efficiency

- Consolidate ENV declarations into a single instruction, reducing image layers and improving readability.
- Utilize non-interactive mode and `--no-install-recommends` for apt-get install to minimize unnecessary package installs.
- Merge apt-get update, install, autoremove, and cleanup steps into a single RUN instruction to reduce final image size.
- Use pip's `--no-cache-dir` option to avoid caching Python packages during installation.
- Add an ADD command with /dev/null as the destination to invalidate the Docker build cache upon new releases of MakeMKV without adding files to the image.
- Set proper file permissions for initialization scripts in one RUN instruction, avoiding additional layers for each chmod.

This optimization results in a Docker image that is more efficient in terms of size and layers, with improved cache invalidation strategy, and is easier to understand and maintain.

previous image size was:
748MB
current image size is:
673MB
…ling

The disc ripper bash script has been refactored to improve readability, maintainability, and consistency. Notable changes include the use of `printf` for startup information, the definition of default configuration values using parameter expansion, and the implementation of a consistent error handling strategy. Revised drive type detection logic uses pattern matching with `DRV:0` patterns, and the `ejectdisc` function now follows a more standardized lowercase function naming convention. This commit aims to enhance the reliability and clarity of the disc ripping process.
@jeeshofone jeeshofone marked this pull request as draft January 26, 2024 13:00
@rix1337
Copy link
Owner

rix1337 commented Jan 27, 2024

Looks helpful and extensive. Thanks. Will need some testing before the merge

@rix1337 rix1337 marked this pull request as ready for review January 28, 2024 00:09
@rix1337 rix1337 merged commit e5e4833 into rix1337:main Jan 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants