1# ===== Rust builder =====2FROM ubuntu:22.04 as rust-builder3LABEL maintainer="Unique.Network"45ENV CARGO_HOME="/cargo-home"6ENV PATH="/cargo-home/bin:$PATH"7ENV TZ=UTC8RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone910RUN apt-get update && \11 apt-get install -y curl cmake pkg-config libssl-dev git clang llvm libudev-dev protobuf-compiler && \12 apt-get clean && \13 rm -r /var/lib/apt/lists/*1415RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none1617RUN mkdir /unique_parachain18WORKDIR /unique_parachain1920# ===== BUILD POLKADOT =====21FROM rust-builder as builder-polkadot-bin2223WORKDIR /unique_parachain2425ARG UNIQUE_VERSION26RUN git clone -b "$UNIQUE_VERSION" --depth 1 https://github.com/uniquenetwork/unique-chain.git2728ARG FEATURES29RUN --mount=type=cache,target=/cargo-home/registry \30 --mount=type=cache,target=/cargo-home/git \31 --mount=type=cache,target=/unique_parachain/polkadot/target \32 cd unique-chain && \33 CARGO_INCREMENTAL=0 cargo build --release --features="${FEATURES}" --locked && \34 mv ./target/release/unique-collator /unique_parachain/unique-chain/3536# ===== BIN ======3738FROM ubuntu:22.04 as builder-polkadot3940COPY --from=builder-polkadot-bin /unique_parachain/unique-chain/unique-collator /bin/unique-collator41ENTRYPOINT ["/bin/unique-collator"]