Docker очень крут, потому что он позволяет запускать гораздо больше приложений на одних и тех же старых серверах, а также позволяет легко упаковывать и отправлять программы
- 1. Что такое Docker?
- 2. Разница между виртуализацией и контейнеризацией?
- 3. Что такое Docker контейнер и каковы его преимущества?
- 4. Что такое Образ Docker?
- 5. Объясните архитектуру Docker?
- 6. Что такое Docker Hub?
- 7. Каковы важные особенности Docker?
- 8. Каковы основные недостатки Docker?
- 9. Расскажите нам что-нибудь о Docker Compose.
- 10. Что такое Docker Swarm?
- 11. Что такое Docker Engine?
- 12. Объясните что такое (реджестри) реестры
- 13. Какую команду запустить, чтобы увидеть все запущенные контейнеры в Docker?
- 14. Напишите команду, чтобы остановить Docker-контейнер.
- 15. Какая команда используется для запуска образа как контейнера?
- 16. Объясните метки объектов Docker ( Docker object labels)
- 17. Как написать Docker file, чтобы создать и скопировать каталог и построить его с помощью модулей Python?
- 18. Где хранятся тома Docker?
- 19. Перечислите некоторые общие важные команды Docker
- 20. Как запустить несколько копий файла Compose на одном хосте?
1. Что такое Docker?
2. Разница между виртуализацией и контейнеризацией?
Контейнеры предоставляют изолированную среду для запуска приложения.
Все пользовательское пространство явно выделено для приложения.
Любые изменения, сделанные внутри контейнера, никогда не отражаются на хосте или даже других контейнерах, работающих на том же хосте.
Контейнеры – это абстракция прикладного уровня.
Каждый контейнер – это отдельное приложение.
В виртуализации гипервизоры предоставляют гостю целую виртуальную машину, включая ядро.
Виртуальные машины – это абстракция аппаратного уровня.
Каждая виртуальная машина – это физическая машина.
3. Что такое Docker контейнер и каковы его преимущества?
Контейнеры Docker включают в себя приложение и все его зависимости.
Он разделяет ядро с другими контейнерами, работая как изолированные процессы в пространстве пользователя в операционной системе хоста.
Контейнеры Docker не нуждаются в какой-либо конкретной инфраструктуре, они работают в любой инфраструктуре и в любом облаке.
Docker-контейнеры – это в основном экземпляры Docker-образов во время выполнения.
Вот несколько основных преимуществ использования контейнера Docker –
- Он предлагает эффективную и простую первоначальную настройку.
- Он позволяет вам подробно описать жизненный цикл вашего приложения.
- Простая настройка и взаимодействие с Docker Compose.
- Документация предоставляет каждый бит информации.
4. Что такое Образ Docker?
Образ Docker является источником контейнера Docker.
Или можно сказать, что образы Docker используются для создания контейнеров.
Когда пользователь запускает образ Docker, создается экземпляр контейнера.
Эти образы могут быть развернуты в любой среде Docker.
5. Объясните архитектуру Docker?
- Сервер, который является типом долго выполняющейся программы, называемой процессом демона (команда docker).
- REST API, который определяет интерфейсы, которые программы могут использовать для общения с демоном и указания ему, что делать.
- Клиент интерфейса командной строки (CLI) (команда docker).
- Интерфейс командной строки использует API-интерфейс Docker REST для управления или взаимодействия с приложениями-демонами Docker с использованием базовых API и CLI.
6. Что такое Docker Hub?
Docker hub – это облачный реестр, который помогает вам организовывать репозитории кода.
Позволяет создавать, тестировать, хранить образы в облаке Docker.
Вы также можете развернуть образ на своем хосте с помощью Docker Hub.
7. Каковы важные особенности Docker?
Вот основные особенности Docker: –
- Простое моделирование
- Контроль версий
- Гибкость приложений
- Производительность разработчика
- Операционная эффективность
8. Каковы основные недостатки Docker?
Некоторые из недостатков Docker, которые вы должны иметь в виду:
- Он не предоставляет опцию хранения.
- Плохой вариант мониторинга.
- Нет автоматического перепланирования неактивных узлов.
- Сложная автоматическая установка горизонтального масштабирования.
9. Расскажите нам что-нибудь о Docker Compose.
Docker Compose – это файл YAML, который содержит сведения о службе, сети и томах для настройки приложения Docker.
Таким образом, вы можете использовать Docker compose для создания отдельных контейнеров, размещения их и обеспечения связи с другими контейнерами.
10. Что такое Docker Swarm?
Docker Swarm является родной кластеризацией для Docker.
Он превращает пул Docker-хостов в один виртуальный Docker-хост.
Docker Swarm обслуживает стандартный Docker API, любой инструмент, который уже взаимодействует с демоном Docker, может использовать Swarm для прозрачного масштабирования на несколько хостов.
11. Что такое Docker Engine?
Демон Docker или движок Docker представляет сервер.
Демон docker и клиенты должны быть запущены на одном хосте, который может взаимодействовать через двоичный файл клиента командной строки и API-интерфейс RESTful.
12. Объясните что такое (реджестри) реестры
Есть два типа реестра –
- Общедоступный
- Частный
13. Какую команду запустить, чтобы увидеть все запущенные контейнеры в Docker?
$ docker ps
14. Напишите команду, чтобы остановить Docker-контейнер.
$ sudo docker stop container name
15. Какая команда используется для запуска образа как контейнера?
$ sudo docker run -i -t alpine /bin/bash
16. Объясните метки объектов Docker (Docker object labels)
Метки объектов Docker – это метод применения метаданных к объектам Docker, включая образы, контейнеры, тома, сеть, ноды Swarm и сервисы.
17. Как написать Docker file, чтобы создать и скопировать каталог и построить его с помощью модулей Python?
2
3
4
5
6
7
|
FROM pyhton:2.7–slim
WORKDIR /app
COPY . /app
docker build –tag
|
18. Где хранятся тома Docker?
Вам нужно ориентироваться на этот системный путь:
/var/lib/docker/volumes
19. Перечислите некоторые общие важные команды Docker
20. Как запустить несколько копий файла Compose на одном хосте?
Compose использует имя проекта, которое позволяет вам создавать уникальные идентификаторы для всех контейнеров проекта и других ресурсов.
Чтобы запустить несколько копий проекта, задайте пользовательское имя проекта с помощью параметра командной строки -a или переменной среды COMPOSE_PROJECT_NAME.