`FROM fedora:latest `RUN yum -y install stress && yum clean all` `ENTRYPOINT ["stress"]` Этот Dockerfile очень короткий, но полезный для тестов — давай разберём построчно 👇 --- ### 🧩 1️⃣ `FROM fedora:latest` - Базовый образ — **Fedora (последняя версия)**. - Fedora — RPM-базированная Linux-система, использующая `dnf/yum` для установки пакетов. - Все последующие команды будут выполняться **внутри контейнера**, построенного на Fedora. --- ### ⚙️ 2️⃣ `RUN yum -y install stress && yum clean all` - Выполняет установку утилиты **`stress`**, которая используется для нагрузки на систему (CPU, память, диск, I/O и т.д.). - Флаги: - `-y` — автоматически отвечает “yes” на все запросы. - `yum clean all` — очищает кэш, чтобы **уменьшить размер образа**. - После выполнения команда `stress` станет доступна в контейнере. --- ### 🚀 3️⃣ `ENTRYPOINT ["stress"]` - Устанавливает **точку входа** контейнера — при запуске он **всегда будет выполнять команду `stress`**. - Пример: ```bash docker run fedora-stress --cpu 2 --timeout 30s ``` → запускает стресс-тест на 2 ядра в течение 30 секунд. --- ### 🧠 Что делает этот образ Контейнер, собранный из этого Dockerfile: - запускает утилиту `stress`; - может создавать нагрузку на систему (CPU, память и т.д.); - полезен для тестов **автоскейлинга**, **мониторинга** и **алертинга** в DevOps-окружениях. --- ### 🧩 Примеры использования **Собрать:** ```bash docker build -t fedora-stress . ``` **Запустить CPU-нагрузку на 4 ядра на 1 минуту:** ```bash docker run --rm fedora-stress --cpu 4 --timeout 60s ``` **Нагрузка на память (100 MB):** ```bash docker run --rm fedora-stress --vm 1 --vm-bytes 100M --timeout 30s ``` ---