AWS の EC2 の Amazon Linux 2023 に python(pyenv) インストールして Django を実行した時の備忘録メモ
実施したのは 2025/05/02 時点です
-
ざっくり流れ
- EC2インスタンス起動
- EC2ログイン
- python(pyenv) インストール
- Django インストール・作成・起動
-
環境情報
- EC2 (Amazon Linux 2023)
- pyenv v2.5.5
- python v3.13.3 (pip v25.0.1)
- Django v5.2
- Windows11
- Tera Term v5.2
EC2インスタンス起動
AMI は Amazon Linux 2023にして ssh で接続するのでキーペアとかちゃんと設定する
Django で使うポート(デフォルトは 8000 )を外部から接続できるようにセキュリティグループを追加
そのほかは自由でOK
EC2ログイン
windows pc でTeraTerm でアクセス
ホストに EC2 の パブリックIP、ユーザ名 ec2-user
、認証方式を RSA 鍵使うにして秘密鍵に pem ファイルを指定
- root に変更
sudo -i
python(pyenv) インストール
python インストールで複数バージョンの切り替えに対応できるように pyenv を使ってインストールする
依存ライブラリのインストールは色んなやつを参考に適当にやってます
-
依存ライブラリインストール
yum install -y bzip2 bzip2-devel gcc git libffi-devel readline readline-devel sqlite sqlite-devel zlib-devel libdb-devel gdbm-devel xz-devel tk-devel uuid-devel libuuid-devel openssl-devel
-
pyenv インストール
yum install -y bzip2 bzip2-devel gcc git libffi-devel readline readline-devel sqlite sqlite-devel zlib-devel libdb-devel gdbm-devel xz-devel tk-devel uuid-devel libuuid-devel openssl-devel
-
pyenv パス設定
-
~/.bashrc
に以下を追記~/.bashrcexport PYENV_ROOT="$HOME/.pyenv" [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)"
- 設定読込
source ~/.bashrc
-
-
pyenv バージョン確認
pyenv -v
-
python インストール
pyenv install 3.13.3
-
python 使用バージョン設定
pyenv global 3.13.3
-
python, pip バージョン確認
python -V pip -V
-
補足:pyenv いろいろ
- インストールするバージョン情報取得
pyenv install --list
- インストール済バージョン確認
pyenv versions
- 全体で使用するバージョン指定
pyenv global バージョン
- インストールするバージョン情報取得
Django インストール・作成・起動
-
Django インストール
pip install Django
-
Django プロジェクト作成
django-admin startproject projectname
-
Django プロジェクトに移動
cd projectname
-
Django 接続許可ホスト設定
-
settings.py
のALLOWED_HOSTS
を設定(とりあえず起動で使ってるサーバIPを設定)
./projectname/settings.pyALLOWED_HOSTS = ['パブリックIP']
-
-
Django アドレス指定実行
python manage.py runserver 0.0.0.0:8000
-
アクセス確認
外からつながるようにしてたらアクセスできるはず...
http://パブリックIP:8000