TaNA LABO
エンジニアリング

June 23, 2020

Go
初心者

Golang+Dockerでのパッケージ管理と自作ライブラリのインポート手順

post 46

Golang + Docker環境下で、自作ライブラリを呼び出す手順の備忘録。

Docker環境構築

環境構築のベースは こちらの記事 を参考に実施。

加えて Dockerfile を以下のとおりに修正する。

FROM golang:latest

WORKDIR /go/src/app

ENV GO111MODULE=on

# ここから下は好みで(Ginを使わない場合は不要)
RUN go get github.com/gin-gonic/gin
RUN go get github.com/jinzhu/gorm
RUN go get github.com/go-sql-driver/mysql

Dockerの起動を確認して、コンテナへの接続を実施。

docker-compose up -d
docker-compose exec app bash

go.mod作成

プロジェクト直下で以下のコマンドを実行。

go mod init project_name

# 実行結果
# go: creating new go.mod: module project_name

プロジェクト直下に go.mod が作成される。

module app

go 1.14

自作ライブラリのインポート

/project/lib/lib.go を作成。

package lib

func Convert(str string) string {
	return "test" + str
}

/project/main.go を以下のように作成。

package main

import (
	"fmt"
	"app/lib"
)

func main() {
	fmt.Println("Hello World")
	fmt.Println(lib.Convert("hello"))
}

main.goを実行すると、自作ライブラリの呼び出しを確認できる。

その他参考記事

Go言語(1.13)で自作ライブラリをimportする
Go 1.12 の開発環境と本番環境の Dockerfile を考える
GOPATH モードからモジュール対応モードへ移行せよ
Docker for MacでGoの実行環境を作る
Go Modules


©Copyright2020 TaNA LABO. All Rights Reserved.