Шпаргалка docker

Install DOCKER
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Info and Registry
docker info — Информация обо всём в установленном Docker
docker history — История образа
docker tag — Дать тег образу локально или в registry
docker login — Залогиниться в registry
docker search — Поиск образа в registry
docker pull — Загрузить образ из Registry себе на хост
docker push — Отправить локальный образ в registry

Container Management
docker ps -а — Посмотреть все контейнеры
docker start container-name — Запустить контейнер
docker kill/stop container-name — Убить (SIGKILL) /Остановить (SIGTERM) контейнер
docker logs —tail 100 container-name — Вывести логи контейнера, последние 100 строк
docker inspect container-name — Вся инфа о контейнере + IP
docker rm container-name — Удалить контейнер (поле каждой сборки Dockerfile)
docker rm -f $(docker ps -aq) — Удалить все запущенные и остановленные контейнеры
docker events container-name
docker port container-name — Показать публичный порт контейнера
docker top container-name — Отобразить процессы в контейнере
docker stats container-name — Статистика использования ресурсов в контейнере
docker diff container-name — Изменения в ФС контейнера

Images
docker build -t my_app . — Билд контейнера в текущей папке, Скачивает все слои для запуска образа
docker images / docker image ls — Показать все образы в системе
docker image rm / docker rmi image — Удалить image
docker commit lepkov/debian11slim:version3- Создает образ из контейнера
docker insert URL — вставляет файл из URL в контейнер

docker save -o backup.tar — Сохранить образ в backup.tar в STDOUT с тегами, версиями, слоями

docker load — Загрузить образ в .tar в STDIN с тегами, версиями, слоями
docker import — Создать образ из .tar
docker image history —no-trunc — Посмотреть историю слоёв образа
docker system prune -f — Удалит все, кроме используемого (лучше не использовать на проде, ещё кстати из-за старого кеша может собираться cтарая версия контейнера)

Run
docker run -d -p 80:80 -p 22:22 debian:11.1-slim sleep infinity (—rm удалит после закрытия контейнера, —restart unless-stopped добавит автозапуск контейнера) — Запуск контейнера интерактивно или как демона/detached (-d), Порты: слева хостовая система, справа в контейнере, пробрасывается сразу 2 порта 80 и 22, используется легкий образ Debian 11 и команда бесконечный сон

docker update —restart unless-stopped redis — добавит к контейнеру правило перезапускаться при закрытии, за исключением команды стоп, автозапуск по-сути

docker exec -it container-name /bin/bash (ash для alpine) — Интерактивно подключиться к контейнеру для управления, exit чтобы выйти
docker attach container-name — Подключиться к контейнеру чтоб мониторить ошибки логи в реалтайме

Оставьте комментарий