Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18.09 backport] builder / buildkit updates #1438

Commits on Oct 11, 2018

  1. Bump buildkit and dependencies to 39404586a50d1b9d0fb1c578cf0f4de7bdb…

    …7afe5
    
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    (cherry picked from commit 8cfd240)
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    thaJeztah committed Oct 11, 2018
    Configuration menu
    Copy the full SHA
    b4bee9b View commit details
    Browse the repository at this point in the history
  2. bump up buildkit

    Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
    (cherry picked from commit 846c38c)
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    AkihiroSuda authored and thaJeztah committed Oct 11, 2018
    Configuration menu
    Copy the full SHA
    50f529f View commit details
    Browse the repository at this point in the history
  3. build: add SSH agent socket forwarder (`docker build --ssh $SSHMOUNTI…

    …D=$SSH_AUTH_SOCK`)
    
    Unlike `docker build --secret`, `docker build --ssh` allows the build container to
    use SSH keys with passphrases.
    
      $ eval $(ssh-agent)
      $ ssh-add ~/.ssh/id_rsa
      (Input your passphrase here)
      $ docker build --ssh default=$SSH_AUTH_SOCK ...
    
    This feature requires the daemon with `CapExecMountSSH` build capability (moby/moby#37973) .
    
    Currently, the official Dockerfile frontend does not provide the syntax for using the SSH forwarder.
    
    However, the experimental `RUN --mount=type=ssh` syntax can be enabled by using
    the Dockerfile frontend image built with the `BUILDTAGS="dfrunmount dfssh"`, via the `# syntax =` "shebang".
    
    The Dockerfile for the Dockerfile frontend is available at  github.com/moby/buildkit/frontend/dockerfile/cmd/dockerfile-frontend)
    The pre-built image is also available as `tonistiigi/dockerfile:ssh20181002` .
    
    An example Dockerfile with `RUN --mount=type=ssh`:
    
      # syntax = tonistiigi/dockerfile:ssh20181002
      FROM alpine
      RUN apk add --no-cache openssh-client
      RUN mkdir -p -m 0700 ~/.ssh && ssh-keyscan gitlab.com >> ~/.ssh/known_hosts
      RUN --mount=type=ssh ssh git@gitlab.com | tee /hello
      # "Welcome to GitLab, @GITLAB_USERNAME_ASSOCIATED_WITH_SSHKEY" should be printed here
    
    More info available at moby/buildkit#608, moby/buildkit#655
    
    Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
    (cherry picked from commit db7399a)
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    AkihiroSuda authored and thaJeztah committed Oct 11, 2018
    Configuration menu
    Copy the full SHA
    e942084 View commit details
    Browse the repository at this point in the history
  4. build: only show buildkit-specific flags if buildkit is enabled

    Signed-off-by: Tibor Vass <tibor@docker.com>
    (cherry picked from commit bbd01fe)
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    Tibor Vass authored and thaJeztah committed Oct 11, 2018
    Configuration menu
    Copy the full SHA
    3dfacb5 View commit details
    Browse the repository at this point in the history