Skip to main content

Install ThreeTwo! on unRaid

Notes#

  • Currently, ThreeTwo! is installed along with its dependencies using docker-compose. The easiest way to install it on unRAID is to use a VM.
  • Skip the VM creation steps, if you already have a Debian VM

Pre-requisites#

This guide assumes the following is installed or readily available:

  • unRaid 6.9.2 (this version was tested against 6.9.2)

  • Debian 10.x (Grab the install .iso here)

  • You need to create the following folder structure on your unRaid host.

      - comics  - userdata    |- covers    |- expanded    |- temporary

    comics could be where your final; downloaded, renamed comics reside. userdata is purely for ThreeTwo!.

    You absolutely need both these folders with the structure described above. Many core functions won't work otherwise!

Getting the VM up and running#

  1. Download the Debian install .iso
  2. Place it in a folder accessible by the VM
  3. Go to the VM tab in your unRaid navigation
  4. Click Add VM
  5. From the list presented to you, click Debian under Linux
  6. On the VM configration page, enter the desired options for memory, CPU cores, vdisk allocation
  7. Make sure that you have set the volume containing the comics and userdata folders correctly for Unraid Share
  8. Make sure that you have also set the Unraid Mount tag option
  9. Make sure that the network bridge is set to br0
  10. Set a password for VNC so you can follow through with a graphical install if you so wish

Installing Debian on the VM#

  1. Launch the VM via VNC Remote option
  2. Follow the steps of the graphical installer
  3. Create a root user and a normal user and set the passwords for both

Docker pre-requisites#

  1. Make sure you have sudo
  2. Make sure you have ssh access for the user you created earlier
  3. ssh into the VM as the non-root user
  4. Install Docker Engine
  5. Install docker-compose
  6. Verify that docker and docker-compose commands work

VM pre-requisites#

  1. Once you have mapped the unRaid share containing comics and userdata to the mountpoint of the VM, add this line to your /etc/fstab
unraidshare /mnt/unraidshare    9p  trans=virtio,version=9p2000.L,_netdev,rw 0 0

where, unraidshare is the unRaid host folder you chose to map to the VM mountpoint during the VM creation process.

/mnt/unraidshare is simply a location where you want unraidshare mounted.

  1. Reboot the VM for posterity
  2. Check that /mnt/unraidshare correctly shows the folder contents.

Installation#

  1. Clone the repo: git clone https://github.com/rishighan/threetwo.git. If you have already cloned the repo and want updates, run git pull from threetwo directory.

  2. Change the directory: cd threetwo

  3. Create an external docker network using sudo docker network create proxy

  4. Remember to substitute things enclosed in <...> with your actual values!

    Run:

      COMICS_DIRECTORY=<YOUR COMICS FOLDER> \  USERDATA_DIRECTORY=<YOUR USERDATA FOLDER> \  COMICVINE_API_KEY=<YOUR COMICVINE API KEY> \  sudo -E docker-compose up -d --force-recreate 
  5. Wait for a hot minute

Post-install checks#

  1. Once the docker-compose up command successfully completes, you can check the spun-up containers using docker ps
  2. You should see the following services up:
threetwo-uithreetwo-import-apiimage-transformationimportcomicvine-apiqueuetraefikdatabasetransportercomicvine-service
  1. Past this, you can try accessing the ThreeTwo! UI at <VM IP>:8050 (Replace <server IP> with your VM's IP or hostname)

Troubleshooting#

  1. You aren't seeing all the services listed in #2 in the previous section spun up Note any errors listed at the end of docker-compose up --force-recreate -d Run sudo docker ps -a and look for any services with an ... (exited x seconds ago) message. Note the container name, typically under the NAMES column. Run sudo docker logs <service name> for the service that exited. Copy the error and open an issue on the repo's issue page.

  2. Check the browser's inspector and the network tab. Note any calls that may have failed.