LoginSignup
8
12

More than 5 years have passed since last update.

CentOS7でとりあえずDjangoを動かしてみたので、その手順を残す

Posted at

Java以外の言語を書いたことがなかったので、過去に挫折したpythonをもう一度頑張ってみることにしたお話。

環境

OS : CentOS 7
Python : Python3.6.3
Django : Django1.11.7

CentOS 7はMac上でvagrantを使い、VirtualBoxに構築。

vagrantでCentOS 7を構築

(´・ω・`)筆者は半年以上前のversionで構築したため、現行versionですんなり動作するかは不明
(´・ω・`)詳しい構築方法は割愛します

VirtualBox をインストール
http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=otnjp

Vagrantをインストール
https://www.vagrantup.com/

Vagrantfileを作成

CentOS 7のBOXを利用したいので、こんな感じで書きました。

Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.hostname = "forPython"
  config.vm.box = "centos/7"

  config.vm.network "private_network", ip: "192.168.33.30"
end

以下のコマンドを実行してCentOS 7を構築
vagrant up

以下のコマンドを実行して、ログインできることを確認する
vagrant ssh

Last login: Fri Nov 10 07:39:10 2017 from 10.0.2.2
[vagrant@forPython ~]$ 

(`・ω・´)いい感じにログインできたっ!

Python3.6をインストール

※筆者は以下をAnsibleでやらせました。ので、それのコマンド版を記載。
以下の手順で、Python3.6.3をインストゥール
・iusリポジトリをインストール
# yum install https://centos7.iuscommunity.org/ius-release.rpm

・Python3.6.3 をインストール
# yum install python36u

・pipもインストール
# yum install python36u-pip

(`・ω・´)準備できたっ!

Djangoをインストール

以下のコマンドで、Djangoをインストール
# pip3.6 install Django

念のためちゃんとインストールされたか確認

# ls /usr/lib/python3.6/site-packages/django/
__init__.py  __pycache__  bin   contrib  db        forms  middleware    template      test  utils
__main__.py  apps         conf  core     dispatch  http   shortcuts.py  templatetags  urls  views

(`・ω・´)大丈夫だねっ!

Djangoのプロジェクトを作成

作成方法は以下のサイトを参考にする。
https://docs.djangoproject.com/ja/1.11/intro/tutorial01/

・プロジェクトを配置するディレクトリを作成
$ mkdir /home/vagrant/workspace/Django_project

・そしてディレクトリへ移動
$ cd /home/vagrant/workspace/Django_project

・以下のコマンドを実行してプロジェクトを作成
$ django-admin startproject mysite

・プロジェクトの中身を確認

$ ls
mysite

$ ls mysite
db.sqlite3  manage.py  mysite

$ ls mysite/mysite
__init__.py  __pycache__  settings.py  urls.py  wsgi.py

(`・ω・´)できてるねっ!

開発用サーバを起動してアクセスしてみる

・開発用サーバを起動する

$ python3.6 manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

November 10, 2017 - 09:56:05
Django version 1.11.7, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

(´・ω・`)こいつ、動くぞ・・・!

・別窓でCentOSへログインし、アクセス確認

$ curl 127.0.0.1:8000

<!DOCTYPE html>
<html lang="en"><head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta name="robots" content="NONE,NOARCHIVE"><title>Welcome to Django</title>
(以下割愛)

(´・ω・`))おぉ、なんか帰ってきた!

・開発用サーバのログを確認

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

November 10, 2017 - 09:56:05
Django version 1.11.7, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[10/Nov/2017 09:58:11] "GET / HTTP/1.1" 200 1716

(´・ω・`)うん、今さっきのアクセスで200を返したみたいだね!

と、言うわけで

とりあえず」Djangoを動かすことができました。
(´・ω・`)数年前に一度チャレンジした時はど素人だったから、
ここまですら到達できなかったから素直に嬉しい。

これからこいつに玄関ページを作成して、機能を追加して遊べるように頑張って作り込んで行こう(∩´∀`)∩

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