[勉強用](随時更新)Vueを勉強しようとおもったら久々にWebにてお出すことになった話(応援歓迎)


開発に合わせたGithubはこちら
https://github.com/KeiMae/vue-study

何をやってみようかと

普段データサイエンスをしていているだけど、簡単なレポートはBIツールではなくWebでも見せられるようにしてみようかなぁと思い立って。
データサイエンスらしく普段はpythonしか描かないのですが、さすがにモノスキルは良くないと思い、Golangにいまさら着手しようと。
詳しいコンテンツはPageTopのgithubを見てください

このポスト自体は初心者・初学者(主に大学から情報工学に触り始めた学生さん・新社会人)にむけた記事になれば良いと思っています。

初学者の方は下の方主なトラブルまとめを見ると安心できるかもしれません

さて

普通のpythonだと、インフラは大体こんな感じじゃないかと

  • パッケージマネージャ
    • pyenv
  • 仮想環境
    • virualenv

サイエンスならcondaなのでしょうけど。
確かにこれでパッケージのバージョン管理とかもできるし、(今回はやらないけど)検証・本番環境へのリリースもある程度簡単にできる。しかし、いま(2019年)はコンテナ全盛期。 ちょっとコンテナ開発を試みます。

自分の思うコンテナ

きっと仮想環境を作ってくれる、、、つまり、ミドル層でのバージョン管理なんかは扶養。。コンテナ内にGlobal installして構わないはず!

間違ってたら教えてください・・・

開発環境

とりあえず、自分用Macのローカルに構築

  • OS
    • macOS Catalina 10.15
  • Docker
    • 2.1.0.5

GOAのコンテナの用意

GolangでAPIを作るときWebServerをどうするか。フレームワークはどうするか。が早速ハマる(Golangマジでおっかけなかった)。
調べたらgoaが結構ヒットするので、とりあえず、日本語文献が多そうなgoaからスタート
https://qiita.com/loftkun/items/1a9951d1864bebdc51e1
を見るとgoaよりgo-kitとかの方がグローバルスタンダードっぽいけど、、

トラブル(情けないものかきっとあるあるまで)

やべ、Dockerの使い方忘れたww

2年近くWebの業界を離れていました。そして2020年2月現在在籍しているところは外注の嵐。。。
ということで、Dockerの基本すら忘却の彼方。正直焦りました。

Linuxも色々やらんきゃあかんかったけん

DockerのImageで引っ張ってきたLinuxはほんと何も入ってません(Amazon Linux2 が以下に助かることか。。。)。ってことで下記を参考にvimとNeoBundleのインストールを進めます。
「vimで文字化けした時の対応」 view at 2020/02/25
https://qiita.com/meio/items/08143eacd174ac0f7bd5
「vim-goをインストールしてみた(所要時間:15分)」
https://qiita.com/lucy/items/e4f21c507d3fd2c0ffe9
「【ざっくりまとめ】Linuxパッケージのインストール方法を一通り」
https://eng-entrance.com/linux-package-install

vim-goが使えない・・・?

vim-goでvimをSyntaxハイライトしようとしたところ、vim8出なければならないよう。
下記のサイトを参考に更新
https://genzouw.com/entry/2019/02/27/075021

参考文献

「Go言語Webフレームワークランキング」 view at 2019/12/07
https://qiita.com/loftkun/items/1a9951d1864bebdc51e1
「docker run(コンテナ作成)する時のオプションあれこれ」
https://qiita.com/shimo_yama/items/d0c42394689132fcb4b6
「vimで文字化けした時の対応」 view at 2020/02/25
https://qiita.com/meio/items/08143eacd174ac0f7bd5
「vim-goをインストールしてみた(所要時間:15分)」
https://qiita.com/lucy/items/e4f21c507d3fd2c0ffe9
「【ざっくりまとめ】Linuxパッケージのインストール方法を一通り」