38 lines
3.2 KiB
Markdown
38 lines
3.2 KiB
Markdown
---
|
|
title: Вспомогательные операции (Utils)
|
|
description: Общие вспомогательные скрипты для обслуживания, валидации и управления сертификатами.
|
|
weight: 56
|
|
---
|
|
|
|
Вспомогательные операции предоставляют общие функции для обслуживания узлов, валидации и выполнения специфических задач проектов.
|
|
|
|
## Основные вспомогательные операции {#actions}
|
|
|
|
| Операция | Описание |
|
|
| :--- | :--- |
|
|
| `utils/extract-traefik-certs` | Извлекает сертификаты SSL/TLS и приватные ключи из хранилища Traefik `acme.json`. |
|
|
| `utils/generate-happ-subscriptions` | Автоматически генерирует файлы подписки HApp на основе текущих метаданных проекта. |
|
|
| `utils/lint-docker-compose` | Выполняет статический анализ всех файлов `docker-compose.yml` на соответствие стандартам общих модулей. |
|
|
|
|
## Управление сертификатами (`utils/extract-traefik-certs`) {#certificates}
|
|
|
|
Traefik сохраняет свои сертификаты, выпущенные через ACME (например, от Let's Encrypt), в одном файле `acme.json`. Действие `utils/extract-traefik-certs` парсит этот файл и извлекает отдельные файлы `fullchain.pem` и `privkey.pem`.
|
|
|
|
Это особенно полезно, когда другим сервисам (например, почтовым серверам или приложениям вне Docker) требуются те же SSL-сертификаты.
|
|
|
|
## Контроль качества (`utils/lint-docker-compose`) {#linting}
|
|
|
|
Для поддержания согласованности и безопасности действие `utils/lint-docker-compose` проверяет все compose-файлы в инфраструктуре. Оно проверяет:
|
|
|
|
- **Стандарты именования**: Гарантирует, что имена проектов и контейнеров соответствуют соглашению `{node}-{project}`.
|
|
- **Контекст безопасности**: Отмечает контейнеры, работающие под пользователем `root` без обоснованного переопределения.
|
|
- **Ограничения ресурсов**: Идентифицирует сервисы, у которых отсутствуют лимиты CPU или памяти.
|
|
- **Стандарты Label**: Проверяет наличие необходимых меток (labels) для маршрутизации (например, [Traefik](https://traefik.io/)) и [CrowdSec](/root/concepts/security-model#crowdsec).
|
|
|
|
---
|
|
|
|
**See also:**
|
|
|
|
- [Концепция: Принципы инфраструктуры](/root/concepts/principles)
|
|
- [Концепция: Безопасность и изоляция привилегий](/root/concepts/security-model)
|