mirror of https://github.com/Xhofe/alist
ci(docker): using docker build args instead of extra dockerfile for ffmpeg (#6989)
* build: using docker build arg to determine install ffmpeg or not * ci: pass build-args to ffmpeg image build steppull/7025/head
parent
8e6c1aa78d
commit
1f652e2e7d
|
@ -74,19 +74,16 @@ jobs:
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
||||||
|
|
||||||
- name: Replace dockerfile tag
|
|
||||||
run: |
|
|
||||||
sed -i -e "s/latest/main/g" Dockerfile.ffmpeg
|
|
||||||
|
|
||||||
- name: Build and push with ffmpeg
|
- name: Build and push with ffmpeg
|
||||||
id: docker_build_ffmpeg
|
id: docker_build_ffmpeg
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v6
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: Dockerfile.ffmpeg
|
file: Dockerfile.ci
|
||||||
push: ${{ github.event_name == 'push' }}
|
push: ${{ github.event_name == 'push' }}
|
||||||
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
|
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
|
||||||
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
|
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
|
||||||
|
build-args: INSTALL_FFMPEG=true
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
||||||
|
|
||||||
build_docker_with_aria2:
|
build_docker_with_aria2:
|
||||||
|
|
|
@ -74,10 +74,11 @@ jobs:
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v6
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: Dockerfile.ffmpeg
|
file: Dockerfile.ci
|
||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
|
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
|
||||||
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
|
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
|
||||||
|
build-args: INSTALL_FFMPEG=true
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x
|
||||||
|
|
||||||
release_docker_with_aria2:
|
release_docker_with_aria2:
|
||||||
|
|
15
Dockerfile
15
Dockerfile
|
@ -8,16 +8,23 @@ COPY ./ ./
|
||||||
RUN bash build.sh release docker
|
RUN bash build.sh release docker
|
||||||
|
|
||||||
FROM alpine:edge
|
FROM alpine:edge
|
||||||
|
|
||||||
|
ARG INSTALL_FFMPEG=false
|
||||||
LABEL MAINTAINER="i@nn.ci"
|
LABEL MAINTAINER="i@nn.ci"
|
||||||
VOLUME /opt/alist/data/
|
|
||||||
WORKDIR /opt/alist/
|
WORKDIR /opt/alist/
|
||||||
COPY --from=builder /app/bin/alist ./
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
|
||||||
RUN apk update && \
|
RUN apk update && \
|
||||||
apk upgrade --no-cache && \
|
apk upgrade --no-cache && \
|
||||||
apk add --no-cache bash ca-certificates su-exec tzdata; \
|
apk add --no-cache bash ca-certificates su-exec tzdata; \
|
||||||
chmod +x /entrypoint.sh && \
|
[ "$INSTALL_FFMPEG" = "true" ] && apk add --no-cache ffmpeg; \
|
||||||
rm -rf /var/cache/apk/*
|
rm -rf /var/cache/apk/*
|
||||||
|
|
||||||
|
COPY --from=builder /app/bin/alist ./
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
RUN chmod +x /entrypoint.sh && /entrypoint.sh version
|
||||||
|
|
||||||
ENV PUID=0 PGID=0 UMASK=022
|
ENV PUID=0 PGID=0 UMASK=022
|
||||||
|
VOLUME /opt/alist/data/
|
||||||
EXPOSE 5244 5245
|
EXPOSE 5244 5245
|
||||||
CMD [ "/entrypoint.sh" ]
|
CMD [ "/entrypoint.sh" ]
|
|
@ -1,16 +1,22 @@
|
||||||
FROM alpine:edge
|
FROM alpine:edge
|
||||||
|
|
||||||
ARG TARGETPLATFORM
|
ARG TARGETPLATFORM
|
||||||
|
ARG INSTALL_FFMPEG=false
|
||||||
LABEL MAINTAINER="i@nn.ci"
|
LABEL MAINTAINER="i@nn.ci"
|
||||||
VOLUME /opt/alist/data/
|
|
||||||
WORKDIR /opt/alist/
|
WORKDIR /opt/alist/
|
||||||
COPY /build/${TARGETPLATFORM}/alist ./
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
|
||||||
RUN apk update && \
|
RUN apk update && \
|
||||||
apk upgrade --no-cache && \
|
apk upgrade --no-cache && \
|
||||||
apk add --no-cache bash ca-certificates su-exec tzdata; \
|
apk add --no-cache bash ca-certificates su-exec tzdata; \
|
||||||
chmod +x /entrypoint.sh && \
|
[ "$INSTALL_FFMPEG" = "true" ] && apk add --no-cache ffmpeg; \
|
||||||
rm -rf /var/cache/apk/* && \
|
rm -rf /var/cache/apk/*
|
||||||
/entrypoint.sh version
|
|
||||||
|
COPY /build/${TARGETPLATFORM}/alist ./
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
RUN chmod +x /entrypoint.sh && /entrypoint.sh version
|
||||||
|
|
||||||
ENV PUID=0 PGID=0 UMASK=022
|
ENV PUID=0 PGID=0 UMASK=022
|
||||||
|
VOLUME /opt/alist/data/
|
||||||
EXPOSE 5244 5245
|
EXPOSE 5244 5245
|
||||||
CMD [ "/entrypoint.sh" ]
|
CMD [ "/entrypoint.sh" ]
|
|
@ -1,4 +0,0 @@
|
||||||
FROM xhofe/alist:latest
|
|
||||||
RUN apk update && \
|
|
||||||
apk add --no-cache ffmpeg \
|
|
||||||
rm -rf /var/cache/apk/*
|
|
Loading…
Reference in New Issue