做个小项目,需要把go服务器代码放到docker上并后台运行,这样就不怕退出terminal时服务器中断了
Dockerfile
首先在服务端代码目录下新建一个Dockerfile
vim Dockerfile
FROM golang:alpine AS builder
ENV GO111MODULE=auto \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64
WORKDIR /build
COPY . .
RUN go build -o bubble .
FROM scratch
COPY --from=builder /build/cert/zzzzorange.icu_bundle.pem /
COPY --from=builder /build/cert/zzzzorange.icu_key.pem /
COPY --from=builder /build/static /static
COPY --from=builder /build/bubble /
EXPOSE 443
CMD ["/bubble"]
<esc>:wq
退出vim
编辑完成后使用sudo docker build -t webapp .
构建image
使用sudo docker run -d -p 443:443 webapp
在后台守护容器中运行webapp image,也就是我们的服务端。
详细内容在这个链接:
如何使用Docker部署Go Web应用 | 李文周的博客 (liwenzhou.com)
更多关于docker:
前言 - Docker — 从入门到实践 (gitbook.io)