mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-07 16:16:37 +08:00
[优化] DockerFile
This commit is contained in:
@@ -2,7 +2,7 @@ FROM golang:1.25-alpine AS builder
|
|||||||
|
|
||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
COPY go.mod go.sum ./
|
COPY openflare_relay/go.mod openflare_relay/go.sum ./
|
||||||
# Note: In a real monorepo build, openflare and openflare_server need to be available.
|
# Note: In a real monorepo build, openflare and openflare_server need to be available.
|
||||||
# For now, we assume this is built from the root of the project where both are present.
|
# For now, we assume this is built from the root of the project where both are present.
|
||||||
COPY openflare_server /openflare_server
|
COPY openflare_server /openflare_server
|
||||||
@@ -11,18 +11,11 @@ COPY openflare_relay /openflare_relay
|
|||||||
WORKDIR /openflare_relay
|
WORKDIR /openflare_relay
|
||||||
RUN go build -o openflare-relay ./cmd/relay
|
RUN go build -o openflare-relay ./cmd/relay
|
||||||
|
|
||||||
FROM alpine:latest
|
FROM fatedier/frps:v0.69.0
|
||||||
|
|
||||||
# Install frps
|
|
||||||
RUN apk add --no-cache curl \
|
|
||||||
&& curl -fSL https://github.com/fatedier/frp/releases/download/v0.61.1/frp_0.61.1_linux_amd64.tar.gz -o frp.tar.gz \
|
|
||||||
&& tar -zxvf frp.tar.gz \
|
|
||||||
&& mv frp_0.61.1_linux_amd64/frps /usr/local/bin/ \
|
|
||||||
&& rm -rf frp_0.61.1_linux_amd64 frp.tar.gz \
|
|
||||||
&& chmod +x /usr/local/bin/frps
|
|
||||||
|
|
||||||
COPY --from=builder /openflare_relay/openflare-relay /usr/local/bin/openflare-relay
|
COPY --from=builder /openflare_relay/openflare-relay /usr/local/bin/openflare-relay
|
||||||
|
|
||||||
VOLUME ["/var/lib/openflare-relay"]
|
VOLUME ["/var/lib/openflare-relay"]
|
||||||
|
|
||||||
CMD ["openflare-relay", "-config", "/etc/openflare-relay/relay.json"]
|
ENTRYPOINT ["/usr/local/bin/openflare-relay", "-config", "/etc/openflare-relay/relay.json"]
|
||||||
|
CMD []
|
||||||
|
|||||||
+5
-11
@@ -1,8 +1,8 @@
|
|||||||
FROM golang:1.24-alpine AS builder
|
FROM golang:1.25-alpine AS builder
|
||||||
|
|
||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
COPY go.mod go.sum ./
|
COPY openflared/go.mod openflared/go.sum ./
|
||||||
COPY openflare_server/go.mod openflare_server/go.sum ../openflare_server/
|
COPY openflare_server/go.mod openflare_server/go.sum ../openflare_server/
|
||||||
RUN go mod download
|
RUN go mod download
|
||||||
|
|
||||||
@@ -10,14 +10,7 @@ COPY openflare_server/ ../openflare_server/
|
|||||||
COPY openflared/ .
|
COPY openflared/ .
|
||||||
RUN CGO_ENABLED=0 GOOS=linux go build -o flared ./cmd/flared
|
RUN CGO_ENABLED=0 GOOS=linux go build -o flared ./cmd/flared
|
||||||
|
|
||||||
FROM alpine:latest
|
FROM fatedier/frpc:v0.69.0
|
||||||
|
|
||||||
RUN apk --no-cache add ca-certificates tzdata curl && \
|
|
||||||
curl -L -o /tmp/frp.tar.gz https://github.com/fatedier/frp/releases/download/v0.58.0/frp_0.58.0_linux_amd64.tar.gz && \
|
|
||||||
tar -xzf /tmp/frp.tar.gz -C /tmp/ && \
|
|
||||||
mv /tmp/frp_0.58.0_linux_amd64/frpc /usr/bin/frpc && \
|
|
||||||
chmod +x /usr/bin/frpc && \
|
|
||||||
rm -rf /tmp/frp*
|
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@@ -26,4 +19,5 @@ COPY --from=builder /build/flared .
|
|||||||
ENV OPENFLARE_DATA_DIR=/app/data
|
ENV OPENFLARE_DATA_DIR=/app/data
|
||||||
ENV OPENFLARE_FRPC_PATH=/usr/bin/frpc
|
ENV OPENFLARE_FRPC_PATH=/usr/bin/frpc
|
||||||
|
|
||||||
CMD ["./flared"]
|
ENTRYPOINT ["/app/flared"]
|
||||||
|
CMD []
|
||||||
|
|||||||
Reference in New Issue
Block a user