[container][docker][buildkit] docker 18.09環境でBuildKitを有効にすると、名前解決に失敗する。

     
    • 最終更新日時:2019/02/01 10:49:07

    Embed
    rye-jessen-785346-unsplash.jpg

    [docker][自分用メモ] Docker 18.09から正式になったBuildKitが思いのほか快適だった: いつか、そのとき、あの場所で。
    以前に上記なような記事を書いており、そのときからBuildKitの恩恵に預かっていたのですが、今日docker buildしようとしたところ、パッケージアップデートの際に名前解決に失敗する現象に遭遇しました。

    docker buildの際に名前解決に失敗する件は、docker界隈では有名な感じらしく、以下のようなissueがあったりしますし、google検索を行ってもちらほらと見受けられます。
    Temporary error (try again later) · Issue #334 · gliderlabs/docker-alpine
    が、今回はちょっと違うようでして、/etc/docker/daemon.jsonには、予めgoogleやCloudFlareなどを指定していたのですが、問題が解決しません。

    自分の環境では以下のような感じです。
    $ docker version 
    Client:
    Version: 18.09.1
    API version: 1.39
    Go version: go1.10.6
    Git commit: 4c52b90
    Built: Wed Jan 9 19:42:36 2019
    OS/Arch: linux/arm64
    Experimental: false

    Server: Docker Engine - Community
    Engine:
    Version: 18.09.1
    API version: 1.39 (minimum version 1.12)
    Go version: go1.10.6
    Git commit: 4c52b90
    Built: Wed Jan 9 19:03:16 2019
    OS/Arch: linux/arm64
    Experimental: true

    $ docker build --rm -t kometchtech/zabbix-agent:4.0.3 zabbix-agent/
    [+] Building 5.4s (8/14)
    => [internal] load build definition from Dockerfile 0.1s
    => => transferring dockerfile: 2.93kB 0.0s
    => [internal] load .dockerignore 0.0s
    => => transferring context: 2B 0.0s
    => [internal] load metadata for docker.io/arm64v8/alpine:latest 0.0s
    => CACHED [internal] helper image for file operations 0.0s
    => CACHED [runtime 1/2] FROM docker.io/arm64v8/alpine:latest 0.0s
    => [internal] load build context 0.1s
    => => transferring context: 11.27kB 0.0s
    => ERROR [build 2/5] RUN apk add --update --no-cache -t .build-dep build-base clang autoconf automake openssl-dev 5.3s
    => ERROR [runtime 2/2] RUN addgroup zabbix && adduser -S -D -G zabbix -h /var/lib/zab 5.2s
    ------
    > [build 2/5] RUN apk add --update --no-cache -t .build-dep build-base clang autoconf automake openssl-dev pcre-dev coreutils libevent-dev curl lld :
    #9 1.149 fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/aarch64/APKINDEX.tar.gz
    #9 3.154 WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.9/main/aarch64/APKINDEX.tar.gz: temporary error (try again later)
    #9 3.155 fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/aarch64/APKINDEX.tar.gz
    #9 5.163 WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.9/community/aarch64/APKINDEX.tar.gz: temporary error (try again later)
    #9 5.163 ERROR: unsatisfiable constraints:

    おやと思い検索してみると以下のようなものが見つかりました。
    Support custom DNS from dockerd config · Issue #734 · moby/buildkit
    buildkit + gcr.io private repos (credHelpers) do not stack · Issue #720 · moby/buildkit
    どうやら、docker 18.09.1の環境でBuildKitを有効にしてbuildしようとすると失敗するみたいです。

    /etc/resolv.confを編集したら問題が解消したという人もいましたが、自分の環境では改善しませんでした。
    ということで、この問題が解決するまでは一旦BuildKitを無効にしておこうかと思います。

    buildkitを無効にすると問題なくbuildできることは確認しています。
    $ DOCKER_BUILDKIT=0 docker build --rm -t kometchtech/zabbix-agent:4.0.3 zabbix-agent/
    Sending build context to Docker daemon 16.38kB
    Step 1/30 : FROM arm64v8/alpine:latest AS build
    ---> 37392b799685
    Step 2/30 : ARG MAJOR_VERSION=4.0
    ---> Running in 2a7c65b5d225
    Removing intermediate container 2a7c65b5d225
    ---> 2cf686d259cf
    Step 3/30 : ARG ZBX_VERSION=${MAJOR_VERSION}.3
    ---> Running in d07e47a7c2d8
    Removing intermediate container d07e47a7c2d8
    ---> 80eec9de45c8
    Step 4/30 : ENV ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
    ---> Running in 0cfecc464224
    Removing intermediate container 0cfecc464224
    ---> 226410982b5a
    Step 5/30 : ARG ZBX_SOURCES="http://repo.zabbix.com/zabbix/${MAJOR_VERSION}/ubuntu/pool/main/z/zabbix/zabbix_${ZBX_VERSION}.orig.tar.gz"
    ---> Running in 7777b59bb373
    Removing intermediate container 7777b59bb373
    ---> 19e70178e8fb
    Step 6/30 : ENV BUILD_PKGS="build-base clang autoconf automake openssl-dev pcre-dev coreutils libevent-dev curl lld "
    ---> Running in 5cb60209ed6b
    Removing intermediate container 5cb60209ed6b
    ---> 06833bc2c62e
    Step 7/30 : ARG CFLAGS="-O2 -pthread -pipe -fPIC -fPIC -FORTIFY_SOURCE=2 -fPIE "
    ---> Running in 068d5c6c5903
    Removing intermediate container 068d5c6c5903
    ---> c7cbad318eae
    Step 8/30 : ARG CXXFLAGS="${CFLAGS}"
    ---> Running in 2dc674080a89
    Removing intermediate container 2dc674080a89
    ---> df8253c00270
    Step 9/30 : ARG LDFLAGS="-Wl,-O2 -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -fuse-ld=lld "
    ---> Running in 631af5141e4d
    Removing intermediate container 631af5141e4d
    ---> 0628080b90c0
    Step 10/30 : ENV CC="clang"
    ---> Running in a2da792d1192
    Removing intermediate container a2da792d1192
    ---> 956f012af60f
    Step 11/30 : ENV CXX="clang++"
    ---> Running in 0a749d9e4325
    Removing intermediate container 0a749d9e4325
    ---> 752d8f373170
    Step 12/30 : RUN apk add --update --no-cache -t .build-dep ${BUILD_PKGS}
    ---> Running in 091971258d29
    fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/aarch64/APKINDEX.tar.gz
    fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/aarch64/APKINDEX.tar.gz
    (1/54) Installing binutils (2.31.1-r2)
    (2/54) Installing libmagic (5.35-r0)
    (3/54) Installing file (5.35-r0)


    また、他の情報として、dockerでbuildせずに他のツールを使用するなどの方法もあるそうです。
    genuinetools/img: Standalone, daemon-less, unprivileged Dockerfile and OCI compatible container image builder.
    まぁうちのメイン環境はAarch64/ARM64なんで使えないんですが・・・(自前でbuildすることは検討中です)

    関連記事


    Pagination

    Trackback

    Trackback URL

    https://kometchtech.blog.fc2.com/tb.php/2213-11c22176

    Comment

    Post Your Comment

    コメント登録フォーム
    公開設定

    Utility

    Profile

    kometchtech

    Author:kometchtech
    なんちゃってエンジニアです。
    2009年10月から業務都合により大阪勤務になりました。
    2010年1月、HYBRID W-ZERO3を購入しました。
    2010年11月、HTC Desire HDを購入しました。
    2012年2月、都内の会社に転職しました。
    2012年5月、HTC One Xを購入しました。
    2012年8月、事情により休職しました。
    2012年8月、SONY Xperia SXを購入しました。
    2013年1月、一身上の都合により退職しました。
    2014年3月、都内の会社に就職しました。
    2016年8月、HPC系の会社に転職しました。
    2018年6月、Xperia XZ1 compactに機種変。

    Amazonほしい物リスト
    何か問題などありましたら、こちらまで。 Twitter:@kometchtech follow us in feedly

    カレンダー

    01 | 2019/02 | 03
    - - - - - 1 2
    3 4 5 6 7 8 9
    10 11 12 13 14 15 16
    17 18 19 20 21 22 23
    24 25 26 27 28 - -

    記事リスト

    最新の記事

    全記事(数)表示

    全タイトルを表示

    バロメーター

    カテゴリー

    カテゴリークラウド

    アーカイブ

    検索フォーム

    FCカウンター

    オンライン

    現在の閲覧者数:

    Amazonアソシエイト

    スポンサードリンク

    月間ページランキング

    ブログパーツ

    サイトランキング