Skip to content
This repository has been archived by the owner on Jan 8, 2024. It is now read-only.

Fix docker-pull remote operations build & push #3398

Merged
merged 4 commits into from
Jun 6, 2022

Conversation

paladin-devops
Copy link
Contributor

@paladin-devops paladin-devops commented Jun 1, 2022

In version 0.8.2 of Waypoint, using remote operations with the docker-pull plugin exits without building the app. The error produced is indicated in this log message:

[DEBUG] waypoint.runner.agent.runner.app.example-nodejs.mapper.stdio: received EOF, stopping recv loop: job_id=01G4FSXDE0HJMNADYC94CWZ8AN job_op=*gen.Job_Build err="rpc error: code = Unavailable desc = error reading from server: read unix @->/kaniko/tmp/plugin25197406: read: connection reset by peer

This PR corrects that problem by updating the OCI registry that's created to align with the registry stanza details. The Docker context is now also explicitly provided to Kaniko.

#3394 has more details on the issue with remote operations. This is a gist of the build log and waypoint.hcl where I tested this out.

…y instead of build. Fix Dockerfile for docker-pull with Kaniko to use image from build.
@vercel
Copy link

vercel bot commented Jun 1, 2022

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated
waypoint-ui ✅ Ready (Inspect) Visit Preview Jun 6, 2022 at 3:58PM (UTC)

@paladin-devops paladin-devops marked this pull request as ready for review June 1, 2022 17:58
@paladin-devops paladin-devops requested a review from a team June 2, 2022 18:07
@paladin-devops paladin-devops added the ecosystem Things related to waypoint interacting with external systems label Jun 2, 2022
Copy link
Member

@briancain briancain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comment from me! Otherwise looks pretty straight forward 😄

builtin/docker/pull/kaniko.go Outdated Show resolved Hide resolved
Copy link
Member

@briancain briancain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good to me! 👍🏻

Copy link
Contributor

@demophoon demophoon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good and remote building and pushing appear to work. However when testing this out it looks like we are still relying on docker for tagging images built with kaniko on remote runners.

✓ Running push build v2
❌ Tagging Docker image: registry-service/demophoon/nodejs-example:latest => registry-service/demophoon/nodejs-example:latest
! unable to tag image:Cannot connect to the Docker daemon at
  unix:///var/run/docker.sock. Is the docker daemon running?

I think this is automatically handled via kaniko when kaniko pushes the image to the registry so we might just need to skip that step for kaniko images.

Copy link
Contributor

@demophoon demophoon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ecosystem Things related to waypoint interacting with external systems plugin/docker plugin
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants