はじめに

はいさい!沖縄支店の石原です。
今年のお盆はすべて平日だったこともあり、親戚の集まりに参加できませんでした。
言えばお休みをもらえたと思うのですけどね。



さて、最近はGitHubでのソース管理がすっかり浸透しているイメージがあります。
社内でのソース管理だけでなく、一緒にお仕事させていただくデザイナの方とも
GitHub上でソース管理しながら開発を進めていく機会が増えてきました。


今回は、Capistranoでデプロイする際のGitHubの設定について書きたいと思います。 

まずは結論から

  1. 共通鍵を登録する
  2. GitHub.com に公開鍵を登録する
  3. 接続を確認する
  4. rbファイルの設定を行う
  5. Capistranoの実行

1. 共通鍵を作成する 

まずは、GitHubに登録する秘密鍵の作成を
サーバ側で行います。
「id_rsa 作成」などのキーワードで検索すればすぐにHITするかと思いますが、
以下にコマンドを書いておきます。
$ cd ~/.ssh
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/(username)/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
基本的に、2行目以降は何も入力せずEnterを押していけば作成できるかと思います。
 

2. GitHub.com に公開鍵を登録する 


GitHubではSSHを利用した公開鍵認証で
アクセスを行うため、公開鍵をGitHub側に登録する必要があります。
設定画面の SSH and GPG keys 画面から、公開鍵情報を登録します。

GitHub-setting-01

画面右上の「New SSH Key」 ボタンをクリックすると、公開鍵を登録する入力エリアが表示されるので、
生成した公開鍵の情報を登録してください。

3. 接続を確認する 

登録が完了したら、正しく接続ができるかを確認します。
サーバ側で以下のコマンドを入力して接続を確認してください。
$ ssh -T git@github.com
初めてgithubへ接続する場合、接続を許可していいか確認のメッセージが表示されます。
以下のメッセージが返ってきたら無事接続完了です。

Hi *****l! You've successfully authenticated, but GitHub does not provide shell access.

4. rbファイルの設定を行う 

導通確認ができたら、Capistranoの設定ファイルで、以下のように設定を行います。
共通設定の deploy.rb に直接記述してもいいですが、
開発、本番の環境に合わせて調整することが多いため
deploy/[各環境用のファイル名].rb に記述することをお勧めします。

server 'localhost', user: {実行ユーザ名}

set :application, "{アプリケーション名}"
set :repo_url, "{gitのリポジトリURL; ssh://github.com/***/***.git}"
set :branch, 'master'

set :deploy_to, "{デプロイを実行するディレクトリパス}" 

5. Capistranoの実行 

設定を完了したら、前回設定したJenkinsのジョブでデプロイしてみましょう!



第4回の記事はこちら