前置き
少し前から実務でGoを使って開発を行っているのですが、エディタや生成AIのお陰であまり理解を指定なくても仕事ができています。
そこで、自分の脳みそを使ってGoと向き合うために記事をたくさん書くことにしました。
はじめは環境構築からです。
環境
Dcoker
とdocker-compose
が使えれば良いでしょう。
$ docker -v
Docker version 20.10.12, build e91ed57
$ docker-compose -v
docker-compose version 1.29.2, build 5becea4c
ディレクトリ・ファイルの作成
mkdir learn-go && cd learn-go
mkdir -p app/day1
touch app/day1/main.go
touch Dockerfile
touch docker-compose.yml
Dockerfile編集
FROM golang:latest # バージョンは指定していない
WORKDIR /app
RUN go mod init github.com/shuyaeer/learn-go # ご自身のモジュールで
docker-compose編集
version: '3'
services:
golang:
build: .
tty: true
volumes:
- ./:/app/
プログラム作成
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
コンテナ起動
docker-compose up -d
コンテナに入る
docker-compose exec golang /bin/bash
プログラム実行
root@358998472a71:/app# go run app/day1/main.go
Hello World
おしまい
明日はHTTPサーバーを建てようと思います。