Help us understand the problem. What is going on with this article?

t2.nano インスタンスで Hubot

More than 5 years have passed since last update.

今日 Amazon EC2 にアップデートがあって t2.nano インスタンス が使えるようになりました。オンデマンドインスタンスでも月 $7 くらいなので Heroku の Hobby プラン と価格帯が並んだことになります。

今まで EC2 で Hubot を動かそうとすると「 t2.micro でもスペック過剰だし高い」という感じだったので、新しい t2.nano は Hubot を動かすのに最適なのではないでしょうか。

というわけで「 t2.nano でも Hubot 動くかな?」と思って試してみたら普通に動いた、というだけの雑なネタです。所要時間 10 分くらいです。

インスタンスを立ててログインする

OS は Amazon Linux を選びました。

詳しい説明は割愛します。

はじめにやること

git が入ってないので入れます。

sudo yum update
sudo yum upgrade
sudo yum install git

Node.js をインストール

tagomoris/xbuild を使うと楽です。

git clone https://github.com/tagomoris/xbuild.git
xbuild/node-install v4.2.3 ~/local/node
echo 'export PATH=$HOME/local/node/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

Redis をインストール

hubot-brain 使わないなら入れなくていいです。

sudo yum --enablerepo=epel install redis
sudo service redis start
sudo chkconfig redis on

新しい Hubot を作成

既に自分の Hubot がある場合は git clone とかして落とすだけでいいです。

今回は Slack で動かしたかったので、Adapter は slack と入力して、Slack の設定画面から新しい Hubot Configuration を追加して TOKEN を生成しておきます。

npm install -g yo generator-hubot
mkdir hubot
cd hubot
yo hubot
echo "HUBOT_SLACK_TOKEN='xoxb-12345678-xxxxxxxxxxxxxxxx'" >> .env

動かしてみる

特に意味は無いですが今回は node-foreman を入れて動かしました。

npm install -g foreman
nf start

永続化 (Daemonize) する

foreman だけでは永続化出来ない?っぽいですね。
forever とか使うといいと思います。

まとめ

t2.nano でも普通に Hubot は動きました。
軽いノリで Hubot を動かしたいときは AWS でも Heroku でも好きなサービスを使うといいでしょう。

hoto17296
ソフトウェアエンジニアです
churadata
沖縄で データ分析 / 機械学習 / Deep Learning をやっている会社です
https://churadata.okinawa/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away