12
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DjangoGirlsで作ったWebアプリを、ConoHa VPSでデプロイ

Last updated at Posted at 2019-01-22

はじめに

【DjangoGirlsのチュートリアル】 を終えた。
 ↓
次はオリジナルのWebアプリを作って公開したい。
 ↓
どこかサクッと構築できる本番環境ないかな...?
 ↓
ConoHa VPSのメニューの中に 「アプリケーション -> Django」 を見つけた!

というわけで、ConoHa VPSでDjango Webアプリのデプロイをやってみました。

前提条件

DjangoGirlsのチュートリアルのデプロイのところまで実施済み
・Unixのviコマンドを使って簡単なファイル編集ができる

環境

##ローカル側(Mac)
・Python:3.6.4
・virtualenv他:DjangoGirlsチュートリアルに従っています。

##サーバー側(ConoHa VPS)
・CentOS:7.5
・Python:3.6.5
・Django:2.0.6

##デプロイ対象のプロジェクト名(Directory名)
djangogirls

手順

1. ConohaにDjango入りサーバーを追加

1.1. Conoha VPSにログイン

・ConoHa が初めての方は新規登録してください。
ConoHa VPS にログインしてください。

1.2. Django入りサーバーを追加する

・左側メニューの一番上 「サーバー追加」

・サービスは「VPS」→プランはお好みのものを(ここでは最低額の512MBプランを選択)
・イメージタイプは「アプリケーション」→「他のアプリケーションを見る」→「Django」

・rootパスワード、ネームタグ(例:vps-django)を入力。

・他は何も変更せず、右の「追加」を押す

・数分以内にサーバーが出来上がり、サーバ一覧の表示に変わります。
   「ネットワーク情報」→「IPアドレス」をメモしてください。

2. ConohaのSSH関連を設定

下記サイトなどを参考に、SSHログイン、rootログイン禁止、SSHポート番号変更までを行ってください。
参考サイト1:
https://qiita.com/ongaeshi/items/bb17ebfbd4d22057c8fd
(SSHポート番号変更の手前まで)
参考サイト2:
https://weblabo.oscasierra.net/openssh-sshd-centos7-change-port/
(SSHポート番号変更)

3. Conoha上でプロジェクトを作成

###3.1. プロジェクトのDirectoryを作成
・Conoha VPSにSSHでログインしてください
ログインするとこういう画面が出ます。

================================================
Welcome to Django application!

Sample Application:    /home/django/sample
Sample Application Username: xxxxxxxxxxxxxxxx
Sample Application Password: xxxxxxxxxxxxxxxx
URL:                   http://XXX.XXX.XXX.XXX/
MySQL root password:   xxxxxxxxxxxxxxxx

Enjoy!
================================================

この中の

Sample Application:    /home/django/sample

で示されたDirectoryのひとつ上に行って、隣に新しく djangogirls Directoryを作ってください。

$ cd /home/django/
$ sudo mkdir djangogirls

作成したDirectoryのグループとパーミッションを変更してください。

$ sudo chgrp apache djangogirls
$ sudo chmod 775 djangogirls

###3.2. コードを持ってくる
引き続きサーバ上で作業。git cloneでコード一式を持ってきてください。

$ cd /home/django/djangogirls
$ sudo git clone https://github.com/khashi001/djangogirlTutorial.git .

httpから先の部分は、ご自分のリポジトリに合わせて書き換えてください。

###3.3. DataBaseを作る
DjangoGirlsチュートリアルの通りに実施した場合、まだDabaBaseファイル db.sqlite3が無いので、作成してください。

$ sudo python3.6 manage.py migrate
$ ls 

続いてパーミッション等を変更してください。

$ sudo chgrp apache db.sqlite3
$ sudo chmod g=rw db.sqlite3

###3.4. superuserを設定する

$ sudo python3.6 manage.py createsuperuser

###3.5. サーバーのIPアドレスをDjangoアプリのsetting.pyに設定する

$ sudo vi mysite/settings.py

ALLOWED_HOSTS に、 'xxx.xxx.xxx.xxx'(ConoHa サーバーのIDアドレス)を追加してください。

ALLOWED_HOSTS = ['127.0.0.1', 'localhost','xxx.xxx.xxx.xxx']

#4. Apacheの設定を変更する

$ sudo vi /etc/httpd/conf/httpd.conf

/home/django/sample が用いられている箇所を書き換えてください。

変更前

WSGIScriptAlias / /home/django/sample/sample/wsgi.py
WSGIPythonPath /home/django/sample

変更後

WSGIScriptAlias / /home/django/djangogirls/mysite/wsgi.py
WSGIPythonPath /home/django/djangogirls

変更前

<Directory /home/django/sample/sample>
  <Files wsgi.py>
    Require all granted
  </Files>
</Directory>

変更後

<Directory /home/django/djangogirls/mysite>
  <Files wsgi.py>
    Require all granted
  </Files>
</Directory>

書き換えおわったら、サービスを再起動してください。

$ sudo service httpd restart

#5. 確認
ブラウザで http://xxx.xxx.xxx.xxx
にアクセス。(xxx.xxx.xxx.xxx はサーバーのIPアドレス)
DjangoGirlsのチュートリアルで作成した内容が見えたらOKです。
ただしDataBaseは空っぽなので、個々の記事は表示されません。
http://xxx.xxx.xxx.xxx/admin にログインして、新しく作成し直しましょう。

12
17
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
12
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?