yukuro’s blog

ぽえむ日記

docker-composeでValheim + Grafanaなゲームサーバーを作る

docker-composeでValheimのゲームサーバー + Grafanaによる監視を構成したのでメモ

Valheimとは

store.steampowered.com

Valheimは北欧神話ライクなオープンワールドサバイバルクラフトゲームです。

デフォルトでは1~10人のマルチプレイに対応しています。

Valheimゲームサーバーを作る

友人(最大4人程度)とマルチで遊ぶためにValheimの専用サーバーを建てることにしました。

専用サーバーの構築にはSteam CLIのインストール等が必要ですが、幸いにも有志の方によってdocker imageが公開されています。

github.com

Deploymentの項目に様々な導入方法がありますが、今回は同時接続の人数が多くて4人程度だったのでdocker-composeを使用した方法を選択しました

VPSの選定

ゲームサーバーにはIndigo VPSを選択しました。

選定した理由は以下のとおりです

  • 料金が安い
      • 使用するdocker imageのSystem requirementsの項目には「4コアCPU & 8GBを推奨」との記載がありますが、他VPSだと月7000円ほどになり、最大4人で遊ぶには高額すぎると感じました

     

Indigo VPSの評判に関してSSH接続が不安定とのレビューも散見されましたが、特に運用に関して大きく困った点はありませんでした。*1

Grafana Cloud

サーバーのリソース監視やアラート等も出したかったのでGrafana(とPrometheus)による監視を入れることにしました。

Grafanaというとオンプレで動かすことが一般的なように思えますが、クラウド版を使ってみたかったのでGrafana Cloudを使用することにしました。

grafana.com

また、Grafana Cloudのサイトには丁寧にdocker-composeによる構築方法も記載されていたため、それに従って各種設定をしました。

grafana.com

docker-compose.yml

上記のことを実行したdocker-compose.ymlならびにその他設定ファイルは以下のリポジトリにまとめてあります。

github.com

余談

Indigo VPSを契約する前、RAMは4GBで十分だろうと、さくらのVPSの4GBプランを契約しましたが、8GBにスケールアップする際に高額 & スケールダウン出来ないのでIndigo VPSに乗り換えました。

契約してしまったさくらのVPSは最低利用期間が3ヶ月なので、何に使おうかな...

*1:WebUIから登録できる鍵がRSA鍵しか受け付けない等の細かな不満点はありましたが...