search
LoginSignup
12

More than 5 years have passed since last update.

posted at

updated at

Organization

t2.nano インスタンスで Hubot

今日 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 でも好きなサービスを使うといいでしょう。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
12