Docker image for JDownloader2 running in headless mode
-
1.4.1, 1.4 - Dockerfile is not up to date; the volume path is not correct but fixed already fixed in this version
If you do not care about image size then use the latest version or any version from 2.x. For my opinion the version 2.x is a little bit faster then version one because of performance improvements from openjdk 8 to 11. But since OpenJDK 10 they do not provide an image with just the Java runtime, you always get the complete SDK.
- based on OpenJDK 11 slim image
- based on OpenJDK 8 JRE slim image
The all the files mapped in the volumes are stored with UID 1000 and GID 100. You can configure this if needed by setting the follwing two environment variables. During the container start all files from mapped volumes will be changed to the default UID/GID or passed JUID/JGID.
Env variable | Description |
---|---|
JUID | User ID for all files |
JGID | Group ID for all files |
Note: you do not need the --restart
flag because the container will run a endless loop so it does not stop. But if you want the container start at system start up just pass --restart always
Hint: Start JDownloader in graphic Mode on your local maschine. Adjust all settings and use the config directory (or all config files) for your docker instance.
- Pull image from Docker Hub
docker pull alfieri/jdownloader2:latest
. - Run container with download and config directory mapping
docker run -d --name jd -v <config directory>:/opt/jdownloader2/cfg -v <downloader directory>:/home/jdownloader/Downloads alfieri/jdownloader2:latest
. Just replaceconfig directory
anddownloader directory
with your local config and download path. During the start JDownloader will install all missing updates. If this happens the container stop automaticly (skip step 3.). - Stop container and adjust configuration
docker stop jd
- Set your MyJDownloader credentials to
org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json
(you will find a empty file in my git repo). Set or create the following key:value pairs
{
"email" : "",
"password" : "",
"devicename" : ""
}
- Start the conatiner again
docker start jd
(see docker-compose.yml in my git repo)
version: "3.4"
services:
jd2:
image: alfieri/jdownloader2:latest
container_name: jd2
restart: always
volumes:
- "<your config path here>:/opt/jdownloader2/cfg"
- "<your download path here>:/home/jdownloader/Downloads"