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

タイトル: プロジェクトの作成方法(Mac)
SEOタイトル: Mac で Django プロジェクト作成完全ガイド (venv / pip / runserver)

この記事の要点
  • 事前確認: python3 --version (3.8+ 必須、3.11/3.12 推奨)、必要なら Homebrew で brew install python
  • 仮想環境: python3 -m venv .venv && source .venv/bin/activate でプロジェクト隔離
  • Django インストール: pip install django (LTS 4.2 or 最新 5.x)
  • プロジェクト作成: django-admin startproject myprojectcd myproject && python manage.py runserver
  • Mac 固有: Xcode Command Line Tools (xcode-select --install) と SSL 証明書 Install Certificates.command 実行

前提: Python と必要ツールの準備

Python のインストール状況確認

# Python 3.x の確認
python3 --version
# Python 3.12.x

# どこの Python か
which python3
# /usr/bin/python3 (macOS 標準) または
# /opt/homebrew/bin/python3 (Apple Silicon Homebrew) または
# /usr/local/bin/python3 (Intel Homebrew)

# pip も確認
pip3 --version

Homebrew で最新 Python (推奨)

macOS 標準 Python はバージョンが古く、システムが使うため触りたくありません。Homebrew で別途インストールするのが王道:

# Homebrew 未導入の場合
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Python インストール (最新安定版)
brew install python@3.12

# 確認
brew list python@3.12
python3.12 --version

Xcode Command Line Tools

Django や Python のビルド・C 拡張に必須:

xcode-select --install
# ダイアログが出たら「インストール」をクリック

# 既にインストール済かの確認
xcode-select -p
# /Library/Developer/CommandLineTools と出れば OK

1. プロジェクトディレクトリ作成と移動

mkdir ~/projects/myproject
cd ~/projects/myproject

2. 仮想環境 (venv) の作成

Python は同一マシンで複数プロジェクトを動かすと依存パッケージのバージョン衝突が起きます。必ずプロジェクト単位の仮想環境を使います:

# venv 作成 (.venv ディレクトリに作るのが慣習)
python3 -m venv .venv

# アクティベート (zsh / bash 共通)
source .venv/bin/activate

# プロンプトの先頭に (.venv) が付いたら有効
# (.venv) $

# 中の Python を確認
which python
# /Users/foo/projects/myproject/.venv/bin/python ← venv 内

# 抜けるとき
deactivate

3. pip の更新

# venv 内で pip を最新化
pip install --upgrade pip

# wheel / setuptools も最新に
pip install --upgrade pip wheel setuptools

4. Django インストール

# 最新版
pip install django

# LTS (長期サポート版、企業ユースに推奨)
pip install "django>=4.2,<5.0"

# 確認
django-admin --version
# 5.0.x または 4.2.x

# 依存パッケージの一覧
pip list
# Django   5.0.x
# asgiref  3.x
# sqlparse 0.x

5. Django プロジェクトの作成

# myproject という名前で生成 (現在のディレクトリ内に作る)
django-admin startproject myproject .
# ↑ 末尾の . でカレントディレクトリに展開。これがないと myproject/myproject/ の二重構造になる

# 構成
ls
# manage.py    myproject/
ls myproject
# __init__.py  asgi.py  settings.py  urls.py  wsgi.py

6. 開発サーバ起動

# 開発サーバ起動 (デフォルト 127.0.0.1:8000)
python manage.py runserver

# 別ポート
python manage.py runserver 8080

# 外部からも接続したい (LAN 内)
python manage.py runserver 0.0.0.0:8000

ブラウザで http://127.0.0.1:8000/ を開き、「The install worked successfully! Congratulations!」のロケット画面が出れば成功。

7. データベースの初期化 (SQLite)

Django はデフォルトで SQLite を使い、ファイルは db.sqlite3 として作成されます:

# マイグレーション実行 (Django 内部テーブル作成)
python manage.py migrate
# Applying contenttypes.0001_initial... OK
# Applying auth.0001_initial... OK
# ...

# 管理者ユーザー作成
python manage.py createsuperuser
# Username: admin
# Email: admin@example.com
# Password: ********

# 管理画面 (/admin) にアクセスして確認
python manage.py runserver
# http://127.0.0.1:8000/admin

8. アプリの作成

Django では機能単位を「アプリ」と呼びます。プロジェクト内に複数のアプリを作るのが基本:

python manage.py startapp blog

# 構成
ls blog
# __init__.py  admin.py  apps.py  migrations/  models.py  tests.py  views.py
# myproject/settings.py の INSTALLED_APPS に追加
INSTALLED_APPS = [
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
    "blog",                     # ← 追加
]

9. requirements.txt の作成

チームで共有したり本番にデプロイするため、依存パッケージを記録:

# 現在の venv の全パッケージを書き出し
pip freeze > requirements.txt

# 中身
cat requirements.txt
# Django==5.0.0
# asgiref==3.7.2
# sqlparse==0.4.4

# 別環境で再現
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

10. .gitignore

# .gitignore (Django プロジェクト用)
.venv/
__pycache__/
*.pyc
*.pyo
db.sqlite3
.env
media/
staticfiles/
.DS_Store
.idea/
.vscode/

Mac 固有のトラブル

SSL 証明書エラー

公式 Python.org インストーラーで入れた Python では、初回 pip install で SSL エラーが出ることがあります:

# 証明書バンドルをインストール
open "/Applications/Python 3.12/Install Certificates.command"

# または手動で
/Applications/Python\ 3.12/Install\ Certificates.command

# Homebrew Python では不要 (証明書は自動)

Apple Silicon (M1/M2/M3) での注意

  • Homebrew のパスは /opt/homebrew/ (Intel Mac は /usr/local/)
  • pip install で C 拡張のビルドエラー → brew install openssl libffi など必要
  • Pillow / lxml / mysqlclient は arm64 ホイール対応済 (Python 3.10+ 推奨)

VSCode / PyCharm 連携

# VS Code を開く
code .

# Python インタプリタを venv に向ける
# Cmd+Shift+P → "Python: Select Interpreter" → .venv/bin/python を選択

# settings.json に書く場合
{
  "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python",
  "python.terminal.activateEnvironment": true
}

PyCharm では「Settings → Project → Python Interpreter → Add → Existing → .venv/bin/python」。

典型的なフォルダ構成 (完成形)

myproject/
├── .venv/                      ← 仮想環境 (Git 管理外)
├── .gitignore
├── requirements.txt
├── manage.py
├── myproject/
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── blog/                       ← アプリ
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── migrations/
│   ├── models.py
│   ├── tests.py
│   ├── urls.py                ← 追加
│   └── views.py
├── templates/                  ← HTML テンプレ
└── static/                     ← CSS/JS/画像

FAQ

Q: django-admin: command not found と出る
A: venv をアクティベートしていない。source .venv/bin/activate 後にプロンプトに (.venv) が付いていることを確認。

Q: 8000 番ポートが既に使われている
A: lsof -i :8000 でプロセス確認、kill -9 PID で停止。または python manage.py runserver 8080 で別ポート。

Q: SQLite ではなく PostgreSQL / MySQL を使いたい
A: pip install psycopg2-binary (PG) または pip install mysqlclient (MySQL) し、settings.py の DATABASES を変更。

Q: macOS のシステム Python (/usr/bin/python3) を使ってよい?
A: 非推奨。システムが使う Python を汚すと OS 不具合の原因に。Homebrew / pyenv で別途インストール推奨。

Q: pyenv は使うべき?
A: 複数 Python バージョンを切り替えたい場合に便利 (3.10 / 3.11 / 3.12 を案件ごとに使い分け)。brew install pyenv