はじめに
A Tour of Goをやろうと思ったんだけど、手元で試したいということがあったので、Dockerで開発環境を構築
完成図
.
├── Dockerfile
├── docker-compose.yml
└── src
└── hello.go
作成
準備するものは以下の通り。
.
├── Dockerfile
└── docker-compose.yml
ファイルの中身
Dockerfile
FROM golang:latest
WORKDIR /go/src/
docker-compose.yml
version: "3"
services:
go:
build: .
tty: true
volumes:
- ./src:/go/src
docker-composeを利用した理由は、マウントしたかったから。
うごかす
コマンドは以下の通り。
# コンテナの作成と起動
$ docker-compose up -d --build
# コンテナ内に入る
$ docker-compose exec go bash
Hello world
コンテナの中に入っている状態でファイル作成
$ touch hello.go
hello.go
package main
import "fmt"
func main() {
fmt.Println("Hello, World")
}
コンパイルは以下のようになる。
$ go run hello.go
とめる
# コンテナから出る
$ exit
# コンテナを止める
$ docker-compose stop
# コンテナを削除
$ docker-compose down
おわりに
A Tour of Goを試していって、つまったところがあれば修正していきます。