I am trying to follow this instruction. I have a local git repo and when I do a git push, I need the repo to be pushed to my EC2 instance.
But, in the above tutorial, when I do a git push origin master
, I get Permission denied (publickey)
error because I did not specify the identity file.
Say, I login to EC2 like this: ssh -i my_key.pem [email protected]
So, can I do something similar here to: git -i my_key.pem push origin master
or set the identity file in .git/config
So, how can I set it up?
Update: Output of git config -l
user.name=my name
[email protected]
github.user=userid
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
remote.origin.url=ec2_id@my_e2_ip_address:express_app
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
Update (from @Jon's comment):
If you have your key in an odd path just run ssh-add /private/key/path
. This worked for me.
To copy your local ssh key to amazon try this
cat ~/.ssh/id_?sa.pub | ssh -i amazon-generated-key.pem ec2-user@amazon-instance-public-dns "cat >> .ssh/authorized_keys"
replacing the names of the key and amazon ec2 public dns, of course.
you will then be able to setup your remote on amazon