Simplify Dockerfile to use pre-built musl binary, add Ingress
- Dockerfile: drop Rust build stage, COPY static musl binary directly - Add traefik Ingress for tori.oci.euphon.net with LE cert Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
eb8f5173f3
commit
85ab93798b
12
Dockerfile
12
Dockerfile
@ -6,19 +6,11 @@ RUN npm ci
|
|||||||
COPY web/ ./
|
COPY web/ ./
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
# Stage 2: Build backend
|
# Stage 2: Runtime
|
||||||
FROM rust:1.86-alpine AS backend
|
|
||||||
RUN apk add --no-cache musl-dev
|
|
||||||
WORKDIR /app
|
|
||||||
COPY Cargo.toml Cargo.lock ./
|
|
||||||
COPY src/ ./src/
|
|
||||||
RUN cargo build --release
|
|
||||||
|
|
||||||
# Stage 3: Runtime
|
|
||||||
FROM alpine:3.21
|
FROM alpine:3.21
|
||||||
RUN apk add --no-cache ca-certificates
|
RUN apk add --no-cache ca-certificates
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=backend /app/target/release/tori .
|
COPY target/aarch64-unknown-linux-musl/release/tori .
|
||||||
COPY --from=frontend /app/web/dist ./web/dist/
|
COPY --from=frontend /app/web/dist ./web/dist/
|
||||||
COPY config.yaml .
|
COPY config.yaml .
|
||||||
|
|
||||||
|
|||||||
@ -59,3 +59,27 @@ spec:
|
|||||||
- port: 80
|
- port: 80
|
||||||
targetPort: 3000
|
targetPort: 3000
|
||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: tori
|
||||||
|
namespace: tori
|
||||||
|
annotations:
|
||||||
|
traefik.ingress.kubernetes.io/router.tls.certresolver: le
|
||||||
|
spec:
|
||||||
|
ingressClassName: traefik
|
||||||
|
rules:
|
||||||
|
- host: tori.oci.euphon.net
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: tori
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- tori.oci.euphon.net
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user