AWSを個人開発・スタートアップで使い始めるには
Amazon Web Services(AWS)は200以上のクラウドサービスを提供する世界最大のクラウドプロバイダです。個人開発者にとっては無料利用枠(Free Tier)から始められるため、本番環境の基礎として最適です。
AWS無料利用枠(2026年版)
- EC2 t2.micro:750時間/月(12ヶ月間)
- S3:5GB、20,000 GETリクエスト/月
- Lambda:100万リクエスト/月(無期限)
- RDS:750時間/月のdb.t2.micro(12ヶ月間)
- CloudFront:1TB転送/月、1,000万リクエスト(12ヶ月間)
主要サービス解説
EC2(Elastic Compute Cloud)
仮想サーバーサービス。WordPressやWebアプリのホスティングに使用。
# EC2インスタンスへのSSH接続
ssh -i ~/.ssh/my-key.pem ec2-user@your-instance-ip
# Webサーバー(Nginx)のセットアップ
sudo yum update -y
sudo yum install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
S3(Simple Storage Service)
オブジェクトストレージ。静的サイトホスティング、バックアップ、メディアファイル保存に活用。
# AWS CLIでS3操作
# バケットにファイルをアップロード
aws s3 cp ./index.html s3://my-bucket/
# バケット全体を同期
aws s3 sync ./dist/ s3://my-bucket/ --delete
# 静的ウェブサイトホスティングを有効化
aws s3 website s3://my-bucket/ \
--index-document index.html \
--error-document error.html
Lambda(サーバーレス)
サーバー管理不要でコードを実行。APIバックエンド・定期実行・イベント処理に最適。
# Lambda関数の例(Node.js)
exports.handler = async (event) => {
const { httpMethod, path, body } = event;
if (httpMethod === 'GET' && path === '/users') {
const users = await getUsersFromDB();
return {
statusCode: 200,
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(users)
};
}
return { statusCode: 404, body: 'Not Found' };
};
RDS(Relational Database Service)
マネージドデータベース。PostgreSQL・MySQL・Aurora等をサポート。バックアップ・フェイルオーバーが自動化。
個人開発者向け推奨アーキテクチャ
フロントエンド:
- CloudFront(CDN)+ S3(静的ホスティング)
- または: Vercel / Netlify(より簡単)
バックエンドAPI:
- API Gateway + Lambda(サーバーレス、コスト最小)
- または: EC2 + Nginx + Node.js/Python
データベース:
- RDS PostgreSQL(本番用)
- または: PlanetScale / Supabase(マネージド、個人開発向け)
認証:
- Cognito(AWSネイティブ)
- または: Auth0 / Supabase Auth(より簡単)
ストレージ:
- S3(画像・ファイル)
メール:
- SES(Simple Email Service)
モニタリング:
- CloudWatch(ログ・メトリクス)
月額コストの目安と最適化
| 構成 | 月額コスト目安 |
|---|---|
| EC2 t3.micro + RDS t3.micro | 約3,000〜5,000円 |
| Lambda + RDS Aurora Serverless v2 | 約1,000〜3,000円(低トラフィック時) |
| S3 + CloudFront(静的サイト) | 約100〜500円 |
Infrastructure as Code(Terraform)
# main.tf - EC2インスタンスの定義
provider "aws" {
region = "ap-northeast-1" # 東京リージョン
}
resource "aws_instance" "web" {
ami = "ami-0d52744d6551d851e"
instance_type = "t3.micro"
tags = {
Name = "web-server"
Environment = "production"
}
}
resource "aws_s3_bucket" "static" {
bucket = "my-static-site-2026"
tags = {
Name = "Static Site"
}
}
まとめ
AWSは個人開発者から大規模企業まで幅広く対応できるクラウドプラットフォームです。まずは無料枠を活用してEC2またはLambdaから始め、徐々にマネージドサービスを組み合わせてアーキテクチャを進化させていきましょう。AWS認定資格(Solutions Architect Associate)の取得もキャリアアップに非常に有効です。