diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml index 78e96cae..ff371db3 100644 --- a/deploy/docker-compose.yml +++ b/deploy/docker-compose.yml @@ -38,6 +38,8 @@ services: args: TAG: serai entrypoint: /scripts/entry-dev.sh + volumes: + - "./serai/scripts:/scripts" serai-base: <<: *serai_defaults diff --git a/deploy/serai/Dockerfile b/deploy/serai/Dockerfile index 87ea5998..b46543cd 100644 --- a/deploy/serai/Dockerfile +++ b/deploy/serai/Dockerfile @@ -20,12 +20,17 @@ RUN pip3 install solc-select==0.2.1 RUN solc-select install 0.8.16 RUN solc-select use 0.8.16 -# Build it -RUN cargo build --release +# Mount cargo and serai cache for Cache & Build +RUN --mount=type=cache,target=/usr/local/cargo/git \ + --mount=type=cache,target=/usr/local/cargo/registry \ + --mount=type=cache,target=/serai/target/release/build \ + --mount=type=cache,target=/serai/target/release/deps \ + --mount=type=cache,target=/serai/target/release/.fingerprint \ + --mount=type=cache,target=/serai/target/release/incremental \ + --mount=type=cache,target=/serai/target/release/wbuild \ + --mount=type=cache,target=/serai/target/release/lib* \ + cargo build --release -# Mount for Cache -RUN --mount=type=cache,target=/usr/local/cargo/registry \ - --mount=type=cache,target=/serai/target # Prepare Image FROM ubuntu:latest as image @@ -34,9 +39,8 @@ LABEL description="STAGE 2: Copy and Run" WORKDIR /home/serai # Copy necessary files to run node -COPY --from=builder /serai/target/release/* /bin/ +COPY --from=builder /serai/target/release/ /bin/ COPY --from=builder /serai/AGPL-3.0 . -COPY deploy/serai/scripts /scripts # Run node EXPOSE 30333 9615 9933 9944