diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index 64bf728..9ca2911 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -37,6 +37,7 @@ jobs: uses: docker/build-push-action@v5 with: context: . + file: docker/Dockerfile push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} diff --git a/Dockerfile b/docker/Dockerfile similarity index 69% rename from Dockerfile rename to docker/Dockerfile index e2f740c..396c0ff 100644 --- a/Dockerfile +++ b/docker/Dockerfile @@ -22,7 +22,10 @@ WORKDIR /app RUN mkdir /downloads # Copy the pre-built binary file from the previous stage -COPY --from=builder /app/manga-downloader . +COPY --from=builder /app/manga-downloader /usr/bin/manga-downloader + +COPY /docker/entrypoint.sh /usr/bin/entrypoint.sh +RUN chmod +x /usr/bin/entrypoint.sh # Set manga-downloader as the entrypoint -ENTRYPOINT ["./manga-downloader", "-o", "/downloads"] +ENTRYPOINT ["/usr/bin/entrypoint.sh", "-o", "/downloads"] diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh new file mode 100644 index 0000000..3568a86 --- /dev/null +++ b/docker/entrypoint.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +# default user id and group id +USER_ID=${USER_ID:-1000} +GROUP_ID=${GROUP_ID:-1000} + +# execute the manga-downloader binary with all arguments passed to this script +manga-downloader "$@" + +# Set ownership to USER_ID:GROUP_ID for /downloads +chown -R ${USER_ID}:${GROUP_ID} /downloads