kubernetes Docker登录时Gitlab Runner卡住

vshtjzan  于 2022-11-28  发布在  Kubernetes
关注(0)|答案(1)|浏览(189)

我通过HelmChart在我的Kubernetes集群上安装了GitLab runner
通过helm安装时,我使用了config values.yaml
但是我的Runner每次在docker login命令下都卡住了,docker login不能正常工作
我不知道出了什么问题......(任何帮助都感激不尽!

错误:write tcp 10.244.0.44:50882->188.72.88.34:443: use of closed network connection

.gitlab-ci.yaml文件

build docker image:
  stage: build
  image: docker:latest
  services:
    - name: docker:dind
      entrypoint: ["env", "-u", "DOCKER_HOST"]
      command: ["dockerd-entrypoint.sh"]
  variables:
    DOCKER_HOST: tcp://localhost:2375/
    DOCKER_DRIVER: overlay2
    DOCKER_TLS_CERTDIR: ""
  before_script:
     - mkdir -p $HOME/.docker
     - echo passwd| docker login -u user https://registry.labs.com --password-stdin
     
  script:
    - docker images
    - docker ps
    - docker pull registry.labs.com/jappweek:a_zh
    - docker build -t "$CI_REGISTRY"/"$CI_REGISTRY_IMAGE":1.8 .  
    - docker push "$CI_REGISTRY"/"$CI_REGISTRY_IMAGE":1.8
   
  tags:
  - k8s

values.yaml文件

image:
  registry: registry.gitlab.com
  #image: gitlab/gitlab-runner:v13.0.0
  image: gitlab-org/gitlab-runner
  # tag: alpine-v11.6.0

imagePullPolicy: IfNotPresent

gitlabUrl: https://gitlab.somebars.com

runnerRegistrationToken: "GR1348941a7jJ4WF7999yxsya9Arsd929g"

terminationGracePeriodSeconds: 3600

#
concurrent: 10

checkInterval: 30

sessionServer:
  enabled: false
 
## For RBAC support:
rbac:
  create: true

 
  rules: 
   - resources: ["configmaps", "pods", "pods/attach", "secrets", "services"]
     verbs: ["get", "list", "watch", "create", "patch", "update", "delete"]
   - apiGroups: [""]
     resources: ["pods/exec"]
     verbs: ["create", "patch", "delete"]

  clusterWideAccess: false

 
  podSecurityPolicy:
    enabled: false
    resourceNames:
    - gitlab-runner

  
metrics:
  enabled: false

  
  portName: metrics

 
  port: 9252

 
  serviceMonitor:
    enabled: false

  
service:
  enabled: false

 
  
  type: ClusterIP

  
runners:
 
  config: |
    [[runners]]
      [runners.kubernetes]
        namespace = "{{.Release.Namespace}}"
        image = "ubuntu:16.04"

  privileged: true

  cache: {}
    

  builds: {}
  
  services: {}
 
  helpers: {}
  
 
 
securityContext:
  allowPrivilegeEscalation: false
  readOnlyRootFilesystem: false
  runAsNonRoot: true
  privileged: false
  capabilities:
    drop: ["ALL"]

podSecurityContext:
  runAsUser: 100
  # runAsGroup: 65533
  fsGroup: 65533
 
resources: {}
 
affinity: {}

nodeSelector: {}
 
tolerations: []

hostAliases: []
 
podAnnotations: {}
  
podLabels: {}
  
priorityClassName: ""

secrets: []
 
configMaps: {}

volumeMounts: []

volumes: []
cngwdvgl

cngwdvgl1#

我绕过了docker login,将存储auth token$HOME/.docker/config.json文件从我的主机导入Gitlab Ci

before_script:
     - mkdir -p $HOME/.docker
     - echo $DOCKER_AUTH_CONFIG > $HOME/.docker/config.json

$DOCKER_AUTH_CONFIG就是$HOME/.docker/config.json
这就是全部,不需要docker login

相关问题