Windows で Docker を使って Go をビルドする方法についてまとめてみました。
Dockerhub から golang のイメージの取得先を確認します。
hub.docker.com
コマンドプロンプト(PowerShell窓)を開いて以下のコマンドを実行します。
docker pull golang latest: Pulling from library/golang 0ecb575e629c: Pull complete 7467d1831b69: Pull complete feab2c490a3c: Pull complete f15a0f46f8c3: Pull complete 1517911a35d7: Pull complete 7b77ca9fcbe3: Pull complete e49d84fb0a44: Pull complete Digest: sha256:9fdb74150f8d8b07ee4b65a4f00ca007e5ede5481fa06e9fd33710890a624331 Status: Downloaded newer image for golang:latest docker.io/library/golang:latest
docker 内に入ります。
docker run -it golang
パッケージ更新を更新します。
apt-get update && apt-get upgrade
viがないのでviをインストールします。
apt-get install vim
goでスクリプトを書いてみます。
package main import ( "fmt" "os" ) func main() { s := "world" if len(os.Args) > 1 { s = os.Args[1] } fmt.Printf("Hello, %v!", s) fmt.Println("") if s == "fail" { os.Exit(30) } }
実行結果
$ chmod u+x script.go $ ./script.go Hello, world! $ ./script.go gopher Hello, gopher! $ ./script.go fail Hello, fail! $ echo $? 30