やったこと
herokuにGolangで作ったプログラムをデプロイしました。
herokuはwebアプリしかデプロイできないと思っていたのですが、普通のプログラムもheroku上で動かせるというのを知りました。
とりあえず記事にします。
#必要なもの
・Golangで書いたプログラム
・herokuCLI <- これはherokuのチュートリアルでインスコしていると思います
go get github.com/tools/godep
でインストールできます。
###いきなり余談
heroku コマンドで
こんなエラーが出たら
この記事を見て、herokuCLIをアップデートしましょう。
#本番
demoappディレクトリに
main.go
があるとします。
この時、パッケージはGOPATH以下に存在しないと行けないようです
1.
$echo 'worker: demoapp' > Procfile
と実行してください。workerというプロセス名にすることで、webアプリでないものも動かせるようになります。
2.
$godep save
と実行してください。
これでライブラリなどの依存関係がまとめられます。
3.
$heroku create --buildpack https://github.com/heroku/heroku-buildpack-go.git
と実行してください。
--buildpack https://github.com/heroku/heroku-buildpack-go.git
は、godepを使用する限り絶対に付けないといけないオプションです。
4.
$git init
$git add .
$git commit -m "first commit"
$git push heroku master
これを実行すればデプロイ完了です!
ダッシュボードのResourcesタブを見ると、workerがあります。 右のペンのボタンを押してトグルをオンにし、confilmを押すと稼働します。 ログは右上のMoreボタンの「View logs」より確認できます〜!! #エラー pushする際に
fatal: 'hoge' does not appear to be a git repository云々
などと出て来た場合は
//アプリケーション名はherokuサイトのダッシュボードから確認できます
git remote add heroku https://git.heroku.com/アプリケーション名.git
を実行してください。
https://qiita.com/sayama0402/items/e2c9e65786259dc55e11