前のパートに戻る 完了して次のパートへ  

  0-3 環境構築をしよう (Mac OS)

ここではMac OSでの環境構築の仕方を説明していきます。

念のために著者のOSバージョンを以下に示しておきます。

MacBook Pro 2016 Late
OS: MacOS HighSierra v10.13.6

Homebrewをインストールしよう


(過去にインストールしたことがある場合ここをスルーして頂いて大丈夫です。)

HomebrewとはMac OS用のパッケージマネージャーというツールで様々な必要なパッケージ(ソフトやトール)をインストールや管理を行ってくれます。

今回はHomebrewを使ってPythonの環境を整えていきます。

早速ターミナルで以下のコマンドを入力してみましょう。

また細かいことや最新のインストールコマンドに関しては公式のサイトでも確認できます。

Homebrew 公式サイト

インストールコマンド

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew経由でPython3を導入する


Mac OSには標準でPython2系と呼ばれるものが入っています。バージョンによって構文が一部違ったりしています。最近は3系で開発などを行うことが多いのでPython3を入れています。

また、バージョンを管理するためにpyenvと呼ばれるバージョンを管理ツールもHomebrew経由で入れていきましょう。

$ brew install pyenv

==> Pouring pyenv-1.2.8.high_sierra.bottle.tar.gz
🍺  /usr/local/Cellar/pyenv/1.2.8: 612 files, 2.4MB

次にpyenvの設定を.bashrcというファイルに書いて反映させます。

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

$ source ~/.bash_profile

現在インストールできるPythonバージョンの一覧は以下のコマンドで確認できます。

$ pyenv install -l

さっそくインストールしてみましょう今回は3.6.1を導入します。 もし、あなたがMac OSのMojaveを使っているようでしたら、下のURLを参照してインストールに必要なツールをインストールしてください。

Qiita | Mac OS Mojave pyenvでPythonのインストールがzlibエラーで失敗した時の対応

もしMojaveにアップデート直後などでxcrun: error: invalid active developer path~と表示されるようでしたら追加で次のURLを参照してみてください。

参照: Mac OS mojaveに更新したら、xcode-selectが動かなくなったので解決した。 - Qiita

pyenvのinstallコマンドで3.6.1をインストールします。

$ pyenv install 3.6.1
︙
Installing Python-3.6.1...
python-build: use readline from homebrew
Installed Python-3.6.1 to /Users/shogo.matsushita/.pyenv/versions/3.6.1

インストールしたバージョンを見るのは以下のコマンドです。

アスタリスクがついてるのが現在のバージョンです。(人によってついてるものが違う場合もあります。)

$ pyenv versions
 system
 3.6.1
* 3.7.1 (set by /Users/shogo.matsushita/.pyenv/version)

早速インストールした3.6.1にしてみましょう。 デフォルトバージョンの変更は以下のコマンドで出来ます。

$ pyenv global 3.6.1

最後に現在使えるPythonバージョンを見てみましょう。3.6.1と出てきたら完了です。

$ python --version
Python 3.6.1

pipとpipenvインストール


ここからは開発用のディレクトリを作成してその中で作業していきましょう。

pip インストールとアップデート

pipはPythonで標準的に使われているパッケージマネージャーです。 Djangoや様々なツールをこれを介して導入していきます。

参考: PyPA | pip 18.1 documentation - Installation

基本的にはPython3.4以降またはPython2.7.9以上のバージョンからは最初からバンドルされているのでインストールは不要ですが次のコマンドでアップデートをしておきましょう。

$ pip install -U pip

もしpipがcommand not found: pipなどのpipコマンドが無いと言われた場合下の手順でインストールしてください。

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python get-pip.py

$ pip --version
pip 9.0.1 from /Users/matsushitashousatoru/.pyenv/versions/3.6.1/lib/python3.6/site-packages (python 3.6)

これでPythonとpipのインストールは完了です。

pipenv インストール


これはpipをもとに機能を付け足したパッケージマネージャーの1つです。

開発ではすべてをゼロから開発するのではなく色んな人が作って公開したものを使わせてもらうことがあります。このとき誰でも使える状態にし公開されているプログラムを「ライブラリ」や「パッケージ」と呼びます。

pipenvは「どのライブラリを使っているのか」や「ライブラリ使うために必要なライブラリはどれなのか」などを解消するために使っていライブラリを記述するためのツールです。

依存やPythonバージョン指定もできます。便利ですので入れておきましょう。 参考: Pipenv | Pipenvのインストール

$ brew install pipenv

次にDjangoのプロジェクトを作成しましょう。

Pipfileを追加しよう

まずはプロジェクトで使うtechpitgramディレクトリを作成しましょう。

ここからはtechpitgramディレクトリ内で行っていきます。 Pipfileはpipenvで使うファイルです。ここには開発で使用するPythonバージョンや開発に使うライブラリを記述します。

このPipfileを使うと開発に必要なライブラリをコマンド1つでインストールしてくれます。 今回は画像を扱うサービスなので途中Djangoの画像を扱うためのライブラリを使いします。Djangoで画像を扱うのには「pillow」が必要になっています。事前に入れておきましょう。 ここから先程作成したプロジェクトの中で作業していきます。

作成されたディレクトリ直下にpipfileを作成して以下のように記入して下さい。

新規作成:techpitgram/Pipfile

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

# ここ以下を編集する
[packages]
django = "==2.2"
pillow = "*"


[dev-packages]

[requires]
python_version = "3.6"

終わったら以下のコマンドを打ち込んでライブラリをインストールしましょう。

$ python -m django startproject techpitgram


pipenv installはPipfileに書き込まれた情報を元にライブラリをインストールしてくれるコマンドです。

# ディレクトリ移動
$ cd techpitgram 
# ライブラリインストール
$ pipenv install

初回はもしかしたらPythonのバージョンの差でCPython3.7を入れるか聞かれる場合もあります。 聞かれたらyを入力してエンターを押してください。

︙
(前略)
︙
Would you like us to install CPython 3.7.1 with pyenv? [Y/n]: y
Installing CPython 3.7.1 with pyenv (this may take a few minutes)…
✔ Success!

インストール後のファイルディレクトリ構造は以下のようになります。

​​├── Pipfile
​​├── Pipfile.lock
​​

念のために今使っているDjangoのバージョンを確認しましょう。

$ pipenv run django-admin --version

2.2

次にDjangoのプロジェクトを作成しましょう。 以下のコマンドをターミナルで入力してください。

$ pipenv run python -m django startproject techpitgram

以下の画像のようになっていれば大丈夫です。


動作確認

最後に動作確認をしてみましょう。 Djangoにはrunnserverコマンドがあるのでそれを用います。

$ cd techpitgram
$ pipenv run python manage.py runserver

アクセス先:http://localhost:8000/ 


最後に


最後にDjangoの言語設定と時間設定をしておきます。

これはこのアプリで使うものが日本の時間で日本語を扱うものと言うのを明示するものです。 再度 /techpitgram/techpitgram/settings.pyを編集します。 この後もいくつか追記をしていきますので覚えておきましょう。

言語設定

settings.pyのLANGUAGE_CODEを書き換えます。


書き換え前

LANGUAGE_CODE = 'en-us'

書き換え後

LANGUAGE_CODE = 'ja'

タイムゾーン

settings.pyのTIME_ZONEを書き換えます。

書き換え前

TIME_ZONE = 'UTC'

書き換え後

TIME_ZONE = 'Asia/Tokyo'

以上で環境構築のパートは終了です。

議論

0 質問

このコースの評価は?