Cloudflare
Cloudflare のローカル開発コマンドである wrangler を、複数同時に turborepo などで動かすと、タイトル通りのエラーが発生することがあります。 ✘ [ERROR] Address already in use (127.0.0.1:9229). Please check that you are not already running a ser…
以前の記事で、 Vercel から OpenTelemetry のトレースを Mackerel へ送信した記事を書きました。 tech.natsuneko.blog 今回は、プラットフォームを変え Cloudflare Workers から Mackerel へ OpenTelemetry のトレースを送ってみようと思います。 まず、 Cl…
Cloudflare Workers で GraphQL バックエンドを構築する際、最初はサンプルなどから簡単に始められますが、実際の開発では「スキーマをコード内に書きたくない」「型安全性が欲しい」といった課題に直面します。 この記事では、Cloudflare Workers の制約の…
前回の記事では、Cloudflare Workers で EXIF/XMP データを取得する方法について解説しました。 tech.natsuneko.blog 今回は PNG ファイルに焦点を当て、iTXt チャンクに埋め込まれたメタデータを取得する方法を紹介します。 まず、 PNG ファイルには任意の…
例えばサーバーレスな環境で、非同期的に画像のメタデータを取得してごにょごにょしたいこと、ありませんか?わたしはあります。 今回は、Cloudflare Workers を使って、画像のメタデータを取得してみようと思います。 まず最初に思いつくのが、Node.js 用画…
Cloudflare Images を使うことで、ある程度予測可能な金額で、あらかじめ指定したサイズにて最適化された画像を配信することができる (クエリパラメータで制御することもできる)。 www.cloudflare.com 画像は下記のような URL で配信されるが、これを自前の…
Traefik というクラウドネイティブ時代に合わせた良い感じのリバースプロキシーを使う機会があって、その際 Let's Encrypt での証明書生成もこいつだけでできるとのことだったので、やり方のメモ。 こういった docker-compose.yml (関係ない部分は略) があっ…
Terraform で Cloudflare の DNS 設定を管理していたけど、微妙に詰まったのでメモ。 Terraform の Cloudflare Provider で CAA レコードを追加しようと思って調べてみると、以下のように出てくる。 Creation of CAA records · Issue #821 · cloudflare/terr…
Cloudflare Pages 便利ですよね。 push するだけでビルドするのはよくありますが、そこから Cloudflare がもつ世界中のサーバーに投げてくれるのはとても良いです。 ところで、 Preview Deployment として反映されているものにもドメインを割り当てたいと思…
Web サービスリニューアルしたいことってありますよね? ただ、一度に一気にリニューアルすると、想定していない不具合が出てきたり、今の運用どうするの?っていう問題があったりします。 そこで、 Cloudflare Workers を使って段階的に移行する方法を紹介…
Cloudflare Pages の Web UI から、 PNPM + Astro なウェブサイトをデプロイするぞ! ということで、やり方のメモ。 やり方は、リポジトリを接続した後、以下のように設定すれば良い。 ビルドコマンド: # pnpm のインストールと、依存のインストール&ビル…
だいぶ前に Cloudflare Tunnels でやっていたのをプレビュー用に Localhost のサーバーをインターネットに公開する手順を書いたのですが、 その後再設定するときの手順。 ただし、その後 Cloudflare Tunnels の設定方法が変わってマイグレーションする必要が…