XJFKKK commited on
Commit
5e69c48
·
verified ·
1 Parent(s): 50f8941

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +45 -0
Dockerfile ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 使用 Golang 官方镜像构建项目
2
+ FROM golang:1.18-alpine AS builder
3
+
4
+ # 设置工作目录
5
+ WORKDIR /app
6
+
7
+ # 安装依赖
8
+ RUN apk update && apk add --no-cache git tzdata ca-certificates
9
+
10
+ # 设置时区
11
+ ENV TZ=Asia/Shanghai
12
+
13
+ # 拉取 NeZha 项目代码
14
+ RUN git clone https://github.com/nezhahq/nezha.git ./
15
+
16
+ # 构建 dashboard 可执行文件
17
+ RUN go mod download
18
+ RUN go build -o nezha-dashboard cmd/dashboard/main.go
19
+
20
+ # 运行阶段使用轻量级镜像
21
+ FROM alpine:latest
22
+
23
+ # 设置工作目录
24
+ WORKDIR /app
25
+
26
+ # 安装依赖
27
+ RUN apk --no-cache add tzdata ca-certificates
28
+
29
+ # 设置时区
30
+ ENV TZ=Asia/Shanghai
31
+
32
+ # 从构建阶段复制可执行文件
33
+ COPY --from=builder /app/nezha-dashboard ./
34
+
35
+ # 复制默认配置文件
36
+ COPY --from=builder /app/conf/dashboard.example.yaml ./conf/dashboard.yaml
37
+
38
+ # 暴露 Hugging Face 要求的端口
39
+ EXPOSE 7860
40
+
41
+ # 设置环境变量
42
+ ENV PORT=7860
43
+
44
+ # 启动 NeZha dashboard
45
+ CMD ["sh", "-c", "./nezha-dashboard --config ./conf/dashboard.yaml --host 0.0.0.0 --port ${PORT}"]