Описание команды: run - команда создает контейнер из заданного образа и запускает его. Образ указывается последним параметром. --name - придумываем своё имя для контейнера. Имя необходимо, чтоб удобно было обратиться. -d - выполнять задачи в фоновом режим. Это сокращенная запись. Можно использовать полную --detach. -e - переменные окружения (или --env), которые пишутся заглавными буквами, чтобы объявить базу в докере и создать её. -p - свободный порт, который нужно выставить наружу. Читается это так: пробросить порт 5444 снаружи контейнера на порт 5432. postgres - установить образ базы postgres, загрузить в контейнер последнюю версию (latest). Но можно вместо latest указать свою версию базы (СУБД).
Задача 2: Как увидеть, что докер контейнер существует?
Пишем команду в терминале:
docker ps -a
Теперь ищем в столбце NAMES запущенный докер с именем, который задали.
Описание команды: ps - для получения списка запущенных контейнеров.
Задача 3: Как войти в docker контейнер?
Пишем команду в терминале и рассматриваем её.
docker exec -it my_db_in_docker bash
Перевод команды:
докер, зайди в интерактивном режиме в контейнер по имени ... с командной оболочкой bash
Описание команды: exec - запустить в выбранном нами контейнере bash - эта команда указана последним параметром. -i - подключиться интерактивно, чтобы мы видели происходящее. -t - добавить терминал внутри контейнера. bash - командная оболочка, которую мы выбрали, чтобы запустить. Здесь вы сами выбираете, что хотели бы написать - другие команды или командные оболочки, к примеру ls или psql.
Всё, мы вошли в контейнер, теперь можем писать любые команды.
Так же можно безопасно тестировать программы не на своей ОС, а в докере. Например, у вас ubuntu ОС. Для этого пишут:
Задача 4: Как остановить наш докер контейнер, а потом снова запустить его?
Команда остановки именованного контейнера: docker stop my_db_in_docker
Команда запуска: docker start my_db_in_docker
Так же можно перезапустить: docker restart my_db_in_docker
Если имя не задавали, то можно использовать ID контейнера.
Задача 5: Как мне удалить контейнер докера?
Командой:
docker rm -f my_db_in_docker
Описание команд: rm - команда для удаления остановленного контейнера. -f - или --force - удалить, не запрашивая подтверждения.
Задача 6: Как посмотреть, что делал докер?
Можно посмотреть логи, например, команда: docker logs my_db_in_docker
Задача 7: Как удалить все созданные контейнеры?
Что бы очистить место и убрать все контейнеры докера, есть команда:
docker system prune -a
Описание команд: system - команда управления докером. prune - команда на удаление не используемых данных: образы, контейнеры. -a - или --all - всё, что есть.