Docker 18.09+
では、次のアプローチを使用して、イメージを構築するときに転送されたsshキーを使用できます。
# syntax=docker/dockerfile:experimental
# example file
FROM node:10.15.3-Alpine
RUN apk update && apk add openssh-client git
# use the forwarded ssh key
RUN --mount=type=ssh git clone <repo>
次に、次のようなイメージを作成します。
DOCKER_BUILDKIT=1 docker build --ssh default .
これを実現するためにdocker-compose
を使用したいのですが、機能していないようです。 docker-composeコマンドには--ssh
フラグがなく、これを実現するためにdocker-compose.yml
ファイルに設定できるものが何も表示されません。
残念ながら、この問題に関するコメントに基づいて、これは現在サポートされていないと思います: https://github.com/docker/compose/issues/6358 -実際、「docker-compose BuildKit "は、BuildKitの使用が現在docker-composeでサポートされていないという事実を示しているように見える、さまざまなチケットへのリンクをいくつか示しています。
私が試した回避策(これらのチケットコメントの一部で述べたように)は、docker-composeを実行する前に、「docker build」を呼び出すシェルスクリプトを使用して、イメージを個別にビルドすることです。