【发布时间】:2019-11-14 19:25:04
【问题描述】:
我正在尝试使用 Docker 容器内的 gitlab CI/CD 在我的 gitlab 项目中下载一个私有 gitlab 存储库包。
现在我收到以下错误:
- Installing {package} (dev-master 30bb2f3): Downloading Failed to download {package} from dist: Could not authenticate against gitlab.com
80 Now trying to download from source
81 - Installing {package} (dev-master 30bb2f3): Cloning 30bb2f3bb7
82
83 [RuntimeException]
84 Failed to execute git clone --no-checkout 'git@gitlab.com:{user}/{project}/{repo}.git'
我尝试了一切,但解决方案..
这篇文章对我没有帮助:GitLab CI: "Permission denied" when pulling private composer package
信息
- 我正确设置了SSH,因为项目部署会成功
- 我在我的 repo url 中使用部署令牌,但它没有帮助
- 私钥设置为gitlab变量
我的.gitlab-ci.yml
.init_ssh: &init_ssh |
which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )
eval $(ssh-agent -s)
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
mkdir -p ~/.ssh
chmod 700 ~/.ssh
ssh-keyscan gitlab.com >> ~/.ssh/known_hosts
chmod 644 ~/.ssh/known_hosts
echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
Composer:
stage: Build
script:
- *init_ssh
- composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts
我错过了什么吗?
【问题讨论】:
标签: laravel docker ssh gitlab-ci-runner