在 Docker 中使用 Composer 克隆私有仓库在运行时

问题描述

我正在尝试通过 Composer Docker image 使用 Composer 安装 PHP 软件包。其中一些包位于私有 git 存储库中,因此需要进行身份验证。

Docker 映像文档中列出的 SSH 代理方法由于未知原因不起作用。

eval $(ssh-agent); docker run --rm --interactive --tty \
    --volume $PWD:/app --user $(id -u):$(id -g) \
    --volume ${COMPOSER_HOME:-$HOME/.composer}:/tmp \
    --volume $SSH_AUTH_SOCK:/ssh-auth.sock --env SSH_AUTH_SOCK=/ssh-auth.sock \
    composer install --optimize-autoloader

我得到的错误

使用 ssh 密钥进行身份验证克隆失败,请输入您的 GitHub 访问私有仓库的凭据前往 https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+fe2cdd1a88f1+2021-05-04+1339 检索令牌。它将存储在“/tmp/auth.json”中以备将来使用 由 Composer 使用。

适用的私钥已添加到我主机上的 ssh-agent,我可以毫无问题地克隆那里的私有存储库。

我已经查看了许多类似问题,但没有发现任何导致存储库被克隆的问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)