我在使用一个私有github repo时,在我的NestJS应用程序中遇到了问题。当我使用
下面是我在Dockerfile中使用
无论如何,每次我尝试运行
有什么想法我做错了什么吗?
docker build
命令创建docker镜像时,镜像成功创建并且一切正常。但是我不能使用带有docker-compose
的Dockerfile。下面是我在Dockerfile中使用
BuildKit
挂载特性的部分代码:RUN mkdir -p -m 0600 ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts
RUN --mount=type=ssh npm install
当仅使用 Dockerfile
构建镜像时,我传递 --ssh default
参数,如下所示,并成功安装了私有仓库:
docker build --ssh default -t CONTAINER_NAME .
参考这篇文章,在docker-compose.yml
文件中,我包含了$SSH_AUTH_SOCK
,如下所示:
environment:
- NODE_ENV:${NODE_ENV}
- SSH_AUTH_SOCK:${SSH_AUTH_SOCK}
volumes:
- $SSH_AUTH_SOCK:${SSH_AUTH_SOCK}
无论如何,每次我尝试运行
docker-compose up
命令都会出现此错误。#11 44.97 npm ERR! code 128
#11 44.97 npm ERR! An unknown git error occurred
#11 44.97 npm ERR! command git --no-replace-objects ls-remote ssh://git@github.com/organization/repo.git
#11 44.97 npm ERR! git@github.com: Permission denied (publickey).
#11 44.97 npm ERR! fatal: Could not read from remote repository.
#11 44.97 npm ERR!
#11 44.97 npm ERR! Please make sure you have the correct access rights
#11 44.97 npm ERR! and the repository exists.
有什么想法我做错了什么吗?
docker-compose up
- larsks