FROM rust

FROM rust AS deps
RUN apt-get update && apt-get install -y lld gfortran build-essential cmake ninja-build libaec-dev libclang-dev

RUN git clone https://github.com/ecmwf/eccodes && cd eccodes && mkdir build && cd build && cmake .. -DENABLE_PNG=On -G Ninja && ninja && ctest && ninja install

FROM deps AS build
COPY . .
RUN RUSTFLAGS="-C link-arg=-fuse-ld=lld" cargo build --release

EXPOSE 8080/tcp

ENTRYPOINT ["./target/release/wxbox-tiler"]