junior
Перечислите основные команды Docker
Команды Docker разделяются на группы по работе с образами, контейнерами и инфраструктурой.
Работа с образами
| Команда | Описание |
|---|---|
docker build -t name:tag . |
Собрать образ из Dockerfile |
docker images / docker image ls |
Список локальных образов |
docker pull image:tag |
Скачать образ из реестра |
docker push image:tag |
Отправить образ в реестр |
docker rmi image:tag |
Удалить образ |
docker image prune |
Удалить неиспользуемые образы |
Работа с контейнерами
| Команда | Описание |
|---|---|
docker run image |
Создать и запустить контейнер |
docker run -d -p 8080:8080 --name myapp image |
Запустить в фоне с маппингом портов и именем |
docker ps |
Список запущенных контейнеров |
docker ps -a |
Список всех контейнеров (включая остановленные) |
docker stop container |
Остановить контейнер (SIGTERM, затем SIGKILL) |
docker start container |
Запустить остановленный контейнер |
docker restart container |
Перезапустить контейнер |
docker rm container |
Удалить контейнер |
docker logs container |
Посмотреть логи контейнера |
docker logs -f container |
Следить за логами в реальном времени |
docker exec -it container /bin/sh |
Войти в работающий контейнер |
docker inspect container |
Подробная информация о контейнере (JSON) |
Примеры для Java-разработчика
# Собрать образ Spring Boot приложения
docker build -t my-spring-app:1.0 .
# Запустить с переменными окружения и маппингом порта
docker run -d -p 8080:8080 \
-e SPRING_PROFILES_ACTIVE=prod \
-e DB_URL=jdbc:postgresql://db:5432/mydb \
--name my-spring-app \
my-spring-app:1.0
# Проверить логи
docker logs -f my-spring-app
# Войти в контейнер для отладки
docker exec -it my-spring-app /bin/sh
На собеседовании: не нужно перечислять все команды. Покажите, что знаете рабочий цикл:
docker build(сборка) ->docker run(запуск) ->docker logs(отладка) ->docker stop/docker rm(остановка/удаление). Упомянитеdocker execдля входа в контейнер.