三浦製作所

興味のあるものをとりあえず動かしてみた、実装してみたシリーズをガンガン上げていきたいと思います。あくまでも自身の備忘録としてですが、誰かの助けになったらうれしいです。

DockerやAWSでgithubのプライベートリポジトリを使う方法

f:id:bamboomush:20210505225811p:plain

今回はdockerやAWS Robomaker上でgithubのプライベートリポジトリを使う場合の方法をまとめます。
結論から言うと、通常のsshと同じで、セキュリティ上の問題を考慮して、その都度sshキーを削除しましょうということです。 (いい方法を知っている方がいらっしゃいましたら教えていただきたいです)

昨今のロボット開発やweb開発ではDockerなどの仮想環境やAWSなどのクラウド環境での開発が可能になってきており、それが一般的となりつつあると思います。
特に、企業内の方との開発環境を共有しているようなケースもあるかと思いますので、セキュリティには十分に注意が必要です。
しかし、githubのプライベートリポジトリなどで、ソフトウェアを管理しているケースが多いと思います。
そんなときとても困りますよね...

そんなときのとりあえずのwork around対策ということでこの記事を書きます。ただし、全然いい方法ではないと思っているので、いい方法が分かり次第更新しようかと思います。

どんな状況か

Dockerなどの仮想環境やAWSのようなクラウド環境でのgithubプライベートリポジトリを使った開発がしたい

なにをしたか

よくあるsshの環境構築をしました。
本当は良くないことですが、これ以外いい方法がわからなかったです...
やり方自体はこちらの記事が大変参考になりますので、これを読むだけでいいのですが、この記事にも引用という形で書かせていただきます。

まず、公開鍵と秘密鍵を作成します。

cd ~/.ssh
ssh-keygen -t rsa

.sshディレクトリ内で、これをすることでssh keyを作成することができます。
ssh-keygenをしたあと3回Enterキーを押すことで、秘密鍵と公開鍵が作成されます。

ここからNew SSH keyをクリックして、sshキーを設定します。
この際に、keyの部分に生成した公開鍵の中身をそのままコピーします。

以下のコマンドを入力することで、接続しているのかの確認ができます。

ssh -T git@github.com

これで、Hi~みたいに返ってきたらOK
返ってこなかった場合は、.ssh/configを作成し、中身に以下の記述を追加する。

Host github github.com
  HostName github.com
  IdentityFile ~/.ssh/id_git_rsa #ここに自分の鍵のファイル名
  User git

これで、sshが繋がるようになります。
ここまでが、通常のsshの設定ですが、このまま放置しておくと、セキュリティ的に問題があるので、使用目的を達成したらその都度、sshキーを削除したほうが良さそうです。