N予備校「プログラミング入門Webアプリ」を受講しています。
今回は第3章17節です。
Herokuとは
Heroku(ヘロク)とは、Web サービスを動かすことのできるプラットフォームを提供しているサービスのこと
Heroku CLI をインストールすると、heroku
コマンドが使える。
サーバーの作成
下準備
Heroku へのログイン
heroku login
Dockerを利用するために Heroku Container Registory へログインする
heroku container:login
Dockerfileに以下を追記。
今回は以前作ったhubotを登録してみる。
COPY . /home/praise-bot
CMD ["sh", "run.sh"]
docker-compose
をしてマウントされていた処理を、herokuではDockerfile
自体に記述。
run.sh
に起動時の処理を書く。
yarn install
env HUBOT_SLACK_TOKEN=xoxb-xxxxxxxxx HUBOT_SLACK_RTM_CLIENT_OPTS='{"dataStore":"false","useRtmConnect":"true"}' bin/hubot --adpater slack
heroku config:add
で環境変数の設定しても動いた。
どっちのがいいのかな。
サーバー作成
heroku create
ランダムな名前のサーバー名で Heroku にサーバーを用意し、そのサーバーの Git のリポジトリを heroku という名前のリモートリポジトリとして登録する
heroku destroy --app サーバー名 --confirm サーバー名
で Heroku サーバーを削除できる
デプロイ
アプリケーションをサーバー上に配置し、動くようにすること
push
してrelease
する。
heroku container:push web
heroku container:release web
ブラウザで開く場合
heroku open
まとめ
一定時間でスリープしてしまうので、それがちょっと不満。
この辺をやるとうまくいきそうだけど。