2025-11-30 09:48:43 +01:00
|
|
|
FROM debian:stable-slim
|
|
|
|
|
|
2025-12-10 07:47:04 +01:00
|
|
|
ARG USERNAME=vscode
|
|
|
|
|
ARG USER_UID=1000
|
|
|
|
|
ARG USER_GID=1000
|
|
|
|
|
|
|
|
|
|
RUN groupadd --gid $USER_GID $USERNAME \
|
|
|
|
|
&& useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
|
|
|
|
|
&& apt-get update && apt-get install -y sudo \
|
|
|
|
|
&& echo "$USERNAME ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
|
|
|
|
|
2025-11-30 09:48:43 +01:00
|
|
|
RUN RUN set -eux; \
|
|
|
|
|
apt-get update; \
|
|
|
|
|
apt-get install -y \
|
|
|
|
|
git \
|
|
|
|
|
build-essential \
|
|
|
|
|
cmake \
|
2025-12-03 21:44:16 +01:00
|
|
|
gdb;
|
2025-11-30 09:48:43 +01:00
|
|
|
|
|
|
|
|
RUN set -eux; \
|
|
|
|
|
apt-get update; \
|
|
|
|
|
apt-get install -y \
|
|
|
|
|
libncurses-dev \
|
2025-12-03 23:20:46 +01:00
|
|
|
libmicrohttpd-dev \
|
|
|
|
|
libcurl4-openssl-dev \
|
|
|
|
|
zlib1g-dev \
|
2025-12-07 20:40:40 +01:00
|
|
|
prometheus-cpp-dev \
|
|
|
|
|
nlohmann-json3-dev
|
2025-11-30 09:48:43 +01:00
|
|
|
|
|
|
|
|
RUN set -eux; \
|
2025-12-03 23:20:46 +01:00
|
|
|
apt-get update; \
|
|
|
|
|
apt-get install -y \
|
|
|
|
|
libpaho-mqtt-dev
|
|
|
|
|
|
2025-12-07 20:40:40 +01:00
|
|
|
RUN set -eux; \
|
|
|
|
|
git clone https://github.com/eclipse/paho.mqtt.cpp.git; \
|
|
|
|
|
cd paho.mqtt.cpp; \
|
|
|
|
|
git submodule init; \
|
|
|
|
|
git submodule update; \
|
|
|
|
|
mkdir build && cd build; \
|
|
|
|
|
cmake -DPAHO_WITH_MQTT_C=ON ..; \
|
|
|
|
|
cmake --build . --target install; \
|
|
|
|
|
ldconfig;
|
2025-12-10 07:47:04 +01:00
|
|
|
|
2025-12-07 20:40:40 +01:00
|
|
|
RUN set -eux; \
|
2025-12-03 23:20:46 +01:00
|
|
|
apt-get update; \
|
|
|
|
|
apt-get install -y \
|
|
|
|
|
librabbitmq4 \
|
|
|
|
|
librabbitmq-dev;\
|
|
|
|
|
apt-get clean
|
2025-11-30 09:48:43 +01:00
|
|
|
|
2025-12-10 07:47:04 +01:00
|
|
|
USER $USERNAME
|
|
|
|
|
WORKDIR /workspace
|
2025-11-30 09:48:43 +01:00
|
|
|
|
|
|
|
|
CMD ["sleep infinity"]
|