diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..8a5b60d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,35 @@ +# ====================== +# 构建阶段 (Builder Stage) +# ====================== +FROM golang:1.24-alpine AS builder + +WORKDIR /app + +COPY go.mod go.sum ./ + +RUN go mod download + +COPY . . + +ARG VERSION="1.0.0" +ARG BUILD_DATE="unknown" +ARG GIT_COMMIT="unknown" +RUN CGO_ENABLED=0 \ + GOOS=linux \ + GOARCH=amd64 \ + go build \ + -ldflags="-w -s -X main.version=${VERSION} -X main.buildDate=${BUILD_DATE} -X main.gitCommit=${GIT_COMMIT}" \ + -o /app/main . + +# ====================== +# 运行阶段 (Runtime Stage) +# ====================== +FROM alpine:3.18 + +WORKDIR /app + +COPY --from=builder /app/main /app/main + +EXPOSE 8088 + +CMD ["/app/main"] \ No newline at end of file diff --git a/README.md b/README.md index 56084b6..14b6b27 100644 --- a/README.md +++ b/README.md @@ -53,11 +53,14 @@ ## 运行 ```bash -go build -./goodBaby +mkdir goodbaby +cd goodbaby +wget https://raw.githubusercontent.com/ssdomei232/goodBaby/refs/heads/main/docker-compose.yml +docker compose up -d +docker logs goodbaby ## 扫码登陆后才能使用 ``` -之后在日志中找到 Bilibili 的登陆二维码,打开Bilibili APP 扫码登陆 +在日志中找到 Bilibili 的登陆二维码,打开Bilibili APP 扫码登陆 > [!NOTE] > 只有在登陆 Bilibili 后程序才会正常运行 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..a57143d --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,18 @@ +version: '3.8' + +services: + goodbaby: + image: mei232/goodbaby:latest + ports: + - "8088:8088" + environment: + - TZ=Asia/Shanghai + restart: unless-stopped + networks: + - app-network + volumes: + - ./config.json:/app/config.json:ro + +networks: + app-network: + driver: bridge \ No newline at end of file