32 lines
1.4 KiB
Docker
32 lines
1.4 KiB
Docker
# EMQX для IoT на платформе Nubes (контейнер «Простой HTTP»).
|
|
# Образ: naeel/iot-emqx (Docker Hub, публичный).
|
|
#
|
|
# ⚠️ Сборка от чистого debian: платформа берёт порт приложения из EXPOSE образа,
|
|
# а в базовом emqx/emqx:5.5.1 зашито 7 EXPOSE-портов (1883/4370/5369/8083/8084/
|
|
# 8883/18083), которые невозможно убрать из дочернего Dockerfile. Поэтому здесь
|
|
# ОДИН EXPOSE 8083 — иначе deck-UI требует несуществующее поле applicationUsePort.
|
|
|
|
FROM debian:bookworm-slim
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends ca-certificates curl procps \
|
|
&& curl -fsSL -o /tmp/emqx.deb \
|
|
https://github.com/emqx/emqx/releases/download/v5.5.1/emqx-5.5.1-debian12-amd64.deb \
|
|
&& (dpkg -i /tmp/emqx.deb || apt-get -f install -y) \
|
|
&& rm -f /tmp/emqx.deb \
|
|
&& apt-get purge -y curl \
|
|
&& apt-get autoremove -y \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY emqx.conf /etc/emqx/emqx.conf
|
|
|
|
# data_dir из emqx.conf: /opt/emqx/data. Launcher работает от пользователя
|
|
# emqx (deb-пакет создаёт его) — каталог должен принадлежать emqx.
|
|
RUN mkdir -p /opt/emqx/data \
|
|
&& chown -R emqx:emqx /opt/emqx/data
|
|
|
|
EXPOSE 8083
|
|
|
|
ENTRYPOINT ["/usr/bin/emqx"]
|
|
CMD ["foreground"]
|