GO 工程下载依赖操作流程(go mod)
1. 写一个main.go文件
package main
import (
"fmt"
"net/http"
"github.com/ClickHouse/clickhouse-go"
)
func main() {
fmt.Println("服务启动......")
http.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "hello world")
})
http.ListenAndServe(":8080", nil)
}
2. 生成go.mod文件
# go mod 初始化
# go mod init 模块名
go mod init github/ztrace
2.1 下载依赖文件到go.mod文件中
有很多依赖,就下载很多依赖,例子就是下载的一个
go get -u github.com/golang/protobuf@1.5.4
//go get -u github.com/gin-gonic/gin
//go get -u github.com/lib/pq
3. 下载依赖生成vendor文件夹
# go mod 删除错误或者不使用的modules
go mod tidy
# go mod 生成vendor目录
go mod vendor
# go mod 验证依赖是否正确
go mod verify
4. docker 打包镜像部署
4.1 编写Dockerfile
# 基础镜像
FROM golang:alpine
# 环境变量
ENV GO111MODULE=on \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64 \
GOPROXY="https://goproxy.cn,direct"
# 切换到app目录
WORKDIR /app
# 将源码复制到app目录
COPY . /app
WORKDIR example
# 编译源码
RUN go build -o main
# 暴露端口
EXPOSE 8080
# 运行
CMD ["./main"]
4.2 打包镜像(在Dockerfile 同级目录下)
docker build -t ztrace:1.0.0 .
4.3 docker运行
docker run -d --name ztrace -p 8080:8080 ztrace:1.0.0
GO 工程下载依赖操作流程(go mod) https://www.gzza.com/25584.html
本网站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。原创内容除特殊说明外,转载本站文章请注明出处。
如有侵权、不妥之处,联系删除。 Email:master@gzza.com
本网站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。原创内容除特殊说明外,转载本站文章请注明出处。
如有侵权、不妥之处,联系删除。 Email:master@gzza.com
THE END