Добавлен OTLP-провайдер, реализовано отбрасывание метрик и трейсов в observability + добавлен перезапуск nginx при пересборке контейнеров (ошибка, когда докер меняет адреса сервисов)

This commit is contained in:
mi
2026-07-29 15:15:40 +03:00
parent 3ed7239efa
commit 41e19005fb
43 changed files with 3016 additions and 83 deletions
+13 -4
View File
@@ -544,9 +544,9 @@ docker compose --profile certbot run --rm certbot certonly \
```bash
cd <BACKEND_ROOT>
docker compose exec -T nginx nginx -t
docker compose exec -T nginx nginx -t -c /tmp/nginx.conf
# активировать rendered TLS config атомарно
docker compose exec -T nginx nginx -s reload
docker compose kill -s HUP nginx
```
HSTS пока не включать. Проверить chain/hostname/redirect, затем включить HSTS без preload.
@@ -559,8 +559,8 @@ HSTS пока не включать. Проверить chain/hostname/redirect,
1. взять `flock`, чтобы исключить параллельные запуски;
2. выполнить `docker compose --profile certbot run --rm certbot renew --webroot -w /var/www/certbot --quiet`;
3. при успешном обновлении проверить `docker compose exec -T nginx nginx -t`;
4. только после успешной проверки выполнить `docker compose exec -T nginx nginx -s reload`;
3. при успешном обновлении проверить `docker compose exec -T nginx nginx -t -c /tmp/nginx.conf`;
4. только после успешной проверки выполнить `docker compose kill -s HUP nginx`;
5. записать структурированный результат и метрику времени до истечения;
6. вернуть ненулевой exit code при ошибке, чтобы сработал alert;
7. не удалять действующий сертификат при неуспешном renew.
@@ -761,9 +761,18 @@ docker compose up -d keycloak
docker compose up -d message-safety
docker compose up -d bitrix-local-app bitrix-sync
docker compose up -d nginx
docker compose up -d --wait api-backend keycloak sms-service bitrix-local-app
docker compose exec -T nginx nginx -t -c /tmp/nginx.conf
docker compose kill -s HUP nginx
docker compose ps
```
При повторной раскатке reload после readiness upstream обязателен: nginx
разрешает Docker DNS при загрузке конфигурации и иначе может продолжить
обращаться к старому container IP. Bare-команды `nginx -t` и
`nginx -s reload` не использовать: рабочий config/PID находятся в `/tmp`, а
filesystem контейнера read-only.
После каждого шага ждать health, но проверять readiness отдельно из internal network:
```bash