GoのAPI環境Dockerで作成

GoのAPI環境Dockerで作成

server.go

  • vi server.go
package main

import (
    "godocker/api"
    "net/http"

    "github.com/labstack/echo"
)

func main() {
    e := echo.New()
    e.GET("/", func(c echo.Context) error {
        return c.String(http.StatusOK, "Hello, world")
    })

    e.GET("/api", func(c echo.Context) error {
        return c.String(http.StatusOK, api.GetApi())
    })

    e.Logger.Fatal(e.Start(":1323"))
}

api.go

package api

func GetApi() string {
    return "GetApi"
}

Dockerfile作成

  • vi Dockerfile
FROM golang:latest

WORKDIR /go/src/godocker

COPY . .

RUN go get -d -v ./...
RUN go install -v ./...

CMD ["godocker"]

ビルド

  • docker build -t echoTest .

実行

  • docker run --rm -p 127.0.0.1:1323:1323 --name echoTest echoTest
  • 別ターミナルでGoのバージョン確認
docker exec -it echoTest go version

ブラウザから確認