fix(emqx): v0.1.2 — procps для launcher (502 из-за ps: command not found); HISTORY: ошибки deck/502 задокументированы
This commit is contained in:
@@ -641,3 +641,34 @@ store сам создаст таблицу iot_devices.
|
||||
1. EMQX: образ `naeel/iot-emqx:latest` → узнать UUID namespace.
|
||||
2. iot-service: образ `naeel/iot-service:latest` + env (см. ниже).
|
||||
3. kubectl-патч auth/ACL URL в EMQX (команда в разделе 16).
|
||||
|
||||
---
|
||||
|
||||
## 20. EMQX-контейнер: ошибки deck и 502 — разбор (16.08)
|
||||
|
||||
### Ошибка 1: «Не указан applicationUsePort, expose содержит несколько портов»
|
||||
- **Факт:** в форме deck-UI ПОЛЯ порта НЕТ — платформа берёт порт из EXPOSE образа.
|
||||
- **Причина:** базовый `emqx/emqx:5.5.1` имеет 7 EXPOSE-портов
|
||||
(18083, 1883, 4370, 5369, 8083, 8084, 8883), которые невозможно убрать из
|
||||
дочернего Dockerfile (`docker inspect` подтверждает — порты наследуются).
|
||||
- **Решение:** образ пересобран от чистого `debian:bookworm-slim` с deb-пакетом
|
||||
EMQX 5.5.1: единственный `EXPOSE 8083`.
|
||||
v0.1.1, digest `sha256:7de0ec8a…01dd08f`. Проверка: `{"8083/tcp":{}}`.
|
||||
- **Урок:** для платформы «Простой HTTP контейнер» образ обязан иметь РОВНО один
|
||||
EXPOSE-порт; наследуемые порты базового образа — блокер.
|
||||
|
||||
### Ошибка 2: 502 Bad Gateway (домен https://exqx.containerk8s.dev.nubes.ru/)
|
||||
- **Диагностика:** deployment `containerk8s` в ns `2fdd9658-4995-494f-892a-d88dda7da1ee`,
|
||||
READY 0/1, рестарты; лог пода:
|
||||
`/usr/bin/emqx: line 457: ps: command not found`
|
||||
- **Причина:** launcher-скрипт EMQX использует `ps`, а `debian:bookworm-slim`
|
||||
не содержит пакета `procps`.
|
||||
- **Решение:** добавлен `procps` в установку; v0.1.2, digest
|
||||
`sha256:d3722528…debb30`, запушен (latest + v0.1.2). EXPOSE по-прежнему один.
|
||||
- **Действие пользователя:** redeploy контейнера EMQX в deck-UI (образ
|
||||
`naeel/iot-emqx:latest` — платформа подтянет новый digest по latest).
|
||||
|
||||
### Состояние
|
||||
- EMQX-контейнер пока работает на старом сломанном образе — после redeploy
|
||||
проверить: под Ready 1/1, лог без `ps: command not found`, wss-подключение.
|
||||
- Образы: iot-emqx v0.1.2 (latest), iot-service v0.1.0 (latest) — оба на Docker Hub.
|
||||
|
||||
Reference in New Issue
Block a user