この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:T
更新日時:2026-06-11 07:10:02

タイトル: インストール方法(Linux/Mac)
SEOタイトル: Django インストール完全ガイド(Linux/Mac で venv + pip install django)

この記事の要点
  • Python 3 を確認: python3 --version(Django 5.x は Python 3.10+ 必須)
  • 仮想環境を作る: python3 -m venv .venv && source .venv/bin/activate
  • Django を入れる: pip install django(LTS 指定なら django==5.2.*
  • プロジェクト作成: django-admin startproject myprojectpython manage.py runserver
  • Mac は Homebrew Python、Linux は ディストリ標準パッケージから。Pipenv / Poetry / Docker でも OK

前提: Python 3 の準備

Django 5.x は Python 3.10 以降、Django 4.2 LTS は Python 3.8 以降必須です。まず Python のバージョン確認:

python3 --version
# Python 3.11.6

which python3
# /usr/bin/python3 など

pip3 --version
# pip 23.x ...

Linux でのインストール

Ubuntu / Debian

# Python 3 + venv + pip
sudo apt update
sudo apt install -y python3 python3-venv python3-pip

# 動作確認
python3 --version
python3 -m venv --help

CentOS / RHEL / Rocky / AlmaLinux

# RHEL 9 / Rocky 9
sudo dnf install -y python3 python3-pip

# 新しめの Python を入れたい場合
sudo dnf install -y python3.11 python3.11-pip

# 開発に必要なツール(C 拡張ビルド時)
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y python3-devel

pyenv で複数バージョン管理(推奨)

# Linux / Mac 共通
curl https://pyenv.run | bash

# ~/.bashrc に追記
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

# インストール
pyenv install 3.12.4
pyenv global 3.12.4
python --version

Mac でのインストール

Homebrew Python

# Homebrew がなければ
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Python 3 を導入
brew install python@3.12

# パス確認
which python3
# /opt/homebrew/bin/python3 (Apple Silicon)
# /usr/local/bin/python3   (Intel Mac)

Mac には /usr/bin/python3(macOS 同梱)もありますが、システム用なのでアプリ開発には Homebrew 版か pyenv を使うのが定石。

Xcode コマンドラインツール

# Pillow, psycopg2 等の C 拡張ビルドに必要
xcode-select --install

仮想環境(venv)を作る

Django プロジェクトごとに隔離環境を作るのが定石です:

# プロジェクト用ディレクトリ
mkdir ~/projects/myapp
cd ~/projects/myapp

# 仮想環境 (.venv) を作成
python3 -m venv .venv

# 有効化
source .venv/bin/activate
# プロンプトに (.venv) と表示される

# 確認: Python と pip がプロジェクト配下を指す
which python   # .../myapp/.venv/bin/python
which pip      # .../myapp/.venv/bin/pip

# 抜けるときは
deactivate

Django をインストール

# 仮想環境が有効化された状態で
pip install --upgrade pip
pip install django

# バージョン指定したい場合
pip install "django==5.2.*"           # 5.2 系の最新
pip install "django>=4.2,<5"          # 4.2 LTS 系
pip install django==5.2.1             # 特定バージョン

# 確認
django-admin --version
# 5.2.1

python -m django --version

# pip freeze で記録
pip freeze > requirements.txt
# Django==5.2.1
# asgiref==3.8.1
# sqlparse==0.5.0

初めての Django プロジェクト

# プロジェクト作成
django-admin startproject myproject .
# 末尾の . で「カレントに直接展開」

# ディレクトリ構成:
# myapp/
# ├── manage.py
# ├── myproject/
# │   ├── __init__.py
# │   ├── settings.py
# │   ├── urls.py
# │   ├── asgi.py
# │   └── wsgi.py
# └── .venv/

# 初期マイグレーション
python manage.py migrate

# 開発サーバ起動
python manage.py runserver

# → http://127.0.0.1:8000/
# 「The install worked successfully!」が表示されれば OK

アプリの追加

# polls アプリを作成
python manage.py startapp polls

# settings.py の INSTALLED_APPS に追記
# INSTALLED_APPS = [
#     ...
#     'polls.apps.PollsConfig',
# ]

# Model 作成後
python manage.py makemigrations
python manage.py migrate

# スーパーユーザー作成(admin 画面用)
python manage.py createsuperuser
# → http://127.0.0.1:8000/admin/ にログイン

Docker での Django

# Dockerfile
FROM python:3.12-slim

WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

EXPOSE 8000
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
# ビルド & 起動
docker build -t myapp .
docker run -p 8000:8000 myapp

# 単発で試したいだけ
docker run -it --rm -p 8000:8000 \
  -v $PWD:/app -w /app python:3.12 bash
# コンテナ内で
pip install django
django-admin startproject myproject .
python manage.py runserver 0.0.0.0:8000

Pipenv / Poetry での導入

# --- Pipenv ---
pip install --user pipenv
pipenv install django
pipenv shell
django-admin startproject myproject .
python manage.py runserver

# --- Poetry ---
curl -sSL https://install.python-poetry.org | python3 -
poetry new myapp --src
cd myapp
poetry add django
poetry run django-admin startproject myproject .
poetry run python manage.py runserver

# --- uv(推奨) ---
curl -LsSf https://astral.sh/uv/install.sh | sh
uv init myapp
cd myapp
uv add django
uv run django-admin startproject myproject .
uv run python manage.py runserver

よくあるエラー

症状原因対処
command not found: django-admin仮想環境が有効化されていない or PATH 問題source .venv/bin/activate
ModuleNotFoundError: No module named 'django'システム Python に入れてしまった仮想環境で再インストール
You have NN unapplied migration(s)初回マイグレーション忘れpython manage.py migrate
Error: That port is already in use8000 番が使用中runserver 8080 で別ポート
ssl モジュールがない (pyenv)OpenSSL 開発パッケージ不足OS の openssl-devel 入れて pyenv 再ビルド

動作確認チェックリスト

  • python3 --version で 3.10+ が出る
  • source .venv/bin/activate(.venv) プロンプト
  • python -c "import django; print(django.get_version())" でバージョン表示
  • django-admin startproject myproject . でプロジェクトが作れる
  • python manage.py runserver → ブラウザでロケット画面

FAQ

Q: pip と pip3 の違いは?
A: 仮想環境内では同じものを指す。システム側では pip3 が Python 3 の pip を確実に呼ぶ。python -m pip が最も確実。

Q: Apple Silicon Mac で動かない
A: Homebrew は /opt/homebrew に入る。PATH に /opt/homebrew/bin が無いと brew install した python が呼べない。

Q: 本番では何を使う?
A: runserver は開発専用。本番は Gunicorn / uWSGI + Nginx、または Docker + ASGI(Daphne / Uvicorn)。