零、前置作業
先建立一台 public EC2 instance, security group(SG)除原本的22port之外,另新增一個允許從80port連入的SG的TCP連線
一、簡單架構出系統環境
連進EC2, 執行以下指令:
- 先建立一個預留空間,當作測試資料
sudo fallocate-l 1G fake_file_in_ami
檢查是否成功製作出來
ls -l - 安裝git 並查看版本
sudo yum install -y git
sudo git --version - 安裝docker 並查看版本
sudo yum insatll -y docker
sudo docker --version - docker 跑起來
sudo service docker start - 跑nginx server, 其網路介面與主機一樣
sudo docker run --network host nginx
6.複製公用IP,用網頁測試一下,看到成功畫面
二、將EC2 instance 打包成AMI
- 建立映像(create image)
2.AMI建立完成後,會同時建立一個snap shot
備註:
(1)此時該snap shop的所有權為該AMI,因此無法單獨刪除該snap shot
(2) 可單獨使用snap shot進行還原,或用AMI進行還原。若使用AMI,會自動去使用所對應之Snap shot
3.然後用Snap shot 還原原本那個EC2
三、將AMI還原成EC2 instance
備註:不論是建立AMI的原始EC2,還是被還原的新EC2
兩者都是新開機的狀態,所以預設docker是沒開啟的
nginx也是沒開啟的