# lambda のデプロイパッケージと virtualenv

# コマンド

virtualenv -p python3.7 env1
cd env1
. bin/activate

python -V
..

deactivate

# AWS までの

# lambda のデプロイパッケージ

  • lambda_function.py
  • lib64/python3.7/site-packages 以下 ( pip install したものが入る )

を固める

zip -r /tmp/lambda_function.zip lambda_function.py

cd env1/lib64/python3.7/site-packages
zip -r /tmp/lambda_function.zip *

# EC2 環境へのアクセスについてメモ

EC2環境作成時に作る public key を ~/public-key/ に置いたとして、

chmod 600 ~/public-key/key1.pem

ssh ec2-user@<IPアドレス> -i ~/public-key/key1.pem

rcp ec2-user@<IPアドレス>:/tmp/lambda_function.zip

# Python から AWS API にアクセス (Boto3 ライブラリ)

これがあるとローカル?で実行が出来る。
(必要な IAM role を割り当てたEC2 環境?)

s3 =  boto3.resource('s3')

for rec in event['Records']:
    bucketname = rec['s3']['bucket']['name']
    filename   = rec['s3']['object']['key']
    obj = s3.Object(bucketname, filename)
    response = obj.get()
    content = response['Body'].read()
    # ...
    obj = s3.Object('examplewrite000ta', filename + '.zip')

[ 📩 ご意見 ]