我需要创建一个Docker容器,其中包含一些存储在Gitlab中的Python包。包A有依赖项B和C,它们也存储在单独的Gitlab仓库中。它们都在同一个组中。在不创建一个新的Gitlab并使用自己的SSH密钥的情况下,最好的方法是什么?我尝试使用Project Access Tokens
解决它,然后在运行pip install git+https://<username>:<access_token>@<gitlab-domain>/<group>/mypackageA.git
时指定username
和access_token
。这当然适用于此包,但是对于包B和C失败,因为这些依赖项在包A的setup.cfg
中作为mypackageB @ git+https://<gitlab-domain>/<group>/mypackageB.git
列出。由于我无法编辑setup.cfg
文件本身,有没有办法在我的Dockerfile中解决这个问题?或者,是否可以设置对整个组的更通用的访问,并在构建容器时将其用于所有依赖项?
1条答案
按热度按时间lx0bsm1f1#
解决方案是使用组令牌,然后在我的Dockerfile中设置
git config --global url."https://${GITLAB_LOGIN}:${GITLAB_PWD}@gitlab".insteadOf https://gitlab
。