非エンジニアでもできた!Claudeを使ってAWSでDjangoを動かすまで

非エンジニアでもできた!Claudeを使ってAWSでDjangoを動かすまで

2026.03.30

はじめに

「AWSって難しそう…」と思っていませんか?私もそう思っていました。
この記事では、AWSやLinuxほぼ未経験の私が、Claudeと相談しながら実際にDjangoアプリをAWS上で動かすまでの手順をまとめています。
難しい言葉はできるだけ使わずに説明しますので、ぜひ一緒に試してみてください!


きっかけ

夫がAWSで構築した家族用経費精算システムを非エンジニアの私がClaudeと相談したらどこまでできるか試してみたいと思ったため。


今回作ったもの

AWSの構成図、内容をClaudeに見てもらったところ非エンジニアが作るにはかなりハードルが高めと回答が来ました。

スクリーンショット 2026-03-30 085647

まずは練習・・と思い、ブラウザからアクセスするとDjangoのページがAWSのサーバーで表示される、という仕組みを作りました。

構成はこんなイメージです:

ブラウザ → nginx(80番ポート) → uwsgi → Django
  • nginx:外からのアクセスを受け取るウェブサーバー
  • uwsgi:nginxとDjangoをつなぐ橋渡し役
  • Django:Pythonで作られたウェブアプリのフレームワーク

用意するもの

  • AWSアカウント(無料枠でOK)
  • Windows PC(PowerShellが使えればOK)
  • Claude Desktop

ステップ1:EC2(サーバー)を作る

EC2とは、AWSが提供する仮想サーバーのことです。パソコンをクラウド上に借りるイメージです。

1-1. EC2の画面を開く

  1. AWSコンソール(https://console.aws.amazon.com)にログイン
  2. 上部の検索バーに「EC2」と入力してクリック
  3. 右上のリージョンが「東京 (ap-northeast-1)」になっているか確認

1-2. インスタンスを起動する

  1. 左メニューの「インスタンス」をクリック
  2. 右上の「インスタンスを起動」ボタンをクリック

1-3. 基本設定を入力する

項目 設定値
名前 django-test
OS Amazon Linux 2023 AMI
インスタンスタイプ t2.micro(無料枠)

1-4. キーペアを作成する

キーペアとは、サーバーに接続するための「カギ」です。

  1. 新しいキーペアの作成」をクリック
  2. 以下を設定:
    • キーペア名:django-test-key
    • タイプ:RSA
    • 形式:.pem
  3. キーペアを作成」をクリック
  4. django-test-key.pem ファイルが自動でダウンロードされる

⚠️ このファイルは絶対に消さないでください! サーバーに入るための大事なカギです。

1-5. セキュリティグループを設定する

  • 「SSHトラフィックを許可」にチェック ✅
  • 「HTTPトラフィックを許可」にチェック ✅

1-6. インスタンスを起動する

インスタンスを起動」ボタンをクリック。「正常に起動しました」と表示されればOKです!


ステップ2:EC2にSSH接続する

SSHとは、サーバーをリモートで操作するための仕組みです。

2-1. PowerShellを開く

  1. Windowsキーを押して「PowerShell」と入力
  2. 「Windows PowerShell」を開く

2-2. EC2に接続する

ssh -i $HOME\Desktop\django-test-key.pem ec2-user@あなたのIPアドレス

あなたのIPアドレス の部分は、AWSコンソールの「パブリックIPv4アドレス」に書いてある数字に置き換えてください。

「Are you sure you want to continue connecting?」と聞かれたら「yes」と入力してEnterを押してください。

Amazonのロゴ(アスキーアート)が表示されれば接続成功です!🎉


ステップ3:nginxをインストールする

nginx(エンジンエックス)は、外からのアクセスを受け取るウェブサーバーです。

# パッケージを最新化する
sudo dnf upgrade -y

# nginxをインストールする
sudo dnf install nginx -y

# nginxを起動する
sudo systemctl start nginx

# 起動確認
systemctl status nginx

active (running)」と表示されれば起動成功です!

ブラウザで http://あなたのIPアドレス にアクセスすると「Welcome to nginx!」と表示されます。


ステップ4:Django環境を構築する

4-1. 必要なパッケージをインストールする

# pipをインストール
sudo dnf install python3-pip -y

# Cコンパイラをインストール(uwsgiのビルドに必要)
sudo dnf install gcc -y

# Python開発用ファイルをインストール(uwsgiのビルドに必要)
sudo dnf install python3-devel -y

4-2. 仮想環境を作成する

仮想環境とは、Pythonのパッケージを独立した場所にインストールできる仕組みです。

# 仮想環境を作成する
python3 -m venv ~/venv/django-test

# 仮想環境に入る
source ~/venv/django-test/bin/activate

コマンドの先頭に (django-test) と表示されれば仮想環境に入れた証拠です。

4-3. DjangoとuWSGIをインストールする

pip install django
pip install uwsgi

4-4. Djangoプロジェクトを作成する

cd ~
django-admin startproject mysite
cd mysite

4-5. ALLOWED_HOSTSを設定する

python -c "import re; f=open('mysite/settings.py','r'); content=f.read(); f.close(); content=re.sub(r\"ALLOWED_HOSTS = \[\]\", \"ALLOWED_HOSTS = ['*']\", content); f=open('mysite/settings.py','w'); f.write(content); f.close(); print('完了!')"

ステップ5:nginx + uwsgi + Django を連携する

5-1. uwsgiの設定ファイルを作成する

cat > ~/mysite/uwsgi.ini << 'EOF'
[uwsgi]
chdir=/home/ec2-user/mysite
module=mysite.wsgi:application
master=true
processes=2
socket=127.0.0.1:8001
vacuum=true
EOF

5-2. nginxの設定ファイルを作成する

sudo bash -c 'cat > /etc/nginx/nginx.conf << EOF
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
events {
    worker_connections 1024;
}
http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    include /etc/nginx/conf.d/*.conf;
}
EOF'

sudo bash -c 'cat > /etc/nginx/conf.d/mysite.conf << EOF
server {
    listen 80;
    location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8001;
    }
}
EOF'

5-3. nginxを再起動してuwsgiを起動する

sudo systemctl restart nginx

cd ~/mysite
uwsgi --ini uwsgi.ini

「spawned uWSGI worker」と表示されれば起動成功です!

ブラウザで http://あなたのIPアドレス にアクセスして「The install worked successfully! Congratulations!」と表示されれば完成です!🎉

スクリーンショット 2026-03-29 152320


セキュリティグループの設定について

AWSのセキュリティグループで 80番ポート(HTTP) が開いていることを確認してください。
私は間違えて8000番のポートを指定してしまい繋がらず、Claudeとの相談を何度も繰り返しました。

「EC2」→「インスタンス」→「セキュリティ」→「インバウンドのルールを編集」から確認・追加できます。


後片付け(EC2の削除)

試し終わったら必ずEC2を削除してください。削除しないと課金が続きます!

  1. AWSコンソールで「EC2」→「インスタンス」
  2. 「django-test」を選択
  3. 「インスタンスの状態」→「インスタンスを終了
  4. 確認画面で「終了」をクリック

⚠️「停止」ではなく「終了」を選んでください!


まとめ

AWSやLinuxがほぼ未経験でも、Claudeと相談しながら手順通りに進めれば nginx → uwsgi → Django という本番に近い構成を動かすことができました!

最初は難しく感じるかもしれませんが、一つひとつのステップは意外とシンプルです。ぜひ試してみてください😊

この記事をシェアする

FacebookHatena blogX

関連記事