新增: df-relay Dockerfile + .dockerignore(云端部署基建)

docker build -f crates/df-relay/Dockerfile -t df-relay .(context=repo根,multi-stage rust:slim 编译→debian 运行)。容器内 :8080(DF_RELAY_ADDR),宿主映射 :9180 避开测试机 8080 占用。
This commit is contained in:
2026-06-22 03:50:37 +08:00
parent f4b65f6c2e
commit 0c7c5e6068
2 changed files with 32 additions and 0 deletions

11
.dockerignore Normal file
View File

@@ -0,0 +1,11 @@
# docker build 排除(docker context = repo 根,仅 df-relay 编译需 workspace 源码)
target
node_modules
dist
dist-ssr
.git
*.db
*.log
apps/df-miniapp/node_modules
apps/df-miniapp/dist
src-tauri/target

View File

@@ -0,0 +1,21 @@
# df-relay 跨端中继(Phase3 云端部署,u-work.1216.top)
# multi-stage:rust:slim 编译 df-relay → debian:slim 运行(static-ish binary)
#
# 构建(context = repo 根,workspace):
# docker build -f crates/df-relay/Dockerfile -t df-relay .
# 运行(容器内 :8080,映射宿主 :9180,避开测试机 8080 占用):
# docker run -d --name df-relay --restart unless-stopped -p 9180:8080 df-relay
FROM rust:1.85-slim AS builder
WORKDIR /build
COPY . .
RUN cargo build --release -p df-relay
FROM debian:bookworm-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates \
&& rm -rf /var/lib/apt/lists/*
COPY --from=builder /build/target/release/df-relay /usr/local/bin/df-relay
ENV DF_RELAY_ADDR=0.0.0.0:8080
EXPOSE 8080
CMD ["df-relay"]