feat(docker release): improve aria2 image, add aio image #7750
+100
−62
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR migrates https://github.com/AlistGo/with_aria2 into this repo with single Dockerfile. Now we can build an image with aria2 easily by adding docker build-arg
INSTALL_ARIA2=true
.What's new
CI/CD
Since four image versions need to be built in a single workflow, CI is now using the GitHub Actions Matrix to build four versions of Docker images simultaneously. Binaries only need to be built once and passed to other jobs through artifacts.
And moreover, all important variables have been moved to the top of the workflow definition file. This makes it easier for forks to change configs.
Tested with action run: https://github.com/Mmx233/alist/actions/runs/12545883543
Docker images
Besides the original image with aria2, a new image named
aio
that includes both ffmpeg and aria2 has been added.New images will be added:
xhofe/alist:latest-aio
xhofe/alist:latest-aria2
and so on.Test images:
mmx233/alist:v3.41.0-alpha6
mmx233/alist:v3.41.0-alpha6-ffmpeg
mmx233/alist:v3.41.0-alpha6-aria2
mmx233/alist:v3.41.0-alpha6-aio
Tested with the aio image.
Changes in docker image with aria2
Workdir of aria2 is changed from
/root
to/opt/aria2
. Config files is now in/opt/aria2/.aria2
. This change is merged from AlistGo/with_aria2#13 in b532a7b. And the issue of aria2 not able to run when PUID PGID is not 0 is also fixed with new logics inentrypoint.sh
.Whether to run aria2 in container with the
aio
oraria2
version image is determined by theRUN_ARIA2
environment variable. The default value is set totrue
when theINSTALL_ARIA2
build-arg is set.