taihon / otus-linux-pro-hw13

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OTUS Administrator Linux. Professional ДЗ №13: Docker, docker-compose, dockerfile

Задание

  1. Создайте свой кастомный образ nginx на базе alpine. После запуска nginx должен отдавать кастомную страницу (достаточно изменить дефолтную страницу nginx); Собранный образ необходимо запушить в docker hub и дать ссылку на ваш репозиторий.
  2. Определите разницу между контейнером и образом;
  3. Ответьте на вопрос: Можно ли в контейнере собрать ядро?
  4. * Создайте кастомные образы nginx и php, объедините их в docker-compose. После запуска nginx должен показывать php info. Все собранные образы должны быть в docker hub.

Решение

  1. Решено в подкаталоге. https://hub.docker.com/repository/docker/taihon/taihon-nginx/general

  2. Образ - неизменяемый шаблон, содержащий набор "слоёв", в которых находятся инструкции, необходимое ПО и файлы, необходимые для выполнения каких-либо функций. Контейнер - исполняющийся в данный момент экземпляр образа.

  3. Скомпилировать ядро из исходного кода можно, но если не предоставить контейнеру docker volume с хост-машины - то результат сборки будет утерян при завершении работы контейнера. Пример окружения для сборки ядер: https://github.com/a13xp0p0v/kernel-build-containers

  4. Выполнено в подкаталоге. Для проверки можно перейти в каталог и запустить docker compose up -d

    cd q4 && docker compose up -d
    

    Docker скачает кастомные образы nginx (взят из п.1) и php (основан на php-8.2 с доустановленными пакетами), прокинет порт 80 с хоста внутрь на nginx. При переходе на порт 80 Docker-хоста будет отображена страница с phpinfo().

About

License:MIT License


Languages

Language:Dockerfile 59.2%Language:HTML 36.6%Language:PHP 4.2%