Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

add ssh keys in Docker

Tags:

git

docker

ssh

in my Dockefile i am adding ssh key to the docker and cloning a project from bitbucket. i can pull another branch in the Docker file easily.

ARG key
ARG pub_key
RUN mkdir /root/.ssh/
RUN ssh-keyscan bitbucket.org >> /root/.ssh/known_hosts
ADD $key /root/.ssh/
ADD $pub_key /root/.ssh/
RUN git clone [email protected]:******************/sql.git
WORKDIR "/sql"
RUN git pull origin testBranch

the repo is cloned sucesfully and and a pull is made successfully from the testBranch when i run this docker using docker run command and try any git command it says

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

but the ssh key is present in the directory /root/.ssh

like image 484
Usama Avatar asked Jun 01 '17 07:06

Usama


1 Answers

Your key is added against root user (/root/.ssh/). I guess when you run docker run you are switching to another user (maybe, docker).

If you add your id_rsa.pub to correct user (the user after running docker run command) then it should work.

$ whoami show you the current user.

like image 195
Sajib Khan Avatar answered Oct 13 '22 14:10

Sajib Khan