objective categorical abstract machine language personal data server

Use dune package management in Dockerfile

futur.blue 8992c6e6 bd83727d

verified
+10 -6
+9 -5
Dockerfile
··· 1 - FROM ocaml/opam:debian-12-ocaml-5.2 AS build 1 + FROM --platform=linux/amd64 ocaml/opam:debian-12-ocaml-5.2 AS build 2 2 3 3 RUN sudo apt-get install -y cmake git libev-dev libffi-dev libgmp-dev libssl-dev libsqlite3-dev pkg-config 4 4 5 5 WORKDIR /home/opam 6 6 7 - ADD . . 8 - RUN opam install . --deps-only --with-test --unlock-base 9 - RUN opam exec -- dune build 7 + RUN curl -fsSL https://get.dune.build/install | sh 10 8 9 + ENV PATH="/home/opam/.local/bin:${PATH}" 10 + ENV DUNE_CACHE="enabled" 11 11 12 - FROM ocaml/opam:debian-12-ocaml-5.2 AS run 12 + ADD . . 13 + RUN dune pkg lock 14 + RUN dune build 15 + 16 + FROM --platform=linux/amd64 ocaml/opam:debian-12-ocaml-5.2 AS run 13 17 14 18 RUN sudo apt-get install -y libev-dev 15 19
+1 -1
dune-project
··· 15 15 (package (name pg_query))) 16 16 17 17 (pin ; build broken on macOS for some reason 18 - (url "git+https://github.com/janestreet/bin_prot.git#03c783d") 18 + (url "git+https://github.com/futurGH/bin_prot.git") ; https://github.com/janestreet/bin_prot pinned to #03c783d 19 19 (package 20 20 (name bin_prot) 21 21 (version v0.17~preview.128.20+135))) ; this is actually v0.16~preview.128.20+135 but some other package requires >=v0.17