2

私はすでに Python Django を使用してアプリケーションを開発しており、動作しています。Python Django は初めてで、heroku サーバーにデプロイする必要があります。heroku サイトを含む非常に多くのブログや Web サイトがあり、heroku に最初から Django アプリをデプロイする方法を説明しています。実行中のアプリについて話しているものは見つかりませんでした

たとえば、それらはすべてdjangoをインストールする必要があるため、混乱します。

これは私のアプリのフォルダー構造です:

 myapp
 |_my_app
 | |_Settingd.py
 | |_urls.py
 | |_wsgi.py
 |__webapp
    |_statics(folder) 
    |_admin.py
    |_models.py
    |_views.py

アプリはローカルで mysql サーバーに接続しています

質問:

今、私は完全に混乱しています。実行中のアプリをherokuにデプロイするにはどうすればよいですか? 以下に提供されているherokuにアプリをデプロイする手順の中で、どれが必須で、どれがエスケープできるか、および私のフォルダー構造によれば、requirements.txtまたはProcfileの場所はどこで、それらの内容は何ですか?

https://devcenter.heroku.com/articles/getting-started-with-django

virtualenv をインストールする必要がありますか? はい、このコマンドをどこで実行する必要がありますか(どのフォルダーで)、djangoまたはdjango用のデータベースAPIまたはドライバーをインストールする必要はないと思いますか? それらはすべてすでにインストールされているため、

4

1 に答える 1

2

あなたの最初の質問は、なぜアプリを Virtualenv 内で実行する必要があるのか​​ということです。

最初のステップは何ですか?Django をインストールしますよね?そうではありません。パッケージを現在の site-packages エリアに直接インストールする際の一般的な問題の 1 つは、複数のプロジェクトがある場合、またはコンピューターで Django 以外の目的で Python を使用している場合、アプリケーションとインストールされたパッケージの間で依存関係の問題が発生する可能性があることです。このため、 を使用virtualenvしてDjango installation. これは、Python と Django のユーザーの間で一般的であり、推奨される方法です。

次に、このコマンドを使用して virtualenv をインストールして有効にします...

$ virtualenv env

$ source env/bin/activate

そして最後に、環境をアクティブにしました。今、それはこのようになります

(env)rs@rajasimon-desktop:~/studio/Project$

次に、 django-toolbelt をインストールする目的は何ですか?

django-toolbelt をインストールする場合、必要なすべての依存関係またはパッケージがインストールされます。

Django、psycopg2、gunicorn、dj-database-url、dj-static、static が含まれています

まず、Heroku はネイティブで postgres を使用します。現地で使えば生活が楽になります。

本当に mysql を使用したい場合は、2 つの方法があります。

1) mysql をローカルで実行しますが、 https ://devcenter.heroku.com/articles/heroku-mysql で説明されているように、mysql2psql gem を使用して Heroku に移行するときに postgres に変換します。

2) https://addons.heroku.com/cleardbのような mysql アドオンを使用する

ただし、Heroku に組み込まれているので、postgres をエンド ツー エンドで使用することをお勧めします。

これは現在作業中の私のプロジェクト パッケージです。

(env)ri@rajasimon-desktop:~/studio/project$ pip freeze
Django==1.6.5
MySQL-python==1.2.5
Pillow==2.5.3
argparse==1.2.1
django-ckeditor-updated==4.2.8
wsgiref==0.1.2

requirements.txt と Procfile の場所はどこですか?

requirements.txtファイルの作り方

以下のコマンドを実行すると、txt ファイル内のすべてのパッケージが自動的に含まれます。

ピップフリーズ > requirements.txt

Procfile でプロセス タイプを宣言する

procfile は、本番環境で dyno を開始するためのものです。私はいつもこのように..

web: gunicorn project.wsgi

したがって、最終的にプロジェクト構造は次のようになります

myapp
 |_my_app
 | |_Settingd.py
 | |_urls.py
 | |_wsgi.py
 |__webapp
 |   |_statics(folder) 
 |   |_admin.py
 |   |_models.py
 |   |_views.py
 |__manage.py
 |__requirements.txt
 |__Procfile
于 2014-08-26T05:47:56.037 に答える