转载请注明出处,如果您觉得文章有用,就点个赞吧!
- 安装环境是Centos8.0
- 适合华为鲲鹏云(Arm架构)和X86架构
- 安装加密软件
yum -y install pass gnupg2
wget https://github.com/docker/docker-credential-helpers/releases/download/v0.6.3/docker-credential-pass-v0.6.3-amd64.tar.gz
tar -xf docker-credential-pass-v0.6.3-amd64.tar.gz
cp docker-credential-pass /usr/bin/
chmod +x /usr/bin/docker-credential-pass
这里需要注意下,直接下载的docker-credential-pass在arm环境上运行报错
我使用的是鲲鹏云服务器,所以我这里选择的源码安装步骤如下:
yum -y install golang #安装go环境
cd /usr/lib/golang/src
mkdir github.com/docker
cd github.com/docker
wget https://codeload.github.com/docker/docker-credential-helpers/tar.gz/v0.6.3
tar -xf docker-credential-helpers-0.6.3
mv docker-credential-helpers-0.6.3 docker-credential-helpers
cd docker-credential-helpers
make pass #使用pass方式安装
cp bin/docker-credential-pass /usr/bin/
chmod +x /usr/bin/docker-credential-pass
- 退出登录
非必选步骤,如果之前有登录过,请登出
docker logout
- 修改docker配置
vim /root/.docker/config.json
{
"auths": {
},
"HttpHeaders": {
"User-Agent": "Docker-Client/19.03.12 (linux)"
},
"credsStore": "pass" #添加此行
}
- 生成密钥对
gpg2 --full--generate-key
# 有效期选择0,也就是无有效期
# 其他的都默认,最后一步输入密码,请记住该密码
# 完成后输入字母O,退出
- 使用pass管理密码
pass init uid #初始化pass
# 这里的uid 可以通过 gpg2 -k查看
- 重新登录docker registry
docker login --username=xxx registry.cn-hangzhou.aliyuncs.com
# 输入密码登录