Revel環境構築
結論
Dockerでプロジェクトのディレクトリをマウントしてコンテナ内でrevelを動かすようにすればアプリが正常に動作した 以降は調査した内容
セットアップ
code:bash
export GO111MODULE=off
go get github.com/revel/revel
go get github.com/revel/cmd/revel
go get github.com/revel/modules
cd $GOPATH
revel new -a myapp -r
revel run -a myapp
ビルドエラーになった
% revel run -a myapp
Revel executing: run a Revel application
WARN 22:51:38 run.go:150: No http.addr specified in the app.conf listening on localhost interface only. This will not allow external access to your application
ERROR 22:51:38 build.go:204: Failed to parse build errors error="can't load package: package myapp/app/tmp: unknown import path \"myapp/app/tmp\": cannot find module providing package myapp/app/tmp\n"
ERROR 22:51:38 watcher.go:270: Build detected an error error="Go Compilation Error: See console for build error."
newしたアプリではダメだった
公式のexamplesなら動いた
code:bash
ghq get revel/examples
revel run github.com/revel/examples/chat
Ctrl + Cでサーバを落とすと次以降起動できなくなる
原因は不明
アプリを削除してgit clone直したら動いたので、プロジェクト内にゴミが残っている可能性はある
諦めてDocker内で使うこと方針で調査
ホストPCのプロジェクトディレクトリをマウントしてしまえばいけるはず
code:bash
cd $GOPATH
revel new -a github.com/jiro4989/reveltest
cd $GOPATH/src/github.com/jiro4989/reveltest
# Dockerfileとdocker-compose.ymlを書く
docker-compose up
一応この方針でアプリは動いた