热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gitlab运行程序:无法登录到GitLab容器注册表

如何解决《Gitlab运行程序:无法登录到GitLab容器注册表》经验,为你挑选了1个好方法。

将gitlab-runner设置为具有executor的Docker容器后docker,我无法运行任何构建。显示的日志如下所示:

Running with gitlab-runner 11.4.2 (cf91d5e1)
  on  9f1c1a0d
Using Docker executor with image docker:stable-git ...
Starting service docker:stable-dind ...
Pulling docker image docker:stable-dind ...
Using docker image sha256:acfec978837639b4230111b35a775a67ccbc2b08b442c1ae2cca4e95c3e6d08a for docker:stable-dind ...
Waiting for services to be up and running...
Pulling docker image docker:stable-git ...
Using docker image sha256:a8a2d0da40bc37344c35ab723d4081a5ef6122d466bf0a0409f742ffc09c43b9 for docker:stable-git ...
Running on runner-9f1c1a0d-project-1-concurrent-0 via a7b6a57c58f8...
Fetching changes...
HEAD is now at 5430a3d 
Checking out 5430a3d8 as master...
Skipping Git submodules setup
$ # Auto DevOps variables and functions # collapsed multi-line command
$ setup_docker
$ build
Logging to GitLab Container Registry with CI credentials...
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get https://registry-1.docker.io/v2/: unauthorized: incorrect username or password
ERROR: Job failed: exit code 1

请注意尝试连接到docker-hub(我想)和凭据错误。但是我既不希望也不配置用户名/密码来访问docker-hub。有什么建议在这里有什么问题或如何进行调试吗?

向运行器注册了以下命令(该命令还指示配置文件的内容):

docker run --rm -ti \
  -v :/etc/gitlab-runner \
  -v $(pwd)/self-signed-server.crt:/etc/ssl/certs/server.crt \
  -v /var/run/docker.sock:/var/run/docker.sock \
  gitlab/gitlab-runner register \
    --tls-ca-file /etc/ssl/certs/server.crt \
    --url https://my.server.url/gitlab/ --registration-token  \
    --name myserver --tag-list "" \
    --executor docker --docker-privileged --docker-image debian \
    --non-interactive

--docker-privileged之所以使用,是因为我最初在这里讨论了相同的问题(感谢wendellmva)。我只是无法配置以特权本身运行gitlab-runner容器,但是即使没有,也看不到链接失败问题问题。



1> Olaf Mandel..:

为了克服这一点,需要覆盖CI_REGISTRY_USER项目设置-> CI / CD->变量块中的变量。分配一个空值将超过这一点。

背景:通过导出项目,然后使用jq解析JSON设置,可以获得运行的命令的预配置列表:

jq -r .pipelines[0].stages[0].statuses[0].commands project.json
# ...
function registry_login() {
  if [[ -n "$CI_REGISTRY_USER" ]]; then
    echo "Logging to GitLab Container Registry with CI credentials..."
    docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
    echo ""
  fi
}
# ...

因此,显然有一些非空字符串预装到CI_REGISTRY_USER,但带有无效CI_REGISTRY_PASSWORD

我还没有发现在哪里可以对所有项目进行全局设置,或者如何编辑AutoDevOps管道。


推荐阅读
  • 【疑难杂症】allennlp安装报错:Installing build dependencies ... error
    背景:配置PURE的算法环境,安装allennlp0.9.0(pipinstallallennlp0.9.0)报错ÿ ... [详细]
  • 我正在尝试将Firebase添加到涉及添加以下内容的现有应用程序中:classpath'com.googl ... [详细]
  • 这篇文章我们将会介绍一下如果使用gitlab和jenkins进行结合,通过api动态设定gitlab的webhook,实现每次向gitlab进行push操作的时候,jenkins的job会自动被 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • 概述H.323是由ITU制定的通信控制协议,用于在分组交换网中提供多媒体业务。呼叫控制是其中的重要组成部分,它可用来建立点到点的媒体会话和多点间媒体会议 ... [详细]
  • mysql自动打开文件_让docker中的mysql启动时自动执行sql文件
    本文提要本文目的不仅仅是创建一个MySQL的镜像,而是在其基础上再实现启动过程中自动导入数据及数据库用户的权限设置,并且在新创建出来的容器里自动启动My ... [详细]
  • 二十二、D3饼图Abstract在前一章中,你已经看到了条形图是如何表示某一类数 ... [详细]
  •     @font-face{font-family:Wingdings}@font-face{font-family:宋体}@font-face{font-family:Cam ... [详细]
  • docker+gitlab+gitlab-runner环境怎么部署
    本篇内容介绍了“docker+gitlab+gitlab-runner环境怎么部署”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带 ... [详细]
  • 我们正在合并到公司的Git中。我们有这种特定的情况,其中我们的主分支是我们 ... [详细]
  • 如何查询zone下的表的信息
    本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
  • 用JavaScript实现的太空人手表
    用JavaScript实现的太空人手表-JS写的太空人手表,没有用canvas、svg。主要用几个大的函数来动态显示时间、天气这些。天气的获取用到了AJAX请求。代码中有详细的注释 ... [详细]
  • 1需要的插件jenkins的git插件和jenkins的gitlab插件。2对接gitlab在系统配置中,随便起一个连接的名字,设置url,可以直接用ip地址,端口号默认是80,不需要写明。证书为 ... [详细]
author-avatar
Mini_敏児
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有