Всем привет,
Это Ankit, ваш дружелюбный куратор Content Content. Я прочитал много статей о DEVOPS, распределенных системах, мониторинге производительности и т. Д. Я буду делиться некоторыми ключевыми выходами из этих статей с вами, чтобы вы могли оставаться обновленными и быстро изучать несколько вещей. 🙂
Это был фантастический читатель из центра облачного архитектуры Google.
Ссылка на полную статью👇 Лучшие практики для строительных контейнеров
Краткое изложение лучших практик для строительных контейнеров
Пакет одно приложение за контейнер
Контейнеры должны рассматриваться как одно приложение, а не как виртуальную машину. Наилучшая практика состоит в том, чтобы иметь родительский процесс и все его дочерние процессы как один контейнер. Если у вас есть несколько приложений в одном контейнере, вы можете в конечном итоге с запущенным контейнером с невосприимчивым основным компонентом.
Правильно обрабатывать PID 1, обработка сигналов и процессы зомби
Сигналы Linux управляют жизненным циклом процессов внутри контейнера. И, чтобы плотно связать жизненный цикл вашего приложения к его контейнеру, ваше приложение необходимо правильно обрабатывать сигналы Linux. Одним из способов можно сделать, является использованием специализированной системы INIT, как Tini Отказ
Оптимизировать для кэша сборки Docker Build
Кэш Country Docker может использоваться для ускорения здания изображений контейнера, пропуская потенциально дорогостоящие шаги. Чтобы воспользоваться одним преимуществом Cheche Case Docker, шаги сборки часто меняются, должны быть расположены в нижней части DockerFile. Docker может использовать его кеш сборки, только если все предыдущие шаги сборки использовали его.
Удалить ненужные инструменты
Чтобы защитить свои приложения, попробуйте уменьшить поверхность атаки вашего приложения, удалив все ненужные инструменты. Например, вы можете удалить утилиты, такие как NetCat.
Построить наименьшее возможное изображение
Небольшие изображения подходят для более быстрой загрузки и времени загрузки. Несколько способов обеспечить небольшой размер изображения включает в себя:
- Используя наименьшее основное изображение
- уменьшение количества беспорядка, установив только то, что необходимо, и
- Создание изображений с общими слоями.
Сканирование изображений для уязвимостей
В случае уязвимостей лучшая практика заключается в том, чтобы восстановить изображение и его патчи и перераспределить его. Вы можете выбрать услугу для постоянного сканирования ваших изображений для уязвимостей безопасности. Докер сотрудничает с Снайк Предоставить услуги сканирования уязвимостей.
Правильно пометить ваши изображения
Рекомендуется правильно связать систему метой на контейнерных изображениях в политику выпуска вашего программного обеспечения. Когерентная и последовательная политика мечения должна быть установлена на месте и документирована, чтобы пользователи могли его легко понять.
Я надеюсь, что вам понравился этот TL; DR Summary и узнал что-то новое. Я буду придумать больше таких заметок в ближайшее время. Итак, оставайся настроенными! 🙂
В настоящее время здание Signoz — Инструмент APM и наблюдаемости APM-источника 💙
Signoz/Signoz.
Signoz помогает разработчикам мониторировать свои проблемы приложения и устранять неполадки, альтернативу открытым исходным кодом для Datadog, NewRelic и т. Д. 🔥 🖥
Мониторируйте свои приложения и устраните неполадки проблем в развертываемых приложениях, альтернативу открытой исходности к DataDog, новую реликвию и т. Д.
Signoz помогает разработчикам мониторировать приложениями и устранять проблемы в своих развернутых приложениях. Signoz использует распределенную трассировку, чтобы получить видимость в вашем программном стеке.
👇 Особенности:
- Обзор приложений Метрики, такие как RPS, 50-й/90-й/99-й процентиль задержки, а также Скориемость ошибок
- Медленные конечные точки в вашем приложении
- Смотрите точные трассы запроса, чтобы выяснить проблемы в Downstream Services, замедление запросов DB, вызовите 3-й партийные услуги, такие как платежные шлюзы, и т.д
- Фильтр следов по имени службы, операции, латентностью, ошибкой, тегами/аннотациями.
- Совокупные метрики на отфильтрованных следах. Например, вы можете получить ошибку …
Оригинал: «https://dev.to/ankit01oss/best-practices-for-building-containers-4mkp»