常時稼働botサーバーを無料で運用するおすすめのやり方として、Googleのクラウドサーバーサービス「GCE(Google Compute Engine)」を紹介しています。
私は趣味でプログラミングをしており、過去には株価通知botアプリを作ったり、最近では仮想通貨の自動トレードbotを作ろうと勉強しています。
そこで必要になるのがbotを常時稼働させるサーバーです。
サーバーを運用しようとすると基本的に有料になりますが、ちょっと試してみたい時にお金を使うのは嫌ですよね。
私が色々とサーバーを検討した所、Googleのサーバーを無料枠内で使うのが一番良かったのでその紹介と、それ以外に検討したサーバーも併せて紹介しようと思います。
常時稼働botサーバーはGoogleがおすすめ
Googleのサーバーは「GCE(Google Compute Engine)」という名称でサービス提供されています。
私が常時稼働botサーバーをGCEに決めた理由は、
- サーバー1台分がずっと無料
- クラウドなので管理が楽
です。
単にちょっと使いたいだけなので無料であることを最重要とし、どのパソコンからも同じ環境が使えることも満たしかったので、GCEが良いという結論になりました。
私のGCEの使い方は、
- GCEの無料枠内で使えるe2-microというマシンにCentOS 7の環境を構築
- その上にdockerでdebianのpython開発環境を作成
- それをWindows10のVSCodeから開いて開発をする
です。
クラウド内のdockerをVSCodeで開いて開発できると非常に便利です。VSCodeさえ入っていればどのパソコンからでも同じ環境で開発できるなど。
以下のサイトを参考に私も環境構築したので、興味のある方はやってみてください。
その他のbot用サーバー案
レンタルサーバー
私のbotはpythonで動作しています。
pythonが使えるレンタルサーバーには、エックスサーバー、さくらのレンタルサーバーなどありますが、無料枠がなく最低でも月額約500円以上であるため選択肢から外しました。
しかし、レンタルサーバーはGCEやAWSのように従量課金制ではなく月額課金制なので、トラフィックの急激な変化で毎月の課金額が変わらないことはメリットだと思っています。
そのため、作成したbotがサーバーをレンタルするだけの利益を上げているならば、使うのは良いと思います。
AWS
最初はAWSを使おうと思っていました。
なぜなら、
- ユーザーが多くネットに情報が沢山ある
- 企業でも多く使われているので面接でアピールできる
だからです。
ただ、AWSには「AWS Lambda」というプログラミング実行環境しか無料枠がなく、マシン単位は無料で使うことができません。
私が作っているbotはweb3.pyというライブラリを必要とし、AWS Lambdaではライブラリを使うことが困難であることから選択肢から外しました。
AWS Lambdaでwen3.pyを使ってコストゼロを実現するぜ!という方は、以下のサイトを参考にやってみてください。
ちなみに、難しすぎて私は挫折しました。
また、AWSのようなクラウドサーバーサービスで無料枠がある「Heroku」というものがあったようですが、残念ながら無料枠がなくなってしまったみたいです。
古いパソコンにLinuxを入れる
古くなって使わなくなったノートパソコンにLinuxを入れて、そこにWindowsからssh等で接続して開発しようと考えました。
「ノートパソコンをサーバーにすると火事になる」というものをネットで見て怖くなったので選択肢から外しました。
ただ、その情報も今冷静になって見返してみると「火事になるくらいならレンタルサーバー借りよう」といったアフィリエイト記事だったので、信憑性は定かではありません。
また、この方法は自宅にサーバーを置いて外部から接続する形ですが、私の自宅には固定のネット回線は引いてなく楽天モバイルのテザリングで賄っているため、スマホが家にないと使えないと理由で選択肢から外したという個人的な理由もあります。
Raspberry Piを買う
サーバーが自宅に設置できないなら持ち歩けば良いということで、Raspberry Piの利用を考えました。
Raspberry Piの勉強もしたかったので妙案だとおもったのですが、持ち歩くのが面倒なことや、Raspberry Piを購入するのに1万円程度必要である、などの理由により選択肢から外しました。
まとめ
常時稼働botサーバーを無料で運用するおすすめのやり方として、Googleのクラウドサーバーサービス「GCE(Google Compute Engine)」を紹介しました。
私がGCEでbot運用を始めてから3ヶ月程度経過した所で本記事を書いていますが、Googleからの請求は0円です。
と言いたい所ですが、使い方を間違えて100円だけ支払いました。
詳細を言うと、マシンの稼働時間が1か月以内なら無料枠で使えるので、何台もマシンを作って動作検証をしていました。しかし、マシンに必要なディスク容量はマシンが非稼働時でも課金される仕様だったようで、その分のお金がかかってしまったという訳です。
課金のしきい値アラートを設定していたため少しの出費で気付けて良かったですが、こういう所がGCEやAWSの怖い所だと思っています。
何にせよ無料で常時稼働bot用サーバーが使えるGCEは非常に有り難いので、もう1台botマシンを増やしたい方や、今からbotを勉強しようと思っている方には非常におすすめです。
本記事が日本のITエンジニアが活躍する一助となれば幸いです。