開發與維運

使用容器運行go程序

前不久自己寫了一個日誌服務的go程序,就是建立一個http請求,將日誌信息寫道數據庫裡,這服務用的是go語言寫的,寫入到程序我用的是協程,這樣接口就會立即響應,無需等待添加成功後在返回,特別是數據量很大的時候。後臺我用的是PHP,主要用來查看日誌的。
編寫好程序就可以放到服務器上運行,最好使用docker,方便以後遷移和擴展方便,為了方便部署,最好編寫dockerfile文件,我這裡給個例子:

FROM alpine:latest
LABEL author="[email protected]"
RUN set -x \
  && sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories \
  && apk update \
  && apk add go \
  && mkdir /go \
  && rm -rf /var/cache/apk/*
ENV GOPATH /go
EXPOSE 9000
WORKDIR /go

容器一般用alpine做成系統,該系統體積很小,節省空間,部署PHP程序也方便。

服務器可以使用三豐雲,上面提供免費雲服務器,可以當作測試使用,數據庫可以在同一臺機上搭建mysql服務,也可以直接使用阿里雲的容器實例。

Leave a Reply

Your email address will not be published. Required fields are marked *