feat: docker build use cache
This commit is contained in:
parent
9abd780aa2
commit
cca898f5b6
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -62,3 +62,5 @@ jobs:
|
|||||||
MOVIEPILOT_VERSION=${{ env.app_version }}
|
MOVIEPILOT_VERSION=${{ env.app_version }}
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
cache-from: type=gha, scope=${{ github.workflow }}
|
||||||
|
cache-to: type=gha, scope=${{ github.workflow }}
|
43
Dockerfile
43
Dockerfile
@ -34,8 +34,7 @@ ENV LANG="C.UTF-8" \
|
|||||||
EMBY_HOST="http://127.0.0.1:8096" \
|
EMBY_HOST="http://127.0.0.1:8096" \
|
||||||
EMBY_API_KEY=""
|
EMBY_API_KEY=""
|
||||||
WORKDIR "/app"
|
WORKDIR "/app"
|
||||||
COPY . .
|
RUN apt-get update -y \
|
||||||
RUN apt-get update \
|
|
||||||
&& apt-get -y install \
|
&& apt-get -y install \
|
||||||
musl-dev \
|
musl-dev \
|
||||||
nginx \
|
nginx \
|
||||||
@ -56,26 +55,20 @@ RUN apt-get update \
|
|||||||
elif [ "$(uname -m)" = "aarch64" ]; \
|
elif [ "$(uname -m)" = "aarch64" ]; \
|
||||||
then ln -s /usr/lib/aarch64-linux-musl/libc.so /lib/libc.musl-aarch64.so.1; \
|
then ln -s /usr/lib/aarch64-linux-musl/libc.so /lib/libc.musl-aarch64.so.1; \
|
||||||
fi \
|
fi \
|
||||||
&& cp -f /app/nginx.conf /etc/nginx/nginx.template.conf \
|
&& apt-get autoremove -y \
|
||||||
&& cp -f /app/update /usr/local/bin/mp_update \
|
&& apt-get clean -y \
|
||||||
&& cp -f /app/entrypoint /entrypoint \
|
&& rm -rf \
|
||||||
&& chmod +x /entrypoint /usr/local/bin/mp_update \
|
/tmp/* \
|
||||||
&& mkdir -p ${HOME} /var/lib/haproxy/server-state \
|
/moviepilot/.cache \
|
||||||
&& groupadd -r moviepilot -g 911 \
|
/var/lib/apt/lists/* \
|
||||||
&& useradd -r moviepilot -g moviepilot -d ${HOME} -s /bin/bash -u 911 \
|
/var/tmp/*
|
||||||
|
COPY requirements.txt requirements.txt
|
||||||
|
RUN apt-get update -y \
|
||||||
&& apt-get install -y build-essential \
|
&& apt-get install -y build-essential \
|
||||||
&& pip install --upgrade pip \
|
&& pip install --upgrade pip \
|
||||||
&& pip install Cython \
|
&& pip install Cython \
|
||||||
&& pip install -r requirements.txt \
|
&& pip install -r requirements.txt \
|
||||||
&& playwright install-deps chromium \
|
&& playwright install-deps chromium \
|
||||||
&& python_ver=$(python3 -V | awk '{print $2}') \
|
|
||||||
&& echo "/app/" > /usr/local/lib/python${python_ver%.*}/site-packages/app.pth \
|
|
||||||
&& echo 'fs.inotify.max_user_watches=5242880' >> /etc/sysctl.conf \
|
|
||||||
&& echo 'fs.inotify.max_user_instances=5242880' >> /etc/sysctl.conf \
|
|
||||||
&& locale-gen zh_CN.UTF-8 \
|
|
||||||
&& FRONTEND_VERSION=$(curl -sL "https://api.github.com/repos/jxxghp/MoviePilot-Frontend/releases/latest" | jq -r .tag_name) \
|
|
||||||
&& curl -sL "https://github.com/jxxghp/MoviePilot-Frontend/releases/download/${FRONTEND_VERSION}/dist.zip" | busybox unzip -d / - \
|
|
||||||
&& mv /dist /public \
|
|
||||||
&& apt-get remove -y build-essential \
|
&& apt-get remove -y build-essential \
|
||||||
&& apt-get autoremove -y \
|
&& apt-get autoremove -y \
|
||||||
&& apt-get clean -y \
|
&& apt-get clean -y \
|
||||||
@ -84,6 +77,22 @@ RUN apt-get update \
|
|||||||
/moviepilot/.cache \
|
/moviepilot/.cache \
|
||||||
/var/lib/apt/lists/* \
|
/var/lib/apt/lists/* \
|
||||||
/var/tmp/*
|
/var/tmp/*
|
||||||
|
COPY . .
|
||||||
|
RUN cp -f /app/nginx.conf /etc/nginx/nginx.template.conf \
|
||||||
|
&& cp -f /app/update /usr/local/bin/mp_update \
|
||||||
|
&& cp -f /app/entrypoint /entrypoint \
|
||||||
|
&& chmod +x /entrypoint /usr/local/bin/mp_update \
|
||||||
|
&& mkdir -p ${HOME} /var/lib/haproxy/server-state \
|
||||||
|
&& groupadd -r moviepilot -g 911 \
|
||||||
|
&& useradd -r moviepilot -g moviepilot -d ${HOME} -s /bin/bash -u 911 \
|
||||||
|
&& python_ver=$(python3 -V | awk '{print $2}') \
|
||||||
|
&& echo "/app/" > /usr/local/lib/python${python_ver%.*}/site-packages/app.pth \
|
||||||
|
&& echo 'fs.inotify.max_user_watches=5242880' >> /etc/sysctl.conf \
|
||||||
|
&& echo 'fs.inotify.max_user_instances=5242880' >> /etc/sysctl.conf \
|
||||||
|
&& locale-gen zh_CN.UTF-8 \
|
||||||
|
&& FRONTEND_VERSION=$(curl -sL "https://api.github.com/repos/jxxghp/MoviePilot-Frontend/releases/latest" | jq -r .tag_name) \
|
||||||
|
&& curl -sL "https://github.com/jxxghp/MoviePilot-Frontend/releases/download/${FRONTEND_VERSION}/dist.zip" | busybox unzip -d / - \
|
||||||
|
&& mv /dist /public
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
VOLUME [ "/config" ]
|
VOLUME [ "/config" ]
|
||||||
ENTRYPOINT [ "/entrypoint" ]
|
ENTRYPOINT [ "/entrypoint" ]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user