Skip to content
1337-server edited this page Jun 23, 2022 · 3 revisions
Clone this wiki locally

Installing ARM using Docker on Linux

This is not compatible with the snap version of docker!

A pre-built image has been added to docker hub HERE.

Installing Linux

  • Select the option to install all third-party drivers
  • Make sure the username is arm

Prepare Linux

If running in a VM, make sure all disks are available to your distro via hardware passthrough in the VM Hypervisor software and confirm all drives are showing up by running lsscsi -g

This script only supports linux distros using the apt package manager. Support for pacman distros will come soon

sudo apt install wget lsscsi
lsscsi -g
wget https://raw.githubusercontent.com/1337-server/automatic-ripping-machine/v2_devel/scripts/installers/docker-setup.sh
sudo chmod +x docker-setup.sh

Setup ARM Docker

The script defaults to installing the latest tagged image from the 1337server ARM from DockerHub.

  • To specify a tag, add -t <tag>
  • To specify a fork, add -f <fork>

To install default: sudo ./docker-setup.sh
To install from a different repo, tag: sudo ./docker-setup.sh -f 1337server -t dev_build

The script will now:

  1. Create an arm user and group if they don't exist
  2. Install docker if it is not already found on the system
  3. Pull the appropriate image from Dockerhub
  4. Create host mountpoints for any DVD drives found on the system
  5. Save a copy of the template run command for the user to fill in to ~arm/start_arm_container.sh

Post Install

  1. In a terminal session,
  2. In a terminal session, type id -u arm and make a note of the returned value
  3. In a terminal session, type id -g arm and make a note of the returned value
  4. Open up start-arm-container.sh in the text editor of your choice.
    1. If the returned value of 1. is not 1000, enter that value for ARM_UID. If the returned value is 1000, delete that line from the script.
    2. If the returned value of 2. is not 1000, enter that value for ARM_GID. If the returned value is 1000, delete that line from the script.
    3. Fill in the appropriate paths for the volumes being mounted
    4. Fill in the list of CPU core threads to give the container in --cpuset-cpus. It's highly recommended to leave at least one core for the hypervisor to use so the host machine doesn't get choked out during transcoding! Also, CPUs with multiple threads per core will be numbered in pairs (e.g. passing only core #4 would be --cpuset-cpus='5,6')
    5. Save and close
  5. Run the container with sudo ./start-arm-container.sh

You will then need to visit http://WEBSERVER_IP:PORT/setup This will create the db file and folders, it will also ask you to create an admin account and password.

You must create an admin account! ARM won't let you view rips, or settings without an admin account.

ARM should now be fully setup, and ripping should start when a disc is inserted.

This was possible thanks to the work of