Linux(RHEL8)에서 내부 부두 레지스트리에 푸시를 사용하려고 하는데 podman
실행하면 podman push
다음과 같은 "Bearer Token"에 대한 오류가 발생합니다.
podman login -u="quay_robot_username" -p="quay_robot_password" quay.companydomain.com
Login Succeeded!
podman push f8f914cef1ce0cc6314355ae5d16c6d5faf96e595fa1332cf40d26f9c53b9c07 quay.companydomain.com/organization/repository/a890f2e
Getting image source signatures
Error: trying to reuse blob sha256:0c23ed2428e1ef41fdb571789f6968dd47c95135311b1c8bf56462c98581694b at destination: Requesting bearer token: invalid status code from registry 400 (Bad Request)
사용자 이름과 비밀번호로는 docker 저장소에 대한 쓰기 권한이 있는 docker 봇을 사용하고 있습니다.
Authorization: Bearer <mytoken>
나는 quay가 http 요청 헤더를 찾고 있다는 것을 알고 있습니다 .
podman push
헤더에 전달자 토큰이 있는지 확인 하려면 생성된 http 요청의 헤더를 확인하는 것이 좋습니다 . 그러나 오류가 발생하면 존재하지 않는 것으로 가정합니다.
두 가지 질문:
- 아직 보유자 토큰이 없다면 어떻게 얻을 수 있나요?
내 부두 조직에서 Oauth 앱을 만들고 거기에서 액세스 토큰을 생성했습니다. 컬 요청에서 이를 성공적으로 사용할 수 있었습니다.
curl -X GET -H "Authorization: Bearer <mytoken>" https://quay.companydomain.com/api/v1/repository/organization/myrepository/tag/ | jq
이 토큰이 에 적용됩니까 podman push
?
- 토큰이 있으면 이를
podman push
명령의 http 요청에 어떻게 포함합니까?
참고: 저는 이것을 github 작업에서 시작했지만 단순화하기 위해 명령줄에서 작동시키려고 했습니다(어느 쪽이든 동일한 오류가 발생합니다).