Docker Flashcards

(11 cards)

1
Q

Диагностика и отладка

A

docker logs -f [ID] — просмотр логов контейнера (флаг -f следит за ними в реальном времени).

docker inspect [ID] — полная инфо в JSON: IP, пути, переменные окружения, порты.

docker exec -it [ID] bash — зайти внутрь работающего контейнера (интерактивный режим).

docker stats — онлайн-мониторинг потребления ресурсов (CPU, RAM, Сеть).

docker top [ID] — список процессов, запущенных внутри конкретного контейнера.

docker diff [ID] — показать изменения в файловой системе контейнера относительно образа.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Работа с образами (Images)

A

docker images — список всех скачанных образов на сервере.

docker pull [Name] — скачать образ из репозитория (Docker Hub / Registry).

docker rmi [ID] — удалить образ.

docker build -t [Name] . — собрать новый образ из Dockerfile в текущей директории.

docker tag [Image] [NewName] — присвоить образу новый тег (версию).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Управление контейнерами (Жизненный цикл)

A

docker ps — список запущенных контейнеров.

docker ps -a — список всех контейнеров (включая остановленные и упавшие).

docker run — создание и запуск нового контейнера из образа.

docker stop [ID/Name] — плавная остановка контейнера.

docker rm [ID/Name] — удаление контейнера.

docker restart [ID/Name] — перезапуск контейнера.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Image и Container

A

Image (Образ) — это неизменяемый шаблон (как инсталлятор .exe).

Container (Контейнер) — запущенный экземпляр этого образа. Образ — это диск, контейнер — это процесс.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Слои (Layers)

A

Он состоит из слоев (ReadOnly).
Каждый новый слой — это команда в Dockerfile.

Это экономит место: если у 10 образов одна база (например, Ubuntu), она хранится на диске в одном экземпляре.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Troubleshooting

A

Команда - docker logs <container_id></container_id>

Если контейнер уже удалился — docker ps -a (найти ID), затем логи.

Если логи пусты — проверяем docker inspect на предмет неверных Entrypoint или CMD.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Зачем нужна команда docker inspect?

A

Позволяет увидеть всю подкапотку:
- IP-адрес контейнера,
- проброшенные порты,
- переменные окружения (ENV),
- примонтированные тома (Mounts/Volumes).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Как «зайти» в работающий контейнер и выполнить команду?

A

docker exec -it <container_id> bash (или sh).</container_id>

Это нужно для ручной проверки конфигов или доступности сети внутри контейнера.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Что будет с данными в БД внутри контейнера, если его удалить?

A

Если не использовались Volumes — данные пропадут. Чтобы данные выжили, нужно монтировать папку хоста в контейнер: -v /host/path:/container/path.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Как пробросить порты?

A

-p 8080:80

Он «пробрасывает» порт 8080 с твоей реальной машины на порт 80 внутри контейнера.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Очистка (Housekeeping)

A

docker system prune

Удалит все остановленные контейнеры, неиспользуемые сети и “висячие” (dangling) образы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly