Gitlab CI/CD 我做错了什么?卡住

我有 centos 服务器,gitlab runner 正在处理它(不是在 docker 上,通过 cli 安装),我想在同一台服务器上部署我的存储库。

我有如下的 gitlab-ci 文件; 阶段部分工作正常,我正在将 docker 映像部署到 gitlab 中,但在部署阶段我想从存储库中获取它并进行补全。

任何建议或简单的方法?我糊涂了

stages:
  - publish
  - deploy
variables:
  TAG_LATEST: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:latest
  TAG_COMMIT: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:$CI_COMMIT_SHORT_SHA
publish:
  image: docker:latest
  stage: publish
  services:
    - docker:dind
  script:
    - docker build -t $TAG_COMMIT -t $TAG_LATEST .
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY
    - docker push $TAG_COMMIT
    - docker push $TAG_LATEST
deploy:
  image: alpine:latest
  stage: deploy
  tags:
    - deployment
  before_script:
  - echo "$ID_RSA"
  - echo "$CI_BUILD_TOKEN"
  - echo "$CI_REGISTRY"
  script:
    - chmod og= $ID_RSA
    - apk update && apk add openssh-client
    - ssh -i $ID_RSA -o StrictHostKeyChecking=no -p 4422 $SERVER_USER@$SERVER_IP "docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY"
    - ssh -i $ID_RSA -o StrictHostKeyChecking=no -p 4422 $SERVER_USER@$SERVER_IP "docker pull $TAG_COMMIT"
    - ssh -i $ID_RSA -o StrictHostKeyChecking=no -p 4422 $SERVER_USER@$SERVER_IP "docker container rm -f frontend || true"
    - ssh -i $ID_RSA -o StrictHostKeyChecking=no -p 4422 $SERVER_USER@$SERVER_IP "docker run -d -p 3000:3000 --name frontend $TAG_COMMIT"
qw25585613 回答:Gitlab CI/CD 我做错了什么?卡住

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/639188.html

大家都在问