調査の背景
開発作業ではソースコードをGitHubに格納していますが、Databaseも開発の異なる場所で共有したいと考えています。そのため、今年に入ってAzureでDatabaseを公開していました。しかし、ここ数日で日額1,000円を超える無料枠を利用しており、コストがかさむことが課題となっています。そこで、クラウドに構築する、クラウドサービスを使用する、または自宅のHyper-Vに構築して公開するなどの選択肢を検討しました。パフォーマンスとコストの観点から、自宅のHyper-Vを利用することが良い選択と考えています。
希望・要件
- 月額コストは1,000~2,000円以下が望ましい
- 複数のDBを格納できること
- SQL Server、MySQL、PostgreSQLの各DBMSを使用できること
- テスト環境用のDatabase
自宅サーバー(仮想)を公開する方法の調査と評価
- ngrok:使いやすそうだが、セキュリティリスクが懸念される。
- Cloudflare Zero Trust / Cloudflare Tunnel:専用クライアントソフトが必要で、ドメイン取得も必要。
- Tailscale:専用ソフトが必要だが、速度が速いとの評判。
- localhost.run:詳細な評価が必要。
クラウドサービス
- Heroku Postgres:1万レコード、1GBまでで$5/月。1000万レコード、10GBまでで$9/月。
- GCP:コストが高め。
- Azure:コストが高め。
- AWS:GCPやAzureと大差ないコスト。
VPSに構築
- Conoha:最も低コストだが、コントロールパネルの反応が遅い。
- XServer:コストが比較的低いが、使い勝手については再評価が必要。
現時点での結論
やっぱり自分でVPSに構築するのがランニングが安くて、クラックされた時の影響が少なくて、自由度が高そう。引き続き、最適なデータベース公開方法を調査します。