bugfix> docker > 投稿

travisにドッカーをキャッシュしたい。最善の方法は、新しく作成したイメージをディスクに保存するだけですDocker Save

従来のone-image-dockerビルドでは非常に簡単ですが、小さな最終イメージが必要なので、多段階で行います。

FROM danlynn/ember-cli:3.0.0 AS deps
RUN mkdir -p /client
# get nodejs deps:
COPY client/package.json /client/
COPY client/package-lock.json /client/
WORKDIR /client
RUN npm install node-sass
RUN npm install
RUN npm rebuild node-sass
... more long operations
FROM node:wheezy AS server
COPY --from=deps /client/ /client/

画像をすぐに保存する方法はありますかデプス 後で復元しますか?

回答 1 件
  • docker build --target で特定のステージを構築できます 、すべてのステージを常に構築する必要はありません。これはあなたの場合に役立つはずだと思います。

    これについては、Dockerのドキュメントhttps://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stageで確認できます。

    When you build your image, you don’t necessarily need to build the entire Dockerfile including every stage. You can specify a target build stage. The following command assumes you are using the previous Dockerfile but stops at the stage named builder: Blockquote

    $ docker build --target builder -t alexellis2/href-counter:latest .

    外部イメージをステージとして使用することもできます。これは同じドキュメントで説明されているため、次のようなことができます。

    COPY --from=nginx:latest /etc/nginx/nginx.conf /nginx.conf

あなたの答え