14
20

More than 5 years have passed since last update.

Djangoの使い方~デプロイ編②~

Last updated at Posted at 2019-03-25

はじめに

Djangoの使い方~デプロイ編①~の続きです。
今回はデプロイ(インターネット上で実行できるようにする)をやります!

PythonAnywhere アカウントにサインアップする

PythonAnywhere はインターネット上でpythonを動かすためのサービスです。

ここから「Beginner」アカウントにサインアップしましょう(無料枠で大丈夫です)
ちなみにブログのURLは「あなたのユーザー名.pythonanywhere.com」になります

PythonAnywhere APIトークンの作成

 右上にある「Account」ページへのリンクをクリックし、「API Token」タブを選択し、
「Create new API token」ボタンをクリックして下さい。

これでAPIトークンが作成されました。

PythonAnywhere でサイトを設定する

トップページに戻り「Bash」をクリックしコンソールを起動します。
PythonAnywhereバージョンのコマンドラインです。

PythonAnywhereにWebアプリケーションをデプロイするには、
コードをGitHubからプル→PythonAnywhereが認識→デプロイ
をする必要があります。これを自動でできるツールがあるのでインストールします。

command-line
$ pip3.6 install --user pythonanywhere

Collecting pythonanywhere のようなメッセージがいくつか出力され、最終的にSuccessfully installed (...) pythonanywhere- (...)という行で終わります。

次にGitHub からアプリを自動的に構成するためのヘルパーを実行します。
https://github.com//my-first-blog.gitの部分はGitHubからクローンしたときのURLと一致します。

command-line
$ pa_autoconfigure_django.py https://github.com/your-github-username/my-first-blog.git

もしこんなエラーがでたら
You already have a virtualenv for...
Use the --nuke option if you want to replace it.

command-line
$ pa_autoconfigure_django.py https://github.com/your-github-username/my-first-blog.git --nuke

を入力してみましょう。

これにより以下を自動でやってくれます
・GitHubからコードをダウンロードする
・PythonAnywhere上にvirtualenvを作成する。
・一部のデプロイメント設定で設定ファイルを更新する
・manage.py migrateコマンドを使ってPythonAnywhere上のデータベースをセットアップする
・静的ファイルの設定
・APIを通じてPythonAnywhereがあなたのWebアプリケーションを提供するように設定する

PythonAnywhereとあなたのPC上のデータベースは別物なのでcreatesuperuserで管理者アカウントを初期化します。

command-line
(ola.pythonanywhere.com) $ python manage.py createsuperuser

混乱をさけるため自分のコンピュータで使用しているのと同じものを使用します。

PythonAnywhereのコードをlsを使ってみることもできます。

command-line
(ola.pythonanywhere.com) $ ls
blog db.sqlite3 manage.py mysite requirements.txt static
(ola.pythonanywhere.com) $ ls blog/
__init__.py __pycache__ admin.py forms.py migrations models.py static
templates tests.py urls.py views.py

最後にPythonAnywhereの「Web」ページをクリックしてリンクを取得し、
実際に動いているかみてみましょう。
成功画面.PNG

URLの最後に/admin/を追加すると、管理サイトに移動します。
これでデプロイができました!
管理画面.PNG

おわりに

次はURLについてです!
次回→Djangoの使い方~デザイン編①~

14
20
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
14
20