stack build我正在从 Haskell 应用程序构建 docker 映像,并在容器内执行。
因为stack build是从“新鲜/普通”docker 映像开始 - 所有库都需要安装/拉取。
有没有办法可以预安装这些库依赖项?为了减少 docker 镜像构建时间的最终目标 ( stack build)。我还希望能够稍后“添加”额外的依赖项,而不必再次stack build从头开始。
一个可能的解决方案:
我尝试了一系列:
RUN stack install --only-dependencies --resolver="lts-14.27" aeson
RUN stack install --only-dependencies --resolver="lts-14.27" aeson-pretty
RUN stack install --only-dependencies --resolver="lts-14.27" ansi-terminal
RUN stack install --only-dependencies --resolver="lts-14.27" ansi-wl-pprint
RUN stack install --only-dependencies --resolver="lts-14.27" appar
RUN stack install --only-dependencies --resolver="lts-14.27" array
RUN stack install --only-dependencies --resolver="lts-14.27" asn1-encoding
RUN stack install --only-dependencies --resolver="lts-14.27" asn1-parse
RUN stack install --only-dependencies --resolver="lts-14.27" asn1-types
RUN stack install --only-dependencies --resolver="lts-14.27" async
RUN stack install --only-dependencies --resolver="lts-14.27" attoparsec
RUN stack install --only-dependencies --resolver="lts-14.27" authenticate-oauth
RUN stack install --only-dependencies --resolver="lts-14.27" auto-update
RUN stack install --only-dependencies --resolver="lts-14.27" base
RUN stack install --only-dependencies --resolver="lts-14.27" base-compat
RUN stack install --only-dependencies --resolver="lts-14.27" base-orphans
RUN stack install --only-dependencies --resolver="lts-14.27" base16-bytestring
Run Code Online (Sandbox Code Playgroud)
然而这有几个限制:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> d2a95ef3622d 11 seconds ago 67GB
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
636 次 |
| 最近记录: |