中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

golang基于Mac os如何構建鏡像

發布時間:2021-12-15 09:25:04 來源:億速云 閱讀:207 作者:小新 欄目:大數據

這篇文章給大家分享的是有關golang基于Mac os如何構建鏡像的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

項目內容如下:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8000", nil)
}

func handler(rw http.ResponseWriter, req *http.Request) {
    fmt.Fprintf(rw, "Hello World,%s", req.URL.Path[1:])
}

基礎鏡像準備

自定義最小基礎鏡像

自定義基礎鏡像官方文檔看完后最還是google一下如何構建,tar cv --files-from /dev/null | docker import - scratch,使用docker images查看scratch的大小為0B,基礎鏡像已經構建成功,接下來把golang程序構建鏡像

構建golang鏡像

編寫Dockerfile

在當前項目目錄下創建Dockerfile文件,如果使用IDE建議安裝plugins,搜到Dockerfile點擊安裝,就能語法高亮及提示,更新為分階段構建

# 定義構建鏡像環境
FROM golang:alpine AS go-build
WORKDIR $GOPATH/src/backend
COPY . .
RUN go build -o backend
# 構建運行鏡像
FROM alpine:latest AS production
WORKDIR /root/backend/
COPY --from=go-build $GOPATH/src/backend .
EXPOSE 8000
ENTRYPOINT ["./backend"]

構建golang項目鏡像

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o  main .
docker build -t "container/echo:latest" .
docker run -itd --name echo -p 8000:8000 container/echo:latest
# 查看容器是否啟動成功,沒成功使用docker logs查看日志
docker ps -a

mac os 啟動錯誤

standard_init_linux.go:190: exec user process caused "exec format error"
如果出現以上錯誤是因為你的golangbuild時沒有指定為linux平臺,因為Docker內核依賴于Linux開發的,所以在mac os啟動Docker時還是使用Boot2Docker拖起的

感謝各位的閱讀!關于“golang基于Mac os如何構建鏡像”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灵寿县| 高台县| 佛教| 新田县| 若尔盖县| 房山区| 湟源县| 兰坪| 和田县| 宝坻区| 若尔盖县| 民权县| 苏州市| 松江区| 出国| 太和县| 普洱| 专栏| 固阳县| 巴马| 郴州市| 肃南| 水富县| 南丰县| 全州县| 霍州市| 含山县| 漳浦县| 东海县| 汪清县| 拜泉县| 瓦房店市| 盱眙县| 高平市| 甘德县| 延长县| 金阳县| 南京市| 正蓝旗| 璧山县| 巢湖市|