僕は一寸
2021/08/11

Cloudflare Pages を Zola で使ってみた感想

JAMStack の思想に基づいた静的サイトジェネレーターの勃興とと共に,そのようなサイトをホスティングするためのサービスが増えてきました。有名なところだと,GitHub PagesNetlifyVercelFirebase Hosting などは名前を聞いたことがある方も多いのではないかと思います。

そんな群雄割拠するホスティングサービス界に遅ればせながら参戦したのが Cloudflare Pages です。後発のサービスらしく無料枠の制限も競合と比べると緩く,注目を集めていました。当サイトを Zola で作り直すにあたって Vercel から Cloudflare Pages に移行してみたので,少し使ってみた感想を書いてみます。

Cloudflare Pages のトップページ

良いと感じた点

早い

日本を含む世界中に CDN サーバーが配置されているため,十分に早いです。Netlify の無料プランでは日本リージョンの CDN が利用できず,日本からアクセスするとかなり遅くなってしまいます。

参考: Netlifyは遅い / Yuuniworks Blog

IPv6 に対応している

小規模なサイトではあまり恩恵はないかもしれませんが,元来 CDN を生業としている企業というだけあって IPv6 ,HTTP/3 ,QUIC などの最新技術にもしっかり対応しています。Vercel や GitHub Pages では IPv6 に対応していません。

個人的に今からサイトを立ち上げるのに IPv4 のみというのは良くないと思っているので,Cloudflare Pages が IPv6 に対応しているというのは大きなメリットだと思います。と言いつつこの前まで Vercel を使っていましたが。

2021-10-17 追記: GitHub Pages は 2021-09-30 より IPv6 に対応しているようです (Enabling IPv6 Support for GitHub Pages | GitHub Changelog)

GitHub と連携できる

GitHub と連携して,GitHub 上のリポジトリをソースに利用し,プッシュに応じて自動でビルドすることが出来ます。GitHub Pages を利用する場合のように GitHub Actions の設定を自前で用意することなく,GUI 上での数クリックで完結するためとても手軽です。

良くないと感じた点

ビルドが遅い

明らかにビルドが遅いです。小規模なサイトということもあり,Netlify や Vercel ではせいぜい 1 分もあればビルドが終わりデプロイされていたのですが,Cloudflare Pages では 2 分以上,下手したら 3 分近くかかります。

ビルドに 2 分 50 秒かかっている

デプロイの詳細を確認してみると,ビルドそのものは数秒で完了しているのですが,ビルド環境の初期化に時間がかかっていることが分かりました。今まで使ったことのあるホスティングサービスではこんなに待たされたことはなかったので,ちょっと面食らいました。

2022-09-04 追記: 2022-02 頃からビルド速度は著しく改善され,今は数十秒でビルド環境の初期化〜デプロイが完了します。

エラーメッセージが優しくない

Cloudflare Pages では環境変数から Zola のバージョンを指定しないとビルド環境 Zola がインストールされずビルドに失敗する仕様になっています。しかし,その際のログには zola: command not found としか表示されず,環境変数の設定が必要である旨は表示されません。

環境変数の設定画面

ちゃんとドキュメントを読まないユーザーの問題ではありますが,バージョン指定がなければ最新バージョンを利用するとか,エラーメッセージに環境変数の設定が必要な旨を表示するなど,気を利かせてくれればとも思います。

まとめ

カタログスペックは優れていますが,ビルド環境の初期化の遅さなどの未成熟な点が見受けられます。1 度だけですが,デプロイ段階で原因不明のエラーが発生し失敗することもありました。クリティカルな問題には遭遇していませんが,まだ改善の余地があるサービスといった印象です。

Cloudflare のグローバルネットワークへのデプロイに失敗

2022-09-04 追記: その後ビルド速度は著しく改善され,またデプロイに失敗することも先述の一度のみです。非常に安定したサービスと捉えて問題ないと思います。

しかし,IPv6 対応,Cloudflare の世界中に張り巡らされた CDN などは魅力的です。今回は利用していませんが,Cloudflare Workers との連携,Web Analytics なども他サービスにない強みになると思われます。本サイトではとりあえず,引き続き Cloudflare Pages を利用するつもりです。ビルド時間が改善されたら追記します。

← このサイトをリニューアルしました Arch Linux で Canon のインクジェットプリンターを使う →