筆記:AWS — Cloud9
Why Use Cloud9
假設一個情境,你在公司工作有最新版的IDE,有配備好的程式設定,但是如果有一天你需要用你自己的電腦工作,但是你的電腦沒有那麼好,無法安裝IDE。
使用Cloud9可以讓你直接使用browser 寫程式。
What’s Cloud9
Browser 程式IDE,內建git和終端機。Cloud9 已預先封裝常用的程式設計語言 (包括 JavaScript、Python、PHP 等) 基本工具。
官網:https://aws.amazon.com/tw/cloud9/
優勢:
- 只要一個Browser就可以寫程式(write / run / debug),不用安裝IDE。
- 可以線上跟其他人一起撰寫程式。
- 可以使用Cloud9來寫lambda。
範例:
使用Iam User建立Cloud9。
Cloud9 > create environment
- Step1:Name environment
Name:cloud9Test
- Step2:Configure settings
選擇EC2環境接著,instance type選擇最小的t2.micro,Platform選擇Amazon Linux 2 (recommended)。
Cost-saving setting指的是多少時間沒有動作會進入休眠模式,這樣費用可以更節省。
也可以選擇運行的VPC,這邊使用預設。
- Step3:Review 之後直接建立
建立好了之後,左邊是檔案系統,中間是編輯程式的地方,下面是terminal,terminal 有內建指令像是git/aws cli。
右邊是一起協作程式的成員。
左邊的aws resource 可以看到有哪些resource
Cloud9支援的語法
使用Cloud9
改變字型的大小:Cloud9 > Preferences > User Setting > EDITORS
從terminal看目前使用者登入的身份
$aws sts get-caller-identity
aws cloud9 會建立一個暫時的權限,在terminal執行的權限並不等於你目前登入iam user的權限。像是使用terminal建立一個iam user是不能執行的。
因為在 Cloud9 > Preferences > AWS Setting > Credentials 裡面有設定給予暫時的權限。
如果想要在Cloud9 使用iam admin的權限,可以依循以下做法:
EC2 > instance > cloud9建立的instance
可以看到iam role 是空的:
建立一個iam role (use case 使用EC2,permissions使用 AdministratorAccess) 在attach 到這台EC2。
選擇cloud9 的 instance,Modify IAM role。
將Cloud9 中的 AWS managed temporary credentials 關掉。
執行
$aws sts get-caller-identity
已經變成剛剛建立的admin Role。
C9 package
如果今天不想要使用左邊選單操作檔案,可以使用c9 package
$ npm install -g c9
打開檔案:c9 fileName
建立檔案:c9 open fileName
Create lambda function
Cloud9 > AWS resource > Lambda
Step1. 版本選擇Nodejs14
Step2. 選擇AWS SAM Hello World
Step3. 選擇folder,這邊使用cloud9Test
Step4. lambda name:sampleLambda
Deploy 剛剛建立的lambda function
Step1 選擇lambda
Step2. 選擇s3 bucket 上傳code,這邊使用create bucket
Step3. bucket 的名稱:deploylambda2107070 (bucket 名稱很容易重複)
Step4. 新增stackname:cloud9SampleLambda-stack
新增完後AWS toolkit 就可以看到執行的過程
到lambda console 就可以看到剛剛建立的lambda,只要是從cloud9上傳的function都會是stackname開頭。
Import Lambda function
如果想要import現有的lambda,可以直接選取lambda,按下import。
選擇folder
import後修改程式想要上傳
選擇Directory
選擇importLambda
Step2 選擇No
lambda console 就會看到已經更新程式了
筆記來源
【Pahud Dev】EP01 — AWS Cloud9輕鬆上手(4K 2160p)