😊

[環境構築]Ubuntu22.04上に、VSCode+Go(1.21)+Webアプリの環境をつくる。

2023/11/18に公開

Abstract

タイトルの通り、goの開発環境を構築してみた。

手順
  1. goインストール
  2. インストール確認
  3. VSCodeで環境構築
  4. goソース作成
  5. ビルド -> 実行

前提

  • VirtualBox上にUbuntu22.04がインストールされていること。
    ココを参考に。
  • Ubuntuにgitがインストールされていること
  • VirtualBox+Linux22.04にVSCodeをインストールしておく。VSCodeをインストール
  • 日本語化もついでに。VSCodeを日本語化

初回時のおまじない(あまり考えないでやっとく)

$ sudo apt update
$ sudo apt upgrade -y
$ sudo apt autoremove -y
$ sudo apt autoclean -y

Ubuntuに go をインストール

Download and installを参考に。

$ cd ~ && mkdir tempgo && cd tempgo
$ wget https://go.dev/dl/go1.21.4.linux-amd64.tar.gz
$ sudo rm -rf /usr/local/go
$ sudo tar -C /usr/local -xzf go1.21.4.linux-amd64.tar.gz
$ rm -rf ~/tempgo
$ echo 'export PATH="$PATH:/usr/local/go/bin"' >> ~/.bash_profile
$ source ~/.bash_profile
$ go version

go のプロジェクト生成して動かしてみる

goプロジェクト初期化のおまじない

$ cd ~ && mkdir hellogo && cd hellogo
$ go mod init hellogo

goのサンプルコードを生成

$ vi helloworldgo.go
package main

import "fmt"

func main() {
  fmt.Printf("Hello World\n")
}

go実行

$ go run helloworldgo.go

できた!!

build -> go実行

$ go build helloworldgo.go

実行

$ ./helloworldgo

できた!!

VSCodeの開発環境を構築する。

Go拡張機能をインストール

Go拡張機能が依存するパッケージをインストール

↓の赤枠みると、依存パッケージがなかったら、右下に通知が表示されるらしい。
なので手順通りに、適当なフォルダを開いてgoプロジェクトを作成する。

まずプロジェクトフォルダ作成

$ cd ~ && mkdir aaago && cd aaago
$ go mod init aaago

フォルダを開く

まだ通知は表示されない。

go.modを開く。

右下に通知が出た。通知ってこれのことね。ふ~ん。

"gopls"が不足らしい。install押下。

ちょっと待つと成功で終了した。

GoでHelloWolrdを動かす

package main

import "fmt"

func main() {
	fmt.Printf("Hello world\n")
}

実行


依存ライブラリのインストールを要求してきた。
Install Allを押下

ちょっと待つ、インストール成功。

もっかい、実行とデバッグを押下

できた!!


ブレークポイントも張れた!!

GoでWebアプリを動かす

webアプリ作成
$ cd ~ && mkdir test-go-webapp && cd test-go-webapp
$ go mod init test-go-webapp
$ vi webmain.go

webmain.goの内容はこれ。

webmain.go
package main
import (
    "fmt"
    "net/http"
)
func main() {
    http.HandleFunc("/", HelloServer)
    http.ListenAndServe(":8080", nil)
}
func HelloServer(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, %s!", r.URL.Path[1:])
}

Webアプリ実行

webアプリ実行
$ go run webmain.go

ブラウザーを開いて、http://localhost:8080/world にアクセスする。

出来た!! Hello, world!が表示された。

終了するときは、terminalで、"ctrl+c"ね。

次のステップはこのサイトが勉強になった。

Go / Gin で超簡単なWebアプリを作る

Discussion