16.04 系统安装 docker 20.10.7 , 导入镜像 Image1:sudo docker load –input ~/Download/sd_build_docker.tar.gz 新建容器 xxx 挂载在共享目录 docker:sudo docker run -i -t -d -v /home/docker:/host –name sd_build sb_build_3 /bin/bash 启动 bash:sudo docker exec -it xxx /bin/bash 新建文件夹 file1 加入 key , 下载代码 Code1 ,编译成功
在共享目录 docker 下新建文件夹 file2 下载代码 Code2: git clone ssh://[email protected]:29418/buildsystem.git -b yyy 提示 key 报错: Cloning into 'buildsystem'... Permission denied (publickey). fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
我不用 docker 直接在 ubuntu 系统上下载代码是正常的没有报 key 的错误,请问这个是什么原因? 如何解决?
1
rekulas 2022-07-23 10:46:37 +08:00
容器里是隔离环境,你进入容器里 clone 那自然要配置认证才行的,要么容器里创建个新 key 加上去要么把主机的 key 复制进来,注意文件权限
|
2
wtfedc 2022-07-23 11:54:43 +08:00
正常流程,代码拉取该在 build 阶段就完成的
|
3
yhm2046 OP 搞定了:
rm -rf ~/.ssh/known_hosts cp id_rsa* ~/.ssh/ cp known_hosts ~/.ssh/ |
4
MengiNo 2022-07-24 10:50:59 +08:00
@yhm2046 这样操作 docker 官方是不推荐的,相当于泄露了宿主机的私钥。一般是用 -e SSH_AUTH_SOCK 的方式利用 ssh-agent 来传递。当然如果是个人开发用机 + 本地 docker daemon 倒也不用那么讲究。
|