Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dd6eeb5dfe | |||
| ac6409f3e2 | |||
| 36a6932056 | |||
| 72dab0e968 | |||
| b716434f62 | |||
| 8ed7dd77e4 |
+3
-27
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user