0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WSL2 × AWS CLI × GitHub で AWS × Python 開発環境を構築してみる

Last updated at Posted at 2025-03-15

前置き

何物でもない人間が、AWSでMLOpsができるようになるのを目指す記録です。
初回はAWS × Python 開発環境の構築を目標にいろいろやってみました。

実施内容

✅ WSL2 を使って Linux 開発環境を Windows に導入
✅ AWS CLI をセットアップし、AWS をコマンドラインで操作
✅ Python (boto3) を使って AWS をプログラムで管理
✅ GitHub との SSH 接続を設定し、リポジトリ管理ができるように設定

詳細

✅ 1️⃣ WSL2 のセットアップ

「Windows 環境に Linux(Ubuntu)を導入」

📌 💡 手順

WSL2 を有効化(PowerShell で実行)

powershell
wsl --install -d Ubuntu

Ubuntu の初期設定

wsl
sudo apt update && sudo apt upgrade -y

Windows Terminal と VS Code をセットアップ
・Windows Terminal をインストール
・VS Code + WSL 拡張を追加

wsl
code .

💡 「WSL2 を使えば、Windows でも Linux 環境で開発が可能」

✅ 2️⃣ AWS CLI のインストール

「AWS をコマンドラインから操作できるようにする」

📌 💡 AWS CLI を WSL2 にインストール

wsl
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
aws --version  # 確認

📌 💡 AWS CLI を設定

wsl
aws configure

👉 アクセスキー & シークレットキーを入力し、リージョンを設定!

IAM ユーザーの作成について

AWS CLI を利用するために、AWS マネジメントコンソールで IAM ユーザーを作成する必要があります。

(AWSアカウントを持ってない場合ここで作成します)

  1. AWS コンソールにログインし、IAM ユーザー管理ページ にアクセス

  2. 「ユーザー」→「新しいユーザーを追加」をクリック
    IAM Identity Center を有効にするよう勧められますが、今回のケースだとわかりにくくなるだけのため不要だと思います。

  3. ユーザー名を my-aws-user など適当につける

  4. 「AdministratorAccess」のポリシーをアタッチ(権限の制御)
    ・注意点
     全権限が付与されるので、普段は必要な権限だけを付けるのが理想

  5. 「ユーザーの作成」を完了し、サインイン URL からログイン

  6. 「ユーザー」my-aws-userを選択しアクセスキーを作成

  7. ユースケースは コマンドラインインターフェイス (CLI) を選択してアクセスキーを作成
    推奨された代替案は、無視してかまいません

📌 💡 AWS CLI の動作確認

wsl
aws s3 ls  # S3 バケットの一覧を取得
aws ec2 describe-instances  # EC2 インスタンスの情報を取得

✅ エラーがなければ AWS CLI のセットアップ完了!

💡 「AWS CLI を使えば、GUI なしで AWS を管理できる」

✅ 3️⃣ Python 環境のセットアップ

「AWS Lambda で使う Python 環境を整える」

📌 💡 Python & 仮想環境(venv)のセットアップ

wsl
sudo apt install python3 python3-venv python3-pip -y
python3 -m venv ~/projects/venv
source ~/projects/venv/bin/activate  # 仮想環境を有効化
pip install boto3 requests  # AWS SDK(boto3)をインストール

✅ Python 仮想環境を使って、AWS × Python の開発環境を整えた!

💡 「仮想環境を作ることで、Python の依存関係を管理しやすくする」

✅ 4️⃣ GitHub との SSH 接続

「GitHub に SSH で接続し、コードを管理できるようにする」

📌 💡 SSH キーの作成

wsl
ssh-keygen -t rsa -b 4096 -C "your-email@example.com"

👉 id_rsa.pub を GitHub に登録! 👉 GitHub SSH Key 設定ページ で追加!

📌 💡 SSH 接続のテスト

wsl
ssh -T git@github.com

✅ 「Hi your-github-username!」と表示されれば成功!

📌 💡 GitHub リポジトリを作成 & git push

wsl
git init
git remote add origin git@github.com:your-username/aws-python-pipeline.git
git add .
git commit -m "Initial commit"
git push -u origin main

✅ GitHub に WSL からコードをプッシュできるようになった!

💡 「GitHub でコードを管理することで、開発の効率がUP」

✅ 5️⃣ AWS × Python の動作確認

「AWS CLI & boto3 を使って、AWS サービスを操作」

📌 💡 boto3 で S3 のバケット一覧を取得

s3list.py
import boto3

s3 = boto3.client("s3")
response = s3.list_buckets()

for bucket in response['Buckets']:
    print(bucket['Name'])

✅ AWS CLI (aws s3 ls) と同じ結果が出れば成功!

💡 「AWS CLI だけでなく、Python から AWS を操作できるようになった」

終わりに

動かす環境は何とか作り終わったので、次回からは
「AWS Lambda で Python を実行し、S3 との連携を試す」
ステップに進みたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?