Compare commits

...

6 Commits

Author SHA1 Message Date
sugarBecomer dd6eeb5dfe 🐛 opencv 2025-11-12 15:54:52 +08:00
sugarBecomer ac6409f3e2 🐛 opencv 2025-11-12 15:39:20 +08:00
sugarBecomer 36a6932056 🐛 opencv 2025-11-12 15:19:15 +08:00
sugarBecomer 72dab0e968 🐛 opencv 2025-11-12 15:01:33 +08:00
sugarBecomer b716434f62 🐛 opencv 2025-11-12 14:45:25 +08:00
sugarBecomer 8ed7dd77e4 🐛 opencv 2025-11-12 14:30:03 +08:00
+3 -27
View File
@@ -1,39 +1,15 @@
FROM golang:latest AS backend-builder
RUN apt update
RUN apt install -y build-essential
FROM gocv/opencv:latest AS backend-builder
# 安装 OpenCV 开发库和依赖
RUN apt install -y \
libopencv-dev \
libopencv-core-dev \
libopencv-imgproc-dev \
libopencv-imgcodecs-dev \
libopencv-videoio-dev \
pkg-config
RUN apt update && apt install -y upx-ucl
WORKDIR /build
COPY . .
ENV CGO_ENABLED=1
RUN go build -ldflags="-s -w" -o bin/server
RUN apt install -y upx-ucl
RUN upx --best --lzma bin/server
# 收集 OpenCV 运行时需要的 .so 文件
RUN mkdir -p /opencv-libs && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_core.so* /opencv-libs/ && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so* /opencv-libs/ && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_imgcodecs.so* /opencv-libs/ && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_videoio.so* /opencv-libs/ && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so* /opencv-libs/ 2>/dev/null || true && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_features2d.so* /opencv-libs/ 2>/dev/null || true && \
cp -P /usr/lib/x86_64-linux-gnu/libopencv_flann.so* /opencv-libs/ 2>/dev/null || true
FROM golang:latest
# 复制 OpenCV .so 文件到运行环境
COPY --from=backend-builder /opencv-libs/* /usr/lib/x86_64-linux-gnu/
FROM gocv/opencv:latest
COPY --from=backend-builder /build/bin/server /app/server
#COPY static /app/static