PRESSMAN*Tech(プレスマンテック)

東日本橋の制作・開発会社 プレスマンのスタッフブログ

カテゴリー:AWS

PuppeteerをLambdaで使う前段階、serverless-chrome/lambdaのnpmインストールでハマったときの解決法

Node.js初心者の自分が以下の先輩の記事を読み、「Puppeteer on Lambdaをやってみたい!」と思って試したところ、Lambdaにデプロイする前にハマったので解決法を紹介します。

Puppeteer on LambdaでWebページのキャプチャを撮る

前提

  • Node.jsとnpmがインストールされている
  • Node.jsのバージョンはv8.10.0である

下記のコマンドでバージョンをチェックします。

$ node -v add
v8.10.0

ディレクトリ構成がわからない

自分はNode.jsのプロジェクトを作成するのが初めてだったので、ディレクトリ構成がわかりませんでした。まずはPuppeteer用のディレクトリを作成し、その中で下記の2ファイルを作りましょう。

├── .npmrc
└── package.json

プロジェクトごとに.npmrcを設定するのがベターです。.npmrcとpackage.jsonの内容は後述します。

続きを読む

Puppeteer on LambdaでWebページのキャプチャを撮る

Puppeteer on Lambda

AWS Lambdaで遂にNode v8.10を使用できるようになりました。
これでPuppeteerが使える!と意気揚々としていたのですが、いつの間にか必須要件がv6.4.0以上となっていました。以前はv7.10以上必須と書かれていたはずですが・・・

いきなり出鼻を挫かれましたが、気を取り直していきます。

はじめに:Puppeteerとは

Google謹製のGoogleChromeを自動操作するライブラリです。Nodeで動作します。
「このサイトにアクセスして、このボタンをクリックして・・・」といった操作を自動で行うことができます。雑に言うとExcelのマクロみたいなものです。
Chrome59で実装されたヘッドレスモードに合わせる形でプロジェクトが立ち上がり、主にWebアプリの自動化テストの分野で注目されています。
似たプロジェクトにPhantomJSChromelessがあります。

続きを読む

Slackに溜まり続けたファイルをLambdaでサクッと消してみる

はじめに

こんにちは。CTOの穴原です。 弊社では1年半くらい前からSlackを導入し、使用しています。 おかげでリモートワークをする方も増え、働き方も多用になってきました。
(特にママさんワーカーが増えました!)

Slackをフリープランで使用していると、ストレージ容量制限を超えて怒られてしまいます。 最近アップロードしたファイル以外は一括削除したい + 継続的に削除が走るようにしたい、ということで、SlackAPI × Lambdaで実装してみました。

Slack API を使ってみる

まずは、Slack APIを使ってみます。

今回はfiles.listでファイルの一覧を取得し、files.deleteで対象のファイルを削除する、という流れでやってみようと思います。 (APIの使い方はここ

Slack APIのメソッドの引数はtokenがRequiredになっているので、取得しておきましょう。*1 (tokenの取得はここから)

Lambda

Lambdaで関数を作成します。 SlackのBluePrintも用意されているのですが、それほど難しくないので、今回は一から作成しました。

Nodeのコードはこんな感じ。

続きを読む

【AmazonLinux】AmazonLinuxのバージョンアップ方法

AmazonLinuxのバージョンアップ作業を行ったので、その手順を残しておいた。

 

【AWS】【AmazonLinux】AmazonLinuxのバージョンをアップデート

AWSを使ってみよう!(その21) - AWSアカウント解約

最近、
EC2とかRDSの整理を行っていて
使っていないアカウントとか。。。
もう利用していないよね?
というアカウントが、いくつか出てきました。

AWSは、使った分だけ
料金が掛かります。
※これ大前提ですね。

大体、
利用していなそうなアカウントなのに
いつ取ったか分からないスナップショットとか
使っていないインスタンスのIPアドレスとか
そのボリューム(EBS)とか。。。
が残っていたりします。

当たり前ですが、
少額であろうと、料金は発生します。

そこで、
利用していない
アカウントは『解約』することにしました。

あまりにも簡単に解約出来てしまうため
ちょっとドキドキです。

それでは確認してみましょう。。。

続きを読む

AWSを使ってみよう!(その20) - AWS Summit Tokyo 2016 が開催されます!

AWS Summit Tokyo 2016
が開催されます!!

AWS Summit Tokyo 2016
https://aws.amazon.com/jp/summits/tokyo-2016/

昨年(2015)、
参加しましたが、大変な盛況でした。

色んなコトをされていたり
色んな商品/サービスがあったり
たまに、お知り合いの方に会えたりと
大変、楽しかったです。

続きを読む

AWSを使ってみよう!(その19) - ACM(SSL/TLS証明書)で分かったこと

ACM使ってますか?

以前、
『AWS Certificate Manager』
を紹介致しました。

<以前の記事>
AWSを使ってみよう!(その17) - AWS無料のSSL/TLS証明書をサポート
http://www.pressmantech.com/tech/aws/4116

無料ってインパクトありますね。

そこで、
実際に利用してみて、分かったことを、
まとめておきたいと思います。

続きを読む

AWSを使ってみよう!(その18) - WEBサイト(S3)にアクセス制限

以前、
S3を利用して、WEBサイトを公開しました。

<以前の記事>
AWSを使ってみよう!(その1) – アカウント作成からWEBサイトの公開
http://www.pressmantech.com/tech/aws/2149

S3には、
各種のアクセス制限を掛ける方法があります。

バケットポリシーの例
http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/example-bucket-policies.html

今回は、
『特定のIPアドレスへのアクセスの制限』と
『特定のHTTP Referrerへのアクセスの制限』
を試してみたいと思います。

続きを読む

AWSを使ってみよう!(その17) - AWS無料のSSL/TLS証明書をサポート

これは、衝撃です!!

[New] AWS Certificate Manager – AWS上でSSL/TLSベースのアプリケーションを構築
http://aws.typepad.com/aws_japan/2016/01/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws.html

AWSが、無料のSSL/TLS証明書の提供を開始しました!

今までは。。。
SSL/TLS証明書を設定・管理することは多くの作業を伴い、
手作業が多く容易に自動化できません。
多くの場合、各証明書に対して年額の支払いが必要になります。

続きを読む

AWSを使ってみよう!(その16) - AWSCLI(Cloudwatch)によるS3容量の取得

以前の記事:
AWSを使ってみよう!(その8) - S3の容量監視(CloudWatch)
http://www.pressmantech.com/tech/aws/3711

こちらの記事で、
CloudwatchによるS3の容量監視を行いました。

AWSコンソールからは、
Cloudwatchに入れば
S3のファイル数とバケットサイズが分かります。

【AWS発表】Amazon S3:通知機能の拡張と、CloudWatchにバケットメトリクスが加わりました
http://aws.typepad.com/aws_japan/2015/07/s3-delete-notification-cw-bucket.html

しかし、
管理しているAWSアカウントが増えてくると、
ログインを行って、サイズを確認する等
煩雑で時間の掛かる作業になりがちです。

弊社では、
AWSCLIを利用して、各AWSアカウントを巡回して、
利用状況の取得を行う、スクリプトを組んでいます。
※対象は、EC2,RDS,S3等です。

続きを読む

▲ 先頭へ戻る