ytooyamaのブログ

サーバ構築とか、仕事で発見したこととか、趣味のこととかを書いています。

永遠に続くSending build context to Docker daemon

Dockerイメージを作ろうと、Docker for Macを入れた環境でdocker buildをしたら次のようなエラーが表示されました。 出力を見る限り、Docker daemonにどんどん何かを送っているようです。

下記は4.445GB程度を転送していた時の出力のコピペですが、実際はどんどんカウントアップされており、同時にシステムディスクの空き容量がどんどん減少していきました。とりあえずCTRL + Cで中止しました。

% docker build -t ytooyama/ubuntu-utils . 
ERRO[0010] Can't add file /Users/ytooyama/.gnupg/S.gpg-agent to tar: archive/tar: sockets not supported
ERRO[0010] Can't add file /Users/ytooyama/.gnupg/S.gpg-agent.browser to tar: archive/tar: sockets not supported
ERRO[0010] Can't add file /Users/ytooyama/.gnupg/S.gpg-agent.extra to tar: archive/tar: sockets not supported
ERRO[0010] Can't add file /Users/ytooyama/.gnupg/S.gpg-agent.ssh to tar: archive/tar: sockets not supported
Sending build context to Docker daemon  4.445GB

最初はmacOS固有のgnupg周りの問題かなと思ったのですが、いくら検索してもズバリといった情報は見つかりませんでした。そこで検索するキーワードをちょっと変えたところ、次のような情報を見つけました。

beniyama.hatenablog.jp

どうやら、Dockerファイルをホームディレクトリーにおいてdocker buildを実行したため、DockerクライアントからDocker daemonに対してホームディレクトリー配下のファイルを一所懸命転送していたようです。というわけで、~/working/dockerみたいなディレクトリーを掘って、そこにDockerfile「だけ」をおき、docker buildを実行してことなきを得ました。

その時に作ったのがこれです。作ったDockerイメージってDocker Hubで共有できるので便利ですね。