pass
DockerHub 로그인에 자격 증명 저장소를 사용하고 싶습니다 . 따라서 주요 다음은이 링크
pass
(apt install pass
)을 설치했습니다 .- 설치했는데
docker-credential-pass
아래 4~7번의 지시사항을 따르세요.자격증명 저장소를 설정하는 방법존재하다이 다른 링크 ~/.docker/config.json
키 값 쌍을 추가하도록 파일을 수정했습니다."credsStore": "pass"
- GPG ID가 있으므로 명령을 통해 또는 (
gpg --list-secret-keys
표시되는 항목gpg -K
옆 줄에서 ) 이를 볼 수 있으며 정기적으로 일부 파일을 암호화하고 해독하는 데 사용합니다. 다시 다음을 따르세요.uid
[ultimate] MY_NAME <MY_EMAIL>
두 번째 링크아니면 포인트 2이것,내가 해냈어pass init MY_EMAIL
. 여기서 받았어요
mkdir: created directory '/home/user/.password-store/'
Password store initialized for MY_EMAIL
그래서 여기까지는 모든 것이 잘 진행되고 있는 것 같지만, 시도 docker login
하거나pass insert docker-credential-helpers/docker-pass-initialized-check
gpg: error retrieving 'MY_EMAIL' via WKD: No data
gpg: MY_EMAIL: skipped: No data
gpg: [stdin]: encryption failed: No data
Password encryption aborted.
하지만 앞서 말했듯이 gpg --output out_file.gpg --encrypt --recipient MY_EMAIL input_file
문제없이 정기적으로 사용하고 있습니다.
더 나아가 해결책은gpg: 검색 오류 '[이메일 보호됨]' WKD를 통해위에서 언급한 명령을 사용하여 키를 찾으면 gpg
볼 수 있기 때문에 내 문제에 맞지 않는 것 같습니다 expires: 2023-07-20]
.
그렇다면 이제 문제가 무엇입니까? 어떡해? 저는 데비안 11에서 일하고 있습니다.
아마도 이 질문은 다음 주장과 관련이 있을 것입니다.https://github.com/docker/docker-credential-helpers:
`pass` needs to be configured for `docker-credential-pass` to work properly. It must be initialized with a `gpg2` key ID. Make sure your GPG key exists is in `gpg2` keyring as `pass` uses `gpg2` instead of the regular `gpg`.
이것이 문제라면 어떻게 해야 합니까?
나는 또한 이것을 시도해 보았고 pass init ID
줄에서 ID를 얻는 대신 pass init MY_EMAIL
다음과 같은 것을 만났습니다.gpg2 --list-secret-keys --keyid-format=long
sec rsa3072/ID date ...
여기, 그러나 거기에 제공된 솔루션도 작동하지 않습니다.
미리 감사드립니다!
답변1
해결되었습니다!
문제는 "나의" 이전 GPG ID가 내 root
사용자의 것이므로 루트가 아닌 사용자로 키를 생성해야 한다는 것입니다.user