Blog Settings

Digital OceanでGhostのブログを作る

World Administrator
2023年11月15日
7 分で読めます
CloudflareTech For YouProgrammingGhost CMSDigital Ocean
Photo by Jordan Harrison / Unsplash

目次

Digital Oceanでは非常に簡単にGhostのブログをデプロイすることができることを紹介しました。

この記事ではGhostをSelf-hostする際の注意点を書いていきます。

課金の条件は。

AWSでは固定IPの割り当てに料金が課金されることが有名ですね。

EC2インスタンスは起動している分だけの課金であることが特徴ですが、Digital Oceanでは構築したDropletが存在している間課金されます。電源を切っていても課金されるのでご注意ください。

Why am I billed for powered off Droplets?

When you power off your Droplet, you are still billed for it. This is because your disk space, CPU, RAM, and IP address are all reserved, even while powered off. Therefore, charges are made until you destroy the instance.
Droplet Pricing | DigitalOcean
Helping millions of developers easily build, test, manage, and scale applications of any size - faster than ever before.

Self-hostするデメリットは。

Ghost Proの機能が一部使えません。

Ghost(Pro) - Official managed hosting for Ghost
The best Ghost managed hosting from the creators of the open source publishing platform. Spend less time on your server, more time on your site.

画像を編集する機能やメールに関する機能は使うことができません。

快適にセットアップと利用を済ませるには最低でも2GBのRAMが必要であることを考えると、Self-hostをする費用はそこそこかかるため、Themeを変更しないのであればGhostの提供するHostingプランを使った方が安上がりになりますし、何一つ心配する必要がなくなります。

接続する際の暗号化は何を使えばいいか。

Dropletでは接続時の認証に多くの人が慣れ親しんだパスワードによる認証とSSHによる認証が利用できます。

パスワードは手軽な反面短い文字列では極端に弱く、定期的な変更が必要になるため推奨しません。

SSHは鍵の生成が面倒ですが、秘密鍵を適切に管理すれば(ウェブに公開しなければいいだけです)、安全なのでサーバーを利用する際はかならずSSHを利用するようにしましょう。

SSHを使用してリモートサーバーに接続する方法 | DigitalOcean
SSHは、リモートLinuxサーバーの管理に使用される重要なツールです。このガイドでは、このユーティリティの基本的な使用方法とSSH環境の設定方法ついて説明します。

どのスペックのDropletを選択すればいいのか。

CPUについてはあまり気にしなくてもいいです。

RAMが2GB以上あるものを選択してください。

CPUについては気にする必要はないです。

ブログではRAMがボトルネックになることが多い上に、RAMを多くしようとすれば十分な性能のCPUがついてきます。

容量はどのぐらいに見積もればいいのか。

基本的にDropletに付属する容量で不足することはありません。

不足した場合でも、容量をいつでも買い足すことができます。

High-Performance Block Storage | Starting at $10/mo for 100 GiB
Business-ready NVMe- and SSD-based block storage to attach to your compute instance.

GhostではすべてのデータをMySQLに保存します。

Supported databases in production for self-hosting Ghost - Ghost Developers
Find out what databases are supported for a production install of Ghost, and learn how to migrate your database.

Digital Oceanにあるテンプレートを利用した場合、Dropletの中にMySQLサーバーが立ち上げられます。

Ghost | DigitalOcean Marketplace 1-Click App
Ghost is a fully open source, adaptable platform for building and running a modern online publication. It powers blogs, magazines and journalists from Zappos to Sky News.

これにより高価になりがちなデータベースサーバーをレンタルする必要がなくなり、費用を抑えられます。

しかし、もしあなたの作るブログが複数人による多くの大きなファイルを利用する場合(あなたが写真家で多くの写真をアップロードする場合など)は、データベースサーバーを借りるのもいいかもしれません。

データベースサーバーを借りた場合、大量のデータを高速に保存、利用ができるため非常に大きなサイトを作る際は検討してください。

Digital Oceanの提供するデータベースサーバーはマネージドであり、つまりアップデートやバックアップなどの機能を含む面倒な作業すべてをDigital Oceanがやってくれるため、あなたは一度データベースを設定してしまえば何も気にする必要がありません。将来多くのアクセスがありDropletを複数作成する場合でも、同じデータベースサーバーに接続するだけですべてのデータが同期されるため、大きなサイトには非常に強力なものになります。

Worry-Free Managed MySQL Hosting | DigitalOcean
Leave the complexity of MySQL administration to us. We’ll handle setting up, backing up, and updating — so you can focus on building great apps.

しかし、Dropletを一つしか管理しない場合、そして費用を抑えたい場合はデータベースをDroplet内に作ることをおすすめします。もし容量が足りなくなった場合はストレージを買い足せばいいですし、必要があれば少額でバックアップをとる機能がDigital Oceanにはあります。

DigitalOcean Droplets | Scalable Cloud Compute Starting at $4/mo
DigitalOcean Droplets are simple, scalable virtual machines. Spin up Basic, General Purpose, Memory-, or CPU-Optimized VMs in 55 seconds.

バンドウィス制限

Digital Oceanではサーバーから出て行く通信の量を計測し、制限を設けています。

Bandwidth Billing | DigitalOcean Documentation
Consolidated information on bandwidth usage charges for Droplets, Spaces, and DigitalOcean Load Balancers.

しかし、Dropletの最低プランでさえも0.5TBあるため、ブログ程度の利用では、馬鹿でかい炎上でもしない限りは問題ありません。

快適なGhostのホスティングをする場合は2TP以上のバンドウィスになると思います。

月2TBも転送するサイトになった場合はもはやブログ経営において資金が足りなくなることもなくなるため、基本的にこの制限を気にすることはなくなるでしょう。

一方で常時接続するためのVPNサーバーやファイルサーバーとしての用途では物足りなく感じるかもしれません。

そういった場合は複数のDropletを利用することになります。

CDNを利用しよう

Cloudflareを利用しましょう。

ウェブサイトのセキュリティとパフォーマンス改善
Cloudflare では、インターネットが期待通りに機能するようサービスを提供します。CDN、DNS、DDoS対策などのセキュリティ関連など、各サービスの内容をご覧ください。

CloudflareはCDNの一つで、コンテンツのキャッシュを可能にします。コンテンツの取得にいちいちDroplet(CDNのキャッシュサーバーに対応してオリジンと呼ばれます)にアクセスしていては負荷が多く、UXの低下につながります。

Cloudflareグローバルネットワーク | データセンターのロケーション
100か国以上の数百の都市に広がる大規模なグローバルネットワークで、最新企業に優れたパフォーマンス、セキュリティ、信頼性を提供します。

プライバシーに優れ、パフォーマンスも素晴らしいのにFreeプランが用意されています。Freeプランといいつつそのカバー範囲は多く、有料オプションを使わない限り、ずっと無料です。

アプリケーションサービスプラン | 料金設定
お客様の用途に適したCloudflareのアプリケーションサービスプランを見つけて下さい。各プランの料金設定とサインアップの詳細は、こちらをご覧ください。

設定画面も完結でわかりやすく、非常におすすめできるサービスです。

ドメインはどこで取得すればいいか。

日本企業からドメインを取得するのはおすすめしません。

サイトのデザインが時代遅れです。そして汚らしいドメイン割引サービスを延々見せてきます。

ドメイン価格などウェブサイト運営で稼げる額に比べれば雀の涙です。

値段の安さに惹かれるのではなく、海外のまともなサービスを利用しましょう。

JPドメインを取得したい・面白ドメインを使いたいというのであればGandiを利用しましょう。
圧倒的なドメイン取り扱いがあります。

Gandi.net: ドメイン名、メールボックス、ウェブホスティング、SSL/TLS証明書
➤ Manage your websites, your emails, your SSL certificates, and VPS servers. ✅ Included with a domain name: 1 SSL certificate, Unlimited aliases & forwarding, and our LiveDNS.

余計な費用はかけたくないのであればCloudflare Registrarを利用しましょう。
ドメイン卸値で販売しているというとんでもない良心の持ち主です。

ドメイン登録と管理 | Cloudflare Registrar
Cloudflare Registrarでドメイン名を安全に登録。 Cloudflareは利益を上乗せせず、ドメイン名を原価で提供します。 Cloudflare Registrarにドメイン名を移管しましょう。

Gandiはドメインレジストラあるあるのうざい広告メールなどを絶対にしないというポリシーを掲げるフランス初のサービスです。No Bullshitを掲げるだけあり、送られるメールは料金に関する連絡など、重要なもののみです。

Gandi について
Gandi.net は世界最大のドメインレジストラの一つで、250万以上のドメイン名を管理し、750種類以上のトップレベルドメインを提供しています。

CloudflareはCDNのほかにDNSやドメインレジストラのサービスも展開しています。今はなきGoogle Domainのような素晴らしいデザインをしている上に、ドキュメントが非常にしっかり整備されています。Googleにわからないことを打ち込む前に、ドキュメントを見ればあなたがやりたいことについて的確でわかりやすい手順付きの説明を見つけられるでしょう。