53 lines
1.7 KiB
Docker
53 lines
1.7 KiB
Docker
# =================================================================
|
||
# Edge Proxy - Development Environment Dockerfile (V2)
|
||
# =================================================================
|
||
|
||
|
||
|
||
|
||
FROM arm64v8/ubuntu:22.04
|
||
|
||
WORKDIR /app
|
||
|
||
ENV DEBIAN_FRONTEND=noninteractive
|
||
|
||
COPY . /tmp/build-context
|
||
|
||
|
||
RUN apt-get update && \
|
||
apt-get install -y \
|
||
build-essential \
|
||
cmake \
|
||
git \
|
||
gdb \
|
||
vim \
|
||
libssl-dev \
|
||
# --- 新增依赖 ---
|
||
# spdlog 开发库
|
||
libspdlog-dev \
|
||
# Boost C++ 开发库 (这是一个元数据包,会安装所有Boost库)
|
||
# 提醒: libboost-all-dev 体积较大,对于生产环境镜像,
|
||
# 后续可以优化为只安装需要的特定模块 (例如 libboost-system-dev)。
|
||
# 但对于开发环境,它提供了最大的便利性。
|
||
libboost-all-dev && \
|
||
# Paho MQTT C++ 客户端库及其依赖
|
||
# --- 步骤 2: 编译并安装 Paho C 库 ---
|
||
echo "--- Building and installing Paho MQTT C Library ---" && \
|
||
cd /tmp/build-context/external/paho.mqtt.c && \
|
||
cmake -Bbuild -H. \
|
||
-DPAHO_WITH_SSL=ON \
|
||
-DPAHO_BUILD_SAMPLES=OFF \
|
||
-DPAHO_BUILD_DOCUMENTATION=OFF && \
|
||
cmake --build build --target install && \
|
||
\
|
||
# libpaho-mqttpp-dev \
|
||
echo "--- Building and installing Paho MQTT C++ Library ---" && \
|
||
cd /tmp/build-context/external/paho.mqtt.cpp && \
|
||
# 编译并安装
|
||
cmake -Bbuild -H. -DPAHO_WITH_SSL=ON -DPAHO_BUILD_SAMPLES=OFF -DPAHO_BUILD_DOCUMENTATION=OFF && \
|
||
cmake --build build --target install && \
|
||
# 清理工作
|
||
ldconfig && \
|
||
rm -rf /tmp/build-context && \
|
||
# 清理apt缓存,减小镜像体积
|
||
rm -rf /var/lib/apt/lists/* |