Go
のコンパイラをバージョンアップする際の変更点やコマンドのメモです
バージョンアップ
go.mod
ファイル
go.mod
でmodule管理している場合はgo mod edit
コマンドでgo.mod
ファイルでのGo
のバージョンを変更します。
以下のように1.17
が指定されていたとして1.18
に更新する場合は、
go.mod
module sample-app
go 1.17
次のコマンドを実行します。
$ go mod edit -go=1.18
再びgo.mod
ファイルを確認すると1.18
になっていることが確認できます
go.mod
module sample-app
go 1.18
Dockerfile
Dockerfile
は手で書き換えます。
Dockerfile
- FROM golang:1.17.8-buster
+ FROM golang:1.18.0-buster
CI
circleci
/ github actions
の設定ファイルも手で書き換えます。
.circleci/config.yml
docker:
- - image: golang:1.17.8-buster
+ - image: golang:1.18.0-buster
.github/workflows/go.yml
with:
- go-version: 1.17
+ go-version: 1.18
動作確認
$ go version
go version go1.18 linux/arm64
docker-compose
で開発している場合コンテナを削除して新しく作らないと古いコンテナを参照してしまいバージョンが更新されないケースがあるので注意してください。
$ docker-compose stop
$ docker-compose down