14

Vagrant を使用して、Heroku の Cedar スタックにできるだけ近い環境で Django Heroku アプリを開発したいと考えています。

モックアップ環境を構築するためにこれまでに見つけた最良のソリューションは、Eric Holmes の優れたhttps://github.com/ejholmes/vagrant-herokuです。ただし、この vagrant box は現在、私のアプリが使用し、Heroku がデフォルトで使用する Python 2.7.4 ではなく、python 2.6.x を使用しています。

私が見つけた他のリソースは、Heroku のhttps://github.com/heroku/stack-imagesです。これはまだ試していませんが、杉のスタックをローカルに作成する方法を提供しているようです。最終的に Python 2.7.2 になります。

これら(または他の何か)のどれが最善の方法ですか? 私は現在動作する開発環境を持っており、Heroku が使用するのと同じソフトウェア (PostgreSQL、Python 2.7.4 など) をすべて使用していますが、Heroku 環境の他の側面のいくつかをシミュレートしたいと思います (メモリ、ディスク容量、マルチマシン アーキテクチャなど)。

Eric Holmes のボックスを使用し、 https://askubuntu.com/questions/101591/how-do-i-install-python-2-7-2-on-ubuntuごとに Python 2.7.4 を追加することに傾いています。Eric の作品にパッチを提供したいのですが、私は Rubyist/veewee ではありません...

更新 1: 別の可能なリソース: https://github.com/torchbox/vagrant-django-base

更新 2: 上記の情報源などから適応させて、自分で作成することにしました。これらは、私が現在使用しているファイル (Vagrantfile および vagrant_data/install.sh) で、ある程度成功しています: https://gist.github.com/ErikEvenson/5801503。これにより、Ubuntu 12.04 512MB ボックスで Python 2.7.3 と PostgresSQL 9.2.4 にアクセスできます。

2 番目のボックスでデータベース サーバーを分割し、Python 2.7.4 を使用して Ubuntu 10.04 でアプリ サーバーを取得したいと考えています。

更新 3:セットアップが進化しました。これは私の現在の vagrant 構成です: https://gist.github.com/ErikEvenson/9763878

更新 4:今週、セットアップにいくつかの更新を行いました。最新はhttps://gist.github.com/ErikEvenson/9763878にあります。注:

  • virtualbox フォルダの同期の代わりに NFS を使用 - 大幅なパフォーマンスの向上。
  • 現在の virtualbox バージョンでのゲスト追加のバグを回避します。
  • バージョン管理されたベースボックスには、新しく利用可能な Vagrant Cloud を使用してください。

アップデート 5:いくつかのアップデート - 主にソフトウェア バージョン。最新はhttps://gist.github.com/ErikEvenson/9763878にあります。注:

  • Vagrant 1.6.3 を使用
  • PostgreSQL 9.3.3 を使用
  • Python 2.7.7 を使用し、ソースからインストールします。python 2.7.3 は、システム python として保持されます。
  • すべての依存バージョン、特に apt-get および npm を介してインストールされたバージョンをロックダウンします。
  • ベースボックスとしてhashicorp/precise64を使用。

使用するファイル構造は次のようなものです。

- Project directory
-- vagrant_data
--- db
---- install.sh
---- memcached.conf
---- pg_hba.conf
---- postgresql.conf
---- redis.conf
--- web
---- install.sh
-- Vagrantfile

更新 6: VirtualBox 4.3.14 でいくつかのバグが修正されたため、vagrant-vbguest をオンにします。

4

2 に答える 2

2

HerokuビルドパックをサポートするDokkuを試すことができます

于 2013-08-31T17:16:11.417 に答える