Herokuで運用しているDjangoのアプリケーションをクライアントに編集してもらうためのセットアップ手順をシェアする

ことはじめ

クライアントにHerokuで運用しているDjangoのアプリケーションを編集してもらうドキュメントを書いたのですが、有益な箇所もあるかもしれないと思ったのたのでここにメモしておきます。ちなみにクライアントのPCはMac OSX 10.9となります。

アプリの環境は以下のようになっています。

  • Heroku
  • Python2.7
  • Django1.6
  • SQLite
  • Memcached

また、バージョン管理にはBitbucketを使用しています。

第三者の開発者をBitbucket,Herokuに招待する

まず、オーナーがBitbucket,Herokuのアカウントを作成します。 次にオーナーが開発者をyour_appのレポジトリに招待します。 招待された開発者はHerokuにデプロイができたり、BitbucketにPushすることが出来ます。

Bitbucketに招待

以下のURLから手続きを行う。

https://bitbucket.org/your_name/your_repository/admin/access

Herokuに招待

以下のURLから手続きを行う。

https://dashboard.heroku.com/apps/your_app/access

Add New Collaboratorという欄にSend Invitationというボタンがあるので、これを押してHerokuに登録しているユーザーを 招待してください。

レポジトリをHerokuからダウンロード

以下のコマンドを入力してCloneを行う。

   git clone    git@heroku.com:your_app.git

次にCloneしたフォルダにまで移動する。

# cdコマンドで移動する
cd /path/to/your_app

/path/to/はyour_appをダウンロードしたディレクトリまでのパスですので、適宜書き換えてください。

パッケージマネージャであるpipをインストール

次に以下のURLを参考にしてPythonのライブラリを簡単にインストールするpipをインストールする。

http://www.lifewithpython.com/2012/11/Python-package-setuptools-pip.html

Virtualenvをインストール

次にVirtualenvをインストールして、Pythonの実行環境を整えます。

sudo pip install virtualenv
virtualenv-2.7 venv
source venv/bin/activate

外部ライブラリをインストール

次に使用しているPythonの外部ライブラリをpipを使ってインストールします。

cd /path/to/your_app
pip install -r requirements.txt

Memcachedのインストール・設定 (キャッシュ用)

brew install libevent
brew install memcached

デーモンで起動させておくためにplistを作成します。

/Library/LaunchDaemons/homebrew.memcached.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>memcached</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/memcached</string>
<string>-u</string>
<string>furodrive</string> //ここは自分のアカウント名に適宜書き換え
<string>-m</string>
<string>32</string>
</array>
</dict>
</plist>

サービスの登録

sudo launchctl load /Library/LaunchDaemons/homebrew.memcached.plist

Memcachedの起動

sudo launchctl start memcached

Memcachedの動作確認

telnet localhost 11211

Webサーバーを起動する。

cd /path/to/your_app
python manage.py runserver

ブラウザで 

http://localhost:8000

を開いて見ることができたらここまでのステップは完了です。

ローカル側でcommitをしてbitbucketにpush出来るようにする

コードを編集する前に必ず

git pull origin master

を入力して、リモート側とローカル側の同期を行ってください。

コードを編集したら、変更をコミットします。

git add .
git commit -m "メッセージを挿入"

Bitbucketにローカルの変更を反映させます。

git push origin master

次にHerokuにローカルの変更を反映させます。

git push heroku master

以上で完了です。 少しでも有益なお役に立てれば幸いです。

Related Contents

Pickup Contents