mirror of
https://github.com/AlistGo/alist.git
synced 2025-04-25 06:44:03 +08:00

* build: improve multistage docker build * build: add dockerfile for ci * build: add BuildDockerMultiplatform function in build.sh for ci * ci: change build method * build: add missing mod download command to the Dockerfile * build: revert changes made ffmpeg installed * build: use musl build for docker release * ci: apply to dev version * fix: don't login on pr * fix: don't build_docker_with_aria2 on pr --------- Co-authored-by: Andy Hsu <i@nn.ci>
23 lines
609 B
Docker
23 lines
609 B
Docker
FROM alpine:edge as builder
|
|
LABEL stage=go-builder
|
|
WORKDIR /app/
|
|
RUN apk add --no-cache bash curl gcc git go musl-dev
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
COPY ./ ./
|
|
RUN bash build.sh release docker
|
|
|
|
FROM alpine:edge
|
|
LABEL MAINTAINER="i@nn.ci"
|
|
VOLUME /opt/alist/data/
|
|
WORKDIR /opt/alist/
|
|
COPY --from=builder /app/bin/alist ./
|
|
COPY entrypoint.sh /entrypoint.sh
|
|
RUN apk update && \
|
|
apk upgrade --no-cache && \
|
|
apk add --no-cache bash ca-certificates su-exec tzdata; \
|
|
chmod +x /entrypoint.sh && \
|
|
rm -rf /var/cache/apk/*
|
|
ENV PUID=0 PGID=0 UMASK=022
|
|
EXPOSE 5244 5245
|
|
CMD [ "/entrypoint.sh" ] |