如何在 shell 脚本中自动执行 Quay.io 登录?

How to automate Quay.io login in a shell script?

我有一个 shell 脚本,用于在实例化时配置我的 Ubuntu 实例。我需要做的一件事是登录到我的 Quay.io 帐户,这样我就可以从我的私人注册表中提取 docker 图像。有点像这样:

实例-Config.sh

#!/bin/bash

docker login quay.io -u 'myUserName' -p 'myPassword' -e 'me@mydomain.com'

docker run quay.io/myUserName/myContainerName


上面的脚本在登录 Dockerhub 时工作正常,但是当我尝试使用它登录 Quay.io 时,它会生成各种参数(-u、-p、-e)的提示。应自动填充命令中提供的参数。

如何为 Quay.io 自动登录?


我应该注意,我已经尝试登录,复制 ~/.dockercfg 文件的内容,然后尝试将结果字符串 echo 放入新的 .dockercfg 文件中Instance-Init.sh 脚本,但在生成并放置在 .dockercfg 文件中的身份验证令牌中必须有一个机器 ID 或其他内容,因此从一台机器生成的登录不能用于新实例(这可能是一件好事)。

土井。您需要将 host 参数放在 end 处,如 illustrated in their docs:

#!/bin/bash

docker login -u 'myUserName' -p 'myPassword' -e 'me@mydomain.com' quay.io

docker run quay.io/myUserName/myContainerName

希望这会帮助其他人节省一些时间。