2026年10月1日
2026年10月1日
AWS EC2でカスタムAMIを作成する方法
はじめに
この記事では、AWS EC2上でのカスタムAMI(Amazon Machine Image)の作成方法について説明します。AMIはインスタンス起動時に使用されるイメージで、必要なソフトウェアや設定を一括して管理することが可能です。これにより、同じ環境を再現したり、複数のインスタンスを一括で作成することができます。
症状・背景
カスタムAMIが必要になる主な場面は以下の通りです:
- 新しいインスタンスを作成する際、特定のソフトウェアや設定を毎回手動で適用したくない。
- 一貫性のある環境を維持したい。
- インスタンス作成の時間を短縮したい。
手順・設定方法
ステップ1: インスタンス起動と初期設定
# インスタンスを起動します。
aws ec2 run-instances --image-id ami-0c94d74a1b2ec9860 --count 1 --instance-type t2.micro \
--key-name MyKeyPair --security-group-ids sg-0123456789abcdef0
# インスタンスが起動したら、SSHで接続します。
ssh -i /path/to/MyKeyPair.pem ec2-user@ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com
ステップ2: 必要なソフトウェアや設定をインストール
# ApacheとPHPをインストールします。
sudo yum install httpd php -y
# MySQLのサービスを起動し、必要に応じて初期設定を行います。
sudo systemctl start mysqld
mysql_secure_installation
# WordPressをダウンロードしてインストールします。
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
mv wordpress /var/www/html/wordpress
chown -R ec2-user:ec2-user /var/www/html/wordpress
# Apacheの設定ファイルを編集します。
sudo vi /etc/httpd/conf/httpd.conf
# インスタンス終了時にAMIを作成するための準備を行います。
aws ec2 create-tags --resources i-0123456789abcdef0 --tags Key=Name,Value=MyCustomAMI
ステップ3: インスタンス終了時にAMIを作成
# インスタンスを停止します。
sudo shutdown -h now
# インスタンスが停止したら、AMIを作成します。
aws ec2 create-image --instance-id i-0123456789abcdef0 --name "MyCustomAMI" \
--description "Custom AMI for WordPress"
ステップ4: 作成されたAMIを確認
# EC2コンソールまたはaws CLIを使用して、AMIのリストを確認します。
aws ec2 describe-images --owners self