Skip to content

Latest commit

 

History

History
68 lines (51 loc) · 1.6 KB

notes.md

File metadata and controls

68 lines (51 loc) · 1.6 KB

Notes

Why apt-get instead of apt?

Why --no-install-recommends in apt?

  • To avoid installing unnecessary pkgs and thereby, reduce image build time.
  • Reduces build image size by ~260MB.

Why default-jdk-headless instead of default-jdk?

  • To avoid installing unnecessary GUI dependencies by latter and thereby, reduce image build time.
  • The former is ~140MB smaller than latter.

Why install libfl-dev?

  • --no-install-recommends skips it.
  • flex needs it.
  • Otherwise, throws error /usr/bin/ld: cannot find -ll during make in scl.

Why remove /var/lib/apt/lists/* files?

Why remove git folders?

To reduce image size (scl git folder size is 250M)

Why separate build & run deps?

To reduce final image size, thereby, reduce image pull time.

Build deps bash bison camlp4 default-jdk-headless flex libfl-dev g++ gcc git make ocaml ocamlbuild

Runtime deps apache2 bash default-jre-headless graphviz lttoolbox perl python3

Unsure (considering as runtime deps for now) python3-pip python3-pandas python3-openpyxl xsltproc anytree