docs: 定稿 Q4 Docker 与 Q5 运维文档
This commit is contained in:
+6
-2
@@ -1,5 +1,7 @@
|
||||
# 多阶段构建:Node 构建前端 → Go 编译(嵌入前端)→ distroless static nonroot。
|
||||
# 镜像名 git.asio.asia/nixevol/nixmsg;多架构 buildx 推送留给 Q4 定稿,本骨架先单架构可构建。
|
||||
# 镜像名 git.asio.asia/nixevol/nixmsg;入口 /nixmsg。
|
||||
# 单架构:task q:docker-build 或 q:docker-push(含推送)。
|
||||
# 多架构:task q:docker-buildx(linux/amd64 + linux/arm64,需 buildx;正式推送在 Z3)。
|
||||
|
||||
FROM node:24-bookworm AS web
|
||||
WORKDIR /src/web
|
||||
@@ -9,13 +11,15 @@ COPY web/ ./
|
||||
RUN pnpm build
|
||||
|
||||
FROM golang:1.27-bookworm AS build
|
||||
ARG TARGETOS=linux
|
||||
ARG TARGETARCH=amd64
|
||||
WORKDIR /src
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download
|
||||
COPY . .
|
||||
COPY --from=web /src/web/dist ./web/dist
|
||||
ENV CGO_ENABLED=0
|
||||
RUN go build -tags embeddist -o /out/nixmsg ./cmd/nixmsg
|
||||
RUN GOOS=$TARGETOS GOARCH=$TARGETARCH go build -tags embeddist -o /out/nixmsg ./cmd/nixmsg
|
||||
|
||||
FROM gcr.io/distroless/static:nonroot
|
||||
COPY --from=build /out/nixmsg /nixmsg
|
||||
|
||||
+12
-10
@@ -1,11 +1,16 @@
|
||||
# Docker Compose 示例(DEVELOPMENT 第 11.4 节骨架)
|
||||
# 本地冒烟:先 docker build -t git.asio.asia/nixevol/nixmsg:0.1.0 -f deploy/Dockerfile .
|
||||
# 容器名带 q 前缀便于多 Agent 隔离;正式部署可去掉 container_name。
|
||||
# Docker Compose 示例(对齐 DEVELOPMENT 第 11.4 节)
|
||||
# 构建:task q:docker-build(当前架构)或 task q:docker-buildx(多架构,正式推送在 Z3)
|
||||
# 首次:保证数据目录对 uid 65532 可写,再 admin init,然后 up。
|
||||
#
|
||||
# 命名卷首次授权示例:
|
||||
# docker run --rm -v q4-nixmsg-data:/data busybox chown -R 65532:65532 /data
|
||||
# 宿主机目录挂载时:在宿主机 chown 65532:65532 ./data
|
||||
|
||||
services:
|
||||
nixmsg:
|
||||
image: git.asio.asia/nixevol/nixmsg:0.1.0
|
||||
container_name: q-nixmsg
|
||||
# 本地/并行测试可加 container_name;正式部署可去掉
|
||||
container_name: q4-nixmsg
|
||||
restart: unless-stopped
|
||||
command: ["serve"]
|
||||
environment:
|
||||
@@ -14,7 +19,7 @@ services:
|
||||
- "7443:7443"
|
||||
volumes:
|
||||
- ./config.docker.yaml:/etc/nixmsg/config.yaml:ro
|
||||
- q-nixmsg-data:/data
|
||||
- q4-nixmsg-data:/data
|
||||
# 生产环境挂载证书目录,例如:
|
||||
# - /opt/nixmsg/certs:/certs:ro
|
||||
healthcheck:
|
||||
@@ -24,8 +29,5 @@ services:
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
q-nixmsg-data:
|
||||
name: q-nixmsg-data
|
||||
|
||||
# 首次使用命名卷时,需保证 /data 对 uid 65532 可写,例如:
|
||||
# docker run --rm -v q-nixmsg-data:/data busybox chown -R 65532:65532 /data
|
||||
q4-nixmsg-data:
|
||||
name: q4-nixmsg-data
|
||||
|
||||
Reference in New Issue
Block a user