docker-compose configuration for ThreeTwo
This repo contains the docker-compose
files necessary to run:
- ThreeTwo UI
threetwo-core-service
and its dependenciesthreetwo-metadata-service
and its dependenciesthreetwo-acquisition-service
and its dependencies
You need both docker
and docker-compose
installed on your OS. Currently, Docker version 20.10.10, build b485636
and docker-compose version 1.29.2, build 5becea4c
have tested well on Debian 4.19.208-1
You need 2 folders:
-
comics
will contain your... comics -
userdata
will be used by the app to create app-specific files -
The structure should be like so:
- comics - userdata
To get ComicVine to work for metadata scraping and other functions, you must have a ComicVine API key. You can get one here. Metadata scraping will not work unless you supply an API key.
- To use AirDC++, you need a working install of... AirDC++
- Then within the UI, you need to set up the connection at
Settings > Acquisition > AirDC++ > Connection
- After successfully connecting, you need to select your default hubs for search under
Settings > Acquisition > AirDC++ > Hubs
- Clone this repo
- Create a network using
docker network create proxy
- Edit the
docker-compose.env
file- Find the hostname of your machine and set the
UNDERLYING_HOSTNAME
to that. For e.g.UNDERLYING_HOSTNAME=foo
- Set the
COMICS_DIRECTORY
andUSERDATA_DIRECTORY
to the correct absolute paths - Set the
COMICVINE_API
to your ComicVine API key - To summarize, these are the only variables you need to configure:
UNDERLYING_HOSTNAME=myhost COMICS_DIRECTORY=/path/to/comics USERDATA_DIRECTORY=/path/to/userdata COMICVINE_API_KEY=onethreetwo
- Find the hostname of your machine and set the
- Save the file
- Run the stack using:
env $(cat docker-compose.env | xargs) docker-compose up
threetwo
, the UI runs on port5173
threetwo-core-service
service on3000
threetwo-metadata-service
service on3080
General
-
Some common problems can be traced to out-of-date images, and as such can be mitigated by simply pruning orphaned images:
docker system prune -a
-
Always check the logs of the offending service,
docker logs --follow <servicename>
-
Once the stack is up, assuming everything went well, look for
threetwo-ui
service's logs to see something like:threetwo-ui | VITE v5.2.7 ready in 145 ms threetwo-ui | threetwo-ui | ➜ Local: http://localhost:5173/ threetwo-ui | ➜ Network: http://172.30.0.9:5173/