获取长期有效docker login指令 本章节介绍如何获取长期有效的登录指令,长期有效登录指令的有效期为永久。 操作场景 本章节介绍如何获取长期有效的登录指令,长期有效登录指令的有效期为永久。 说明 l 为保证安全,获取登录指令过程建议在开发环境执行。 操作步骤 步骤 1 获取区域项目名称、镜像仓库地址。 登录SWR管理控制台。 将鼠标移至页面右上角用户名称上,在下拉菜单中,单击“我的凭证”。 图 我的凭证 在项目列表中找到您的虚拟机的所属区域及项目: 图 区域与项目 您可以按照获取到的项目信息拼接镜像仓库地址,拼接方式为: registry.区域项目名称.ctyun.cn 如用户虚拟机所在区域为苏州,那么对应的镜像仓库地址为:registry.cnjssz 1.ctyun.cn 。 步骤 2 获取AK/SK访问密钥。 注意 访问密钥即AK/SK(Access Key ID/Secret Access Key),表示一组密钥对,用于验证调用API发起请求的访问者身份,与密码的功能相似。如果您已有AK/SK,可以直接使用,无需再次获取。 登录IAM管理控制台,将鼠标移到用户名处,单击“我的凭证”。 在左侧导航栏中选择“访问密钥”,单击“新增访问密钥”。 输入描述信息,单击“确定”。 在弹出的提示页面单击“立即下载”。 下载成功后,在“credentials”文件中即可获取AK和SK信息。 表 credentials文件示例 User Name Access Key Id Secret Access Key a RVHVMX H3nPwzgZ 说明 为防止访问密钥泄露,建议您将其保存到安全的位置。 步骤 3 登录一台Linux系统的计算机,执行如下命令获取登录密钥。 printf "AK" openssl dgst binary sha256 hmac "SK" od An vtx1 sed 's/[ n]//g' sed 'N;s/n//' 请将AK 替换为步骤2 credentials文件 的 Access Key Id ,SK 替换为步骤2 credentials文件 的 Secret Access Key 。 示例: printf "RVHVMX" openssl dgst binary sha256 hmac "H3nPwzgZ" od An vtx1 sed 's/[ n]//g' sed 'N;s/n//' 执行上面的命令后,我们得到的登录密钥如下: cab4ceab4a1545 说明 以上密钥仅为示例,请以实际获得的密钥为准。 步骤 4 使用如下的格式拼接登录指令。 docker login u [区域项目名称] @ [AK] p [登录密钥] [镜像仓库地址] 其中,区域项目名称和镜像仓库地址在步骤1中获取,AK在步骤2中获取,登录密钥为步骤3的执行结果。 示例: docker login u cnjssz1@RVHVMX p cab4ceab4a1545 registry.cnjssz1.ctyun.cn 当显示“Login Succeeded”,即为登录成功。 说明 l 登录密钥字符串是经过加密的,无法逆向解密,从p无法获取到SK。 l 获取的登录指令可在其他机器上使用并登录。 步骤 5 (可选)当您退出仓库时,请使用以下命令删除您的认证信息。 cd /root/.docker/ rm f config.json 步骤 6 (可选)使用history c命令清理相关使用痕迹,避免隐私信息泄露。