Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(docker release): improve aria2 image, add aio image #7750

Merged
merged 8 commits into from
Dec 30, 2024

Conversation

Mmx233
Copy link
Contributor

@Mmx233 Mmx233 commented Dec 30, 2024

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 in entrypoint.sh.

Whether to run aria2 in container with the aio or aria2 version image is determined by the RUN_ARIA2 environment variable. The default value is set to true when the INSTALL_ARIA2 build-arg is set.

@Mmx233
Copy link
Contributor Author

Mmx233 commented Dec 30, 2024

Aria2 works properly during testing. However, there are issues with the permission settings of the main branch that the test mirror is based on:

  • Some permission options cannot be interacted with: they do not respond when clicked.
  • The actual permission values do not match what is displayed in the frontend.
  • There may be forward compatibility issues with recent updates to permission-related functionalities: I'm testing with admin account which is granted all permissions before, but the api returned permission denied after upgraded to the test version.

@Mmx233 Mmx233 marked this pull request as ready for review December 30, 2024 12:13
@xhofe xhofe merged commit 4dce53d into AlistGo:main Dec 30, 2024
3 checks passed
@Mmx233 Mmx233 deleted the feat/docker_image_aio branch December 30, 2024 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants