0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IBM Cloud Code EngineでGithubのプライベートリポジトリからソースを取得するよ

Posted at

前回、IBM Cloud Code Engine上にGithubのパブリックリポジトリからPythonのStreamlitサンプルプログラムを取得してデプロイする方法を説明しましたが、今回はGithubのプライベートリポジトリからソースを取得するための設定について説明します。

前回記事:Streamlit PythonをIBM Cloudへデプロイするよ

Githubプライベートリポジトリからのソース取得

メカニズムはGithub上で自分の公開鍵を登録しておいて、IBM Cloud Code Engine側にはその秘密鍵を登録します。IBM Cloud Code Engine側からはSSHを使ってGithub上のソースを取得する仕組みです。

SSH鍵の作成

これはすでに自分で作成して持っている人は飛ばしてください。そんなものは作った覚えがないということであれば次の手順で公開鍵と秘密鍵を作成します。

Macでターミナルを開いて公開鍵と秘密鍵があるか確認する

ターミナルを開いて前に作ったことがあるか確認します。自分は2016年に作ってたみたい

(base) saboten-no-MacBook-Pro:~ saboten$ ls -al .ssh
total 24
drwx------   5 saboten  staff   160  9 15  2016 .
drwxr-xr-x+ 59 saboten  staff  1888  2  3 10:06 ..
-rw-------   1 saboten  staff  1675  9 15  2016 id_rsa
-rw-r--r--   1 saboten  staff   418  9 15  2016 id_rsa.pub

公開鍵と秘密鍵の作成

もし利用している環境で上記のファイルがなければ今回新しく公開鍵と秘密鍵を作成します。

$ mkdir ~/.ssh
$ cd ~/.ssh
$ ssh-keygen -t rsa

このコマンドで下記3つを質問されます。すべてディフォルトでいいのでリターンキーを押してください。

  • 鍵の保存フォルダ(ディフォルトでホームディレクトリ直下の.sshフォルダです)
  • パスフレーズ(これ設定しません※)
  • パスフレーズ確認

※IBM Cloud Code Engine側から利用するときにパスフレーズで保護しないでと書かれていたので。

下記2つのファイルが~/.sshフォルダ以下に作成されれば公開鍵と秘密鍵が準備できました。

id_rsa
id_rsa.pub

Githubへの公開鍵の登録方法

これはGithubのヘルプにも記載されている手順ですが、Githubのアカウントから設定メニューを開いてSSH公開鍵をペーストします。

GithubのアカウントメニューからSettingsを選択します。

New SSH keyを押します

### 自分の公開鍵を設定します
$ pbcopy < ~/.ssh/id_rsa.pub

Macのターミナルでさきほど作成した公開鍵をクリップボードに入れます。
このあと、Github側のKey欄にクリップボードに入っている内容をペーストします。
そしてAdd SSH keyボタンを押して完了です。

これでGithub側の準備はできました。

IBM Cloud Code Engine側設定

コード・リポジトリー・アクセスの追加

IBM Cloud Code Engine側でコード・リポジトリー・アクセスを追加していきます。

  • Code Engine->プロジェクト->自分のプロジェクト
    画面左側のコード・リポジトリー・アクセスを選択して、作成ボタンを押します。

作成ボタンを押すとこの画面が出てくるので下記3つを入力します。

  • 名前 :任意の文字列で名前をつけます
  • コード・リポジトリー・サーバー
  • SSH秘密鍵

コードリポジトリーサーバー

下記のような記述をします。

github.com/(githubユーザー名)/(リポジトリ名)

自分の場合は次のリポジトリでやってみます。

github.com/saboten10/azure_text_to_speech

SSH秘密鍵

先ほど作成した秘密鍵を利用します。Macのコンソールで下記コマンドで秘密鍵をクリップボードに格納します。

$ pbcopy < ~/.ssh/id_rsa

この内容を画面のSSH秘密鍵のフィールドにペーストします。作成ボタンを押すとこのプロジェクトからコード・リポジトリー・アクセスが追加されます。

動作確認

実際にコードを引っ張ってきてデプロイしてみます。

ビルド詳細の指定

Cursor_Code_Engine_23_IBM_Cloud.png
アプリケーションのビルド指定で、コード・リポジトリーURLにGithubへのSSHアクセス用の宛先を記述します。

git@github.com:(ユーザー名)/(リポジトリ名).git

コード・リポジトリー・アクセスには先程作成したアクセス名を指定します。
これでGithubからソースを取得してきてビルドができるようになります。

まとめ

今回はIBM Cloud Code EngineでGithubのプライベート設定されているリポジトリからソースを取得してCode Engineにデプロイする方法を説明しました。Githubで公開したくないソースもたくさんあると思いますのでこの方法で試してみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?