テクめも

プログラミング関連のちょっとしたTipsなどを書いています。

AWS

S3からファイルに保存せずに画像を読み込む

S3に保存した画像ファイルをプログラム中で使用したいシナリオを多いかと思います。 一度ファイルに保存して、保存したファイルを読み込む方法もありますが、保存せずに利用する方法を紹介したいと思います。 from io import BytesIO import boto3 import nu…

CloudWatchのログ確認を便利にする

CloudWatchのログの確認はAWSコンソールや公式のCLIよりもawslogsのほうが便利です。 pecoと連携することで、さらに便利になります。 以下のようなfunctionを.bashrcとかに書いておきます。(※zshで動作確認しています。) awslog() { local res=$(awslogs g…

AWSのIPアドレスを取得する

AWS

AWSのIPアドレス帯はJSON形式で公開されています。 https://ip-ranges.amazonaws.com/ip-ranges.json jqを使うと、IPアドレスを抽出できます。 curl -s https://ip-ranges.amazonaws.com/ip-ranges.json \ | jq -r '.prefixes[] | .ip_prefix' 13.248.118.0/…

lambda-uploaderで環境変数を上書きしない

lambda-uploaderを用いると、PythonのコードをAWS Lambdaに簡単にアップロードできます。 lambda-uploader myfunc 設定はlambda.jsonに書かれている内容が反映されます。 環境変数はGitで管理したくないので、lambda.jsonに書かないケースも多いかと思います…

AWSのElasticCacheでRedisを使う

Redisクラスターの作成 コンソールかCLIで作成します。 # CLIの場合 $ aws elasticache create-cache-cluster \ --cache-cluster-id my-cluster \ --engine redis その他のオプションについては、こちらを参照ください。 作成したRedisのエンドポイントの情…

Elastic Beanstalkで生成されるS3バケットを削除する方法

AWSのElastic Beanstalkでは、ソースコードの保管にS3を使っていますが、このS3のバケットを削除しようとしてもエラーが発生して削除できません。 S3の設定で、アクセス権限のバケットポリシーにあるEffectをDenyからAllowに変更すると削除することができま…

AWSのCLIをもっと便利に使うツール

AWS #2 Advent Calendar 2018 25日目の記事です。 はじめに AWS CLIを使っていますか?まだの方はぜひインストールしてみください。 www.xn--ebkc7kqd.com この記事では、AWS CLIをさらに便利に使うことができるaws-shellについて紹介したいと思います。 aws…

awscliをインストールする

インストール # macの場合のみ $ brew install awscli OR $ pip install awscli 設定 $ aws configure AWS Access Key ID [None]: xxxx AWS Secret Access Key [None]: xxxxxx Default region name [None]: ap-northeast-1 Default output format [None]: js…