basecamp / kamal

Deploy web apps anywhere.
https://kamal-deploy.org
MIT License
10.66k stars 410 forks source link

error: failed to do request: Post "url" EOF #721

Closed dawidof closed 6 months ago

dawidof commented 6 months ago

I've got such config in deploy.yml

service: platform-production

image: platform-production/backend

servers:
  - <ip from aws>

registry:
  server:<aws account id>.dkr.ecr.eu-west-1.amazonaws.com
  username: AWS
  password: <%= %x(aws ecr get-login-password --region eu-west-1 --profile linked) %>

Image done, but it's failing while pushing to ECR

DEBUG [53870785]  #53 [linux/arm64 stage-0 24/24] COPY . .
DEBUG [53870785]  #53 DONE 12.2s
DEBUG [53870785]
DEBUG [53870785]  #54 [linux/amd64 stage-0 24/24] COPY . .
DEBUG [53870785]  #54 DONE 12.2s
DEBUG [53870785]
DEBUG [53870785]  #55 exporting to image
DEBUG [53870785]  #55 exporting layers
DEBUG [53870785]  #55 exporting layers 17.8s done
DEBUG [53870785]  #55 exporting manifest sha256:a9521794cf1068a68b5d2bb7968140ce54ca5ec69f99d82c86e12ab9586089f4 0.0s done
DEBUG [53870785]  #55 exporting config sha256:cca1b105eeb0ba81c764aaec112f981e5740102878c530c9beb35a0cd264a69d done
DEBUG [53870785]  #55 exporting attestation manifest sha256:ef43e9a7a091f95167e0e4db576653ee4751e472cb714b1954c471b331b3ebbe 0.0s done
DEBUG [53870785]  #55 exporting manifest sha256:33ca41602342a9c14c65290cc49ef368e650a16653cb02b8df2d7c435dc0865e done
DEBUG [53870785]  #55 exporting config sha256:88fe79edf0e508e5c792e0672c6fa239f39843130a235127b0daedd5c705521f done
DEBUG [53870785]  #55 exporting attestation manifest sha256:374bc25dc2b9869ed95639e41cfc2892a7d5543c86bde69c4bdadeaf718f6e77 0.0s done
DEBUG [53870785]  #55 exporting manifest list sha256:338cab9c5dbf3c94ba97e2cbd318ad9464cb69c528b26c798746edff50b7ca64 done
DEBUG [53870785]  #55 pushing layers
DEBUG [53870785]  #55 ...
DEBUG [53870785]
DEBUG [53870785]  #56 [auth] sharing credentials for <aws account id>.dkr.ecr.eu-west-1.amazonaws.com
DEBUG [53870785]  #56 DONE 0.0s
DEBUG [53870785]
DEBUG [53870785]  #55 exporting to image
DEBUG [53870785]  #55 18.40 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.40 retrying in 1s
DEBUG [53870785]  #55 18.41 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.41 retrying in 1s
DEBUG [53870785]  #55 18.41 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.41 retrying in 1s
DEBUG [53870785]  #55 18.46 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.46 retrying in 1s
DEBUG [53870785]  #55 18.47 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.47 retrying in 1s
DEBUG [53870785]  #55 18.61 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.61 retrying in 1s
DEBUG [53870785]  #55 18.68 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.68 retrying in 1s
DEBUG [53870785]  #55 18.68 error: failed to do request: Post "https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/": EOF
DEBUG [53870785]  #55 18.68 retrying in 1s

... Returns the same error around 50 times

Kamal is trying to push to strange url https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/v2/platform-production/backend/blobs/uploads/, but should be sth like https://<aws account id>.dkr.ecr.eu-west-1.amazonaws.com/platform-production:latest.

I think it shouldn't be /v2, /blobs/uploads in the url and there should be the version

dawidof commented 6 months ago

Resolved it by changing image line to image: platform-production (the same as the name of repo in ecr)