mirror of
				https://gitee.com/dromara/mayfly-go
				synced 2025-11-04 08:20:25 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			40 lines
		
	
	
		
			862 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			862 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
# 构建前端资源
 | 
						|
FROM m.daocloud.io/docker.io/node:18-bookworm-slim as fe-builder
 | 
						|
 | 
						|
WORKDIR /mayfly
 | 
						|
 | 
						|
COPY frontend .
 | 
						|
 | 
						|
RUN yarn config set registry 'https://registry.npmmirror.com' && \
 | 
						|
    yarn install && \
 | 
						|
    yarn build
 | 
						|
 | 
						|
# 构建后端资源
 | 
						|
FROM m.daocloud.io/docker.io/golang:1.23 as be-builder
 | 
						|
 | 
						|
ENV GOPROXY https://goproxy.cn
 | 
						|
WORKDIR /mayfly
 | 
						|
 | 
						|
# Copy the go source for building server
 | 
						|
COPY server .
 | 
						|
 | 
						|
RUN go mod tidy && go mod download
 | 
						|
 | 
						|
COPY --from=fe-builder /mayfly/dist /mayfly/static/static
 | 
						|
 | 
						|
# Build
 | 
						|
RUN GO111MODULE=on CGO_ENABLED=0 GOOS=linux \
 | 
						|
    go build -a -ldflags=-w \
 | 
						|
    -o mayfly-go main.go
 | 
						|
 | 
						|
FROM m.daocloud.io/docker.io/alpine:3.20.2
 | 
						|
 | 
						|
ARG TZ=Asia/Shanghai
 | 
						|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
 | 
						|
 | 
						|
WORKDIR /mayfly-go
 | 
						|
 | 
						|
COPY --from=be-builder /mayfly/mayfly-go /usr/local/bin/mayfly-go
 | 
						|
 | 
						|
CMD ["mayfly-go"]
 |