docker打包部署beego项目
2023-11-22 本文已影响0人
顶尖少爷
docker打包部署beego项目
1
在项目的跟目录上创建DockerFile文件
# 基础镜像
FROM golang:alpine AS builder
# 维护者
MAINTAINER liwei<php.wei.li@gmail.com>
#为我们的镜像设置必要的环境变量
ENV GO111MODULE=on \
GOPROXY=https://goproxy.cn,direct \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64
# docker build 时执行命令 - 创建目录
RUN mkdir -p $GOPATH/src/opt/app
# 工作目录 ,将工作目录设置为
WORKDIR $GOPATH/src/opt/app
#将DockerFile文件所在目录下的所有文件复制到指定位置
COPY . $GOPATH/src/opt/app
# 下载依赖信息
RUN go mod download
#将我们的代码编译成二进制可执行文件webapp
RUN go build -o beegowebapp .
# 需要运行的命令
ENTRYPOINT ["./beegowebapp"]
2 执行docker打包镜像
docker build -t beegowebapp beegowebapp .
3 执行 查看本地镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
beegowebapp latest cb10263cbfbe 29 minutes ago 522MB
docker images
4 运行该镜像
docker run -d -p 8088:8080 --name beegowebapp beegowebapp
5 编写docker-compose.yml 文件
version: '3'
services:
world:
#指定容器名称
container_name: world
image: beegowebapp
ports:
- "8088:8080"
volumes:
- $GOPATH/src/opt/app:$GOPATH/src/opt/app:rw
6 运行docker-compose up 启动服务
docker-compose -f docker-compose.yml up -d world