Первый контейнер Flashcards

1
Q

Как получить образ?

A
  • Команда docker pull <образ> - скачать из репозитория Docker Hub
  • На основе готового образа создать свой через Dockerfile
  • Команда docker commit <контейнер> - создать образ на основе контейнера
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Что есть у образа?

A
  • REPOSITORY (Название) - node, ubuntu, redis и тд (может быть none)
  • TAG (версия образа) (может быть none)
  • IMAGE ID (может заменить тег, не бывает none)
  • CREATED
  • SIZE
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

В чём особенность слоёв образа?

A

Докер позволяет переиспользовать слои, из которых состоит образ. Если при скачивании образа, некоторые слои уже будут присутствовать локально, докер их скачивать не будет, а лишь переиспользует.

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

Что есть у контейнера?

A
  • CONTAINER ID - идентификатор контейнера
  • IMAGE - образ, на основе которого запустили контейнер
  • COMMAND - команда запуска
  • CREATED - время запуска
  • STATUS - статус контейнера
  • PORTS - порты, на которых запущен контейнер
  • NAMES - имя контейнера (присваивается рандомно, если явно не указано)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Какие могут были статусы у контейнера?

A
  • Up - поднятый контейнер
  • Exited - остановленный контейнер, имеющий код выхода
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Из чего состоит жизненный цикл контейнера?

A

docker run - Живёт и работает
docker stop - Живёт и не работает - docker start
docker rm - Не живёт

p.s. Частый случай, когда развёрнутый с нуля контейнер ещё не готов к использованию. Он поднят, но данные внутри него ещё не готовы к работе. В таком случае программе внутри контейнера нужно время, чтобы начать работать.
p.p.s. Контейнер работает пока работает программа.

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

Примеры команд

A
  • docker images или docker image ls - посмотреть список образов
  • docker rmi <образ> [образ...] или docker image rm <образ> [образ...] - удалить образ(ы)
  • docker run --name <имя> <образ> - при создании присвоить имя контейнеру
  • docker run --rm <образ> - удалить контейнер после завершения его работы
  • docker ps -a или docker ps --all - вывести список всех контейнеров
  • docker ps -q или docker ps --quiet - вывести только айди контейнеров
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Особенности команд

A
  • Для одного и того же действия могут быть несколько команд (обычно вторая команда имеет сокращённое название для быстроты запуска)
  • Опции запуска (для выполнения действия непосредственно перед запуском контейнера, например, задать имя)
  • Полная (через два дефиса --) и сокращённая запись (через один дефис -)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

В чём отличие команды docker ps от docker ps -a?

A
  • docker ps выводит список не всех, а только запущенных контейнеров
  • docker ps -a выводит список все контейнеров
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Что такое Tag?

A

Это версии образов. При скачивании образа без явного указания тега, будет скачана версия latest.

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

Что такое тег alpine?

A

Версия образа, сокращённая настолько, насколько возможно, чтобы сохранить только нужные данные, и уменьшить объём образа.

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

Как скачать образ с DockerHub?

A

docker pull <образ>
docker pull <образ>:<версия>

Версия может как содержать номер, например, 16, так и alpine. Версия latest скачивается без явного указания тега.

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

Как удалить образ?

A

Удалить образ можно командой docker rmi с указанием либо имени и тега образа (docker rmi <имя>:<тег>), либо его айди (docker rmi <id>).

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