我是在mac環境上開發測試的,如果你是在windows上可能有一點出入,但應該不會有啥大問題。
我這裡就寫乙個最簡單的hello world程式吧,監聽埠是80埠。
新建乙個main.go
檔案,內容如下:
}我是在mac上開發的,需要用到go的交叉編譯,如果對交叉編譯不熟悉的,可以查下文件,或者直接複製***的命令進行編譯。
我們是要跑在docker
裡面,基礎golang
這個映象跑的,所以需要把他編譯成相容i386
處理器的程式。
sudo env goos=linux goarch=
386go build main.
go
這個編譯完成後,本地會多出乙個main
程式,暫時不用管它備用就行。
.
├── dockerfile
│ └── main
└── script
└── build.sh
下面就是編寫dockerfile
檔案內容了,內容我先上**:
from golang
maintainer 謙益
workdir /
go/src/
copy .
.expose 80
cmd [
"/bin/bash"
,"/go/src/script/build.sh"
]
這裡解釋下:
#!/usr/bin/env bash
就這兩行。
這屬於docker
的知識了,我把命令貼上出來。
看到上面這個輸出,就說明編譯成功了,在你的本地映象裡面就有了乙個名為go-web
的映象。可以使用docker images
進行查詢:
到這裡屬於我們的最後一步了,如果用我們剛編譯的go-web
來執行我們的go程式:
version:
'2'networks:
basic:
services:
world:
container_name: world
image:
go-web
ports:
-"8099:80"
volumes:-.
go/world:/go
networks:
- basic
到這裡我們的編排檔案已經寫好了,現在只需要用docker-compose
來啟動我們的編排檔案就好,啟動命令如下:
docker-compose -f docker-compose.yml up -d world
如果輸出下面的提示,說明啟動成功了。
creating world ... done
啟動成功後你可以再用
docker ps
來檢視下是否啟動成功了。
現在訪問就能訪問我們的go程式了。
基於Docker映象部署go專案的方法步驟
依賴知識 當然,一點也不會也可以按照這個步驟部署完成,不過可能中間如果出點小問題,會不知道怎麼解決,當然你也可以留言。我是在mawww.cppcns.comc環境上開發測試的,如果你是在windows上可能有一點出入,但應該不會有啥大問題。一 依賴環境 二 編寫乙個golang web程式 我這裡就...
docker部署go環境
最近找工作有點忙,php開發感覺遇到瓶頸了。boss直聘上面搜尋後端開發,很多大公司都是招golang開放工程師,也可能引發了phper的憂慮。於是就有了學習golang開發的想法 玩過docker的可以略過,因為比較簡單 當前是在win10作業系統,並且安裝了docker 的,可以嘗試著玩一玩 1...
docker 部署go專案
想部署乙個html轉pdf的web專案,需要安裝chorme瀏覽器,想著docker可以一次打包映象,無限使用的特點,用了下docker來部署。首先,我需要乙個裝了chrome和go的映象。沒有現成的,我在go映象的基礎上打包了乙個新的。步驟如下。1,拉取go映象。docker pull golan...