MODULE_INSTALLATION: DEPLOYMENT_OS_TARGETS
[1.1] LINUX_AUTO_INSTALL
bash — quick_install.sh
#
curl -sSL https://get.docker.com/ | sh
[1.2] DESKTOP_GUI_VERSION:
- MAC_OS: Download_DMG
- WINDOWS: Download_MSI
REGISTRY_OPERATIONS: HUB_CONNECTIVITY
| COMMAND | DESCRIPTION |
|---|---|
docker login | Вход в реестр (Docker Hub / Local) |
docker logout | Завершение сессии реестра |
docker search [name] | Поиск образа в репозитории |
docker pull [name] | Загрузка образа на локальный узел |
docker push [name] | Отправка локального образа в реестр |
CONTAINER_LIFECYCLE: PROCESS_CONTROL
| create: | docker create --name [n] [img] — создание |
| run: | docker run -it -d [img] — запуск в фоне |
| rename: | docker rename [old] [new] — переименование |
| update: | docker update --cpu-shares 512 [id] — лимиты |
| POWER_STATE_COMMANDS | |
| start/stop: | Включение / Мягкая остановка |
| restart: | Перезагрузка контейнера |
| pause/unpause: | Приостановка всех процессов |
| kill: | docker kill -s HUP [id] — сигнал SIGKILL |
| attach: | Подключение к стандартному вводу (TTY) |
SYSTEM_DIAGNOSTICS: INFO_GATHERING
docker_stats.exe
docker ps -a # Список всех юнитовdocker logs -f [id] # Живой логdocker stats [id] # Нагрузка CPU/RAMdocker inspect [id] # JSON конфигурация
NETWORK_TOPOLOGY: VIRTUAL_INTERFACES
docker network ls | Список виртуальных сетей |
docker network create -d bridge [n] | Создание моста (Bridge) |
docker network connect [net] [cont] | Подключение к сети |
docker network inspect [net] | Детальная инфо о подсети |
MAINTENANCE_WARNING: SYSTEM_CLEANUP
ВНИМАНИЕ: Команды ниже удаляют данные безвозвратно!
docker system prune | Удалить всё неиспользуемое |
docker system prune --volumes | + Удаление томов (дисков) |
docker image prune -a | Очистка всех старых образов |
docker rm $(docker ps -a -q) | Удаление всех контейнеров |
CLUSTER_MODE: DOCKER_SWARM_ORCHESTRATION
| swarm init: | docker swarm init — запуск кластера |
| node ls: | docker node ls — список узлов |
| service scale: | docker service scale [n]=5 — масштабирование |
PROTOCOL: BUILDING_CUSTOM_IMAGES [DOCKERFILE_ENGINE]
ОПИСАНИЕ: Dockerfile — это файл-рецепт, содержащий инструкции для сборки собственного образа. Позволяет упаковать приложение и его окружение в единый неизменяемый модуль.
1. INSTRUCTION_SET
| FROM: | Базовый образ (напр. python:3.13 или nginx) |
| WORKDIR: | Установка рабочей папки внутри контейнера |
| COPY: | Копирование файлов с хоста в образ |
| RUN: | Выполнение команд при сборке (установка пакетов) |
| ENTRYPOINT: | Главная команда запуска контейнера |
CASE_STUDY: NGINX_STATIC_SERVER [VOLS-CALCULATOR]
Задача: Разместить index.html (Калькулятор связиста) на базе сервера Nginx.
nano Dockerfile
FROM nginx:latest
WORKDIR /usr/share/nginx/html
COPY index.html .
bash — image_compilation
root@radeosys0:~/proj#
docker build . -t vols-calculator
root@radeosys0:~/proj#
docker run -d -p 9999:80 vols-calculator
ISOLATION_REPORT: NETWORK_STATUS
LOG: Система успешно поддерживает параллельную работу узлов:
- Node_A: Port 8888 [Active]
- Node_B: Port 9999 [Active]
Конфликтов портов не обнаружено. Изоляция контейнеров: 100%.
ORCHESTRATION_LAYER: DOCKER_COMPOSE_v2.x
ОПИСАНИЕ: Инструмент для определения и запуска многоконтейнерных приложений. Использует YAML-файлы для настройки сервисов, сетей и томов.
[8.1] CONFIGURATION_EXAMPLE: WORDPRESS_STACK
nano docker-compose.yml
services:
db:
image: mariadb:10.11
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_pass
MYSQL_DATABASE: wordpress
volumes:
- db_data:/var/lib/mysql
wordpress:
image: wordpress:latest
ports:
- "80:80"
restart: always
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_NAME: wordpress
volumes:
- wp_data:/var/lib/wordpress/html
volumes:
db_data:
wp_data:
[8.2] CONTROL_COMMANDS
| up -d: | docker compose up -d — запуск всей инфраструктуры в фоне |
| down: | docker compose down — полная остановка и удаление сети стека |
| ps: | docker compose ps — статус запущенных сервисов текущего файла |
| logs: | docker compose logs -f — просмотр логов всех контейнеров стека |
| restart: | docker compose restart — мягкая перезагрузка юнитов |
