🎨 增加并发访问
This commit is contained in:
51
Dockerfile
Normal file
51
Dockerfile
Normal file
@@ -0,0 +1,51 @@
|
||||
FROM rust:1.93-alpine AS chef
|
||||
RUN apk add --no-cache musl-dev openssl-dev openssl-libs-static
|
||||
RUN cargo install cargo-chef
|
||||
WORKDIR /app
|
||||
|
||||
FROM chef AS planner
|
||||
COPY Cargo.toml Cargo.lock* ./
|
||||
COPY src ./src
|
||||
RUN cargo chef prepare --recipe-path recipe.json
|
||||
|
||||
FROM node:24-alpine AS frontend-builder
|
||||
WORKDIR /app/admin-ui
|
||||
COPY admin-ui/package.json ./
|
||||
RUN npm install -g pnpm && pnpm install
|
||||
COPY admin-ui ./
|
||||
RUN pnpm build
|
||||
|
||||
FROM chef AS builder
|
||||
|
||||
# 可选:启用敏感日志输出(仅用于排障)
|
||||
ARG ENABLE_SENSITIVE_LOGS=false
|
||||
|
||||
COPY --from=planner /app/recipe.json recipe.json
|
||||
RUN if [ "$ENABLE_SENSITIVE_LOGS" = "true" ]; then \
|
||||
cargo chef cook --release --features sensitive-logs --recipe-path recipe.json; \
|
||||
else \
|
||||
cargo chef cook --release --recipe-path recipe.json; \
|
||||
fi
|
||||
|
||||
COPY Cargo.toml Cargo.lock* ./
|
||||
COPY src ./src
|
||||
COPY --from=frontend-builder /app/admin-ui/dist /app/admin-ui/dist
|
||||
|
||||
RUN if [ "$ENABLE_SENSITIVE_LOGS" = "true" ]; then \
|
||||
cargo build --release --features sensitive-logs; \
|
||||
else \
|
||||
cargo build --release; \
|
||||
fi
|
||||
|
||||
FROM alpine:3.21
|
||||
|
||||
RUN apk add --no-cache ca-certificates
|
||||
|
||||
WORKDIR /app
|
||||
COPY --from=builder /app/target/release/kiro-rs /app/kiro-rs
|
||||
|
||||
VOLUME ["/app/config"]
|
||||
|
||||
EXPOSE 8990
|
||||
|
||||
CMD ["./kiro-rs", "-c", "/app/config/config.json", "--credentials", "/app/config/credentials.json"]
|
||||
Reference in New Issue
Block a user