首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GitHub操作对码头注册中心登录失败

GitHub操作对码头注册中心登录失败
EN

Stack Overflow用户
提问于 2021-03-29 11:26:54
回答 1查看 192关注 0票数 0

我有一个项目,其中我有一个shell脚本,可以在成功构建后将图像推入Docker中心。在脚本中,我定义了以下内容:

代码语言:javascript
复制
  echo "Attempting log in to $DOCKER_REGISTRY_URL"
  echo "$DOCKER_REGISTRY_PASSWORD" | docker login -u "$DOCKER_REGISTRY_USERNAME" --password-stdin

当管道运行时,我看到以下消息:

代码语言:javascript
复制
Attempting log in to hub.docker.com
Error: Cannot perform an interactive login from a non TTY device
Error: Process completed with exit code 1.

我完全不明白为什么会发生这个错误,我应该如何修复它。我不想为此目的使用GitHub操作作业,因为这意味着我的整个逻辑不再可移植到其他CI系统。我想把它保存在shell脚本中。我有什么办法解决这个尖锐的问题吗?

下面是我的GitHub操作脚本:

代码语言:javascript
复制
  - name: docker-push
    env:
      GH_REPO: github.com/${{ env.USER }}/${{ env.DEPLOYMENT_REPO_NAME }}
      API_TOKEN: ${{ secrets.API_TOKEN }}
      DOCKER_APP_URL: ${{ env.DOCKER_REGISTRY_URL }}/${{ env.USER }}/plant-simulator

    run: |
      echo "Running sbt assembly for release version $RELEASE_VERSION"
      sbt "set test in assembly := {}" assembly
      bash docker/docker_push.sh && \
      bash ./.github/scripts/tag_deployment
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-29 13:01:26

您的脚本正在运行:

代码语言:javascript
复制
echo "$DOCKER_REGISTRY_PASSWORD" | docker login -u "$DOCKER_REGISTRY_USERNAME" --password-stdin

在我看来是对的。确保:

您已经添加了一个带有码头注册密码的存储库秘密(为了一致性起见,让我们使用DOCKER_REGISTRY_PASSWORD) )

  1. 在环境变量中为脚本提供了这个秘密。

环境: DOCKER_REGISTRY_PASSWORD:${{机密。DOCKER_REGISTRY_PASSWORD }

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66853393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档