Проверка обновлённых изменений файловой системы с помощью docker container diff
В этом завершающем шаге мы снова воспользуемся командой docker container diff
, чтобы наблюдать изменения файловой системы, внесённые на предыдущем шаге. Это наглядно покажет, как наши действия внутри контейнера отражаются в его записываемом слое.
Напомним, что на предыдущем шаге мы создали новый файл /tmp/my_new_file.txt
и изменили файл /usr/share/nginx/html/index.html
внутри контейнера my-nginx-container
. Теперь снова выполним docker container diff
для этого контейнера.
docker container diff my-nginx-container
В этот раз вывод должен содержать внесённые нами изменения. Вы увидите строки, похожие на эти:
A /tmp/my_new_file.txt
C /usr/share/nginx/html/index.html
Строка A /tmp/my_new_file.txt
указывает, что новый файл my_new_file.txt
был добавлен (Added) в каталог /tmp
.
Строка C /usr/share/nginx/html/index.html
показывает, что файл index.html
в каталоге /usr/share/nginx/html/
был изменён (Changed).
Этот вывод подтверждает, что docker container diff
эффективно отображает модификации файловой системы контейнера с момента его запуска. Эти изменения хранятся в записываемом слое контейнера, который отделён от слоёв базового образа. Это фундаментальная концепция многослойной файловой системы Docker и способа, которым контейнеры сохраняют своё состояние.
При удалении контейнера этот записываемый слой также удаляется, и все внесённые изменения теряются, если они не были сохранены с использованием томов или bind-монтирований (это темы для других лабораторных работ).
Для очистки можно остановить и удалить контейнер:
docker stop my-nginx-container
docker rm my-nginx-container
На этом наше знакомство с docker container diff
завершено. Вы узнали, как проверять начальные изменения файловой системы при запуске контейнера и как отслеживать изменения, вносимые в работающий контейнер.