- Изучаем Docker: Запускаем Docker-контейнер
- Объясняем Docker
- Что Такое Docker-контейнер
- Как Запустить Docker-контейнер
- Подводим Итоги
- Команда запуска Docker с примерами
- Команда запуска Docker
- Запустите контейнер на переднем плане
- Запустите контейнер в автономном режиме
- Удалите контейнер после выхода
- Задайте имя контейнера
- Публикация контейнерных портов
- Совместное использование данных (монтаж томов)
- Интерактивный запуск контейнера
- Выводы
- Как установить Docker и запустить Docker контейнеры в Ubuntu
- Установка Docker CE (Community Edition) в Ubuntu
- Изучите основные команды Docker в Ubuntu
- Загрузите образ Docker в Ubuntu
- Запустите Docker-контейнер в Ubuntu
Изучаем Docker: Запускаем Docker-контейнер
Так же, как и Linux Линуса Торвальдса, Docker Соломона Хайкса случайно стал революцией в мире разработки. Соломон пытался найти решение для программистов, с помощью которого код работал бы одинаково, как при разработке, так и на продакшене, в результате чего и появились Docker-контейнеры. В этом уроке мы покажем вам, как запустить Docker-контейнер на вашем VPS , а также дадим некоторые дополнительные советы и команды.
Сегодня Docker является самой популярной платформой управления контейнерами.
Прокачайте ваш проект, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.
Объясняем Docker
На самом базовом уровне это решает проблему приложения, работающего на одной платформе, но не на других. Несмотря на то, что Docker-контейнеры присутствуют на протяжении всего цикла разработки программного обеспечения, его основное применение – в развёртывании.
Что Такое Docker-контейнер
Контейнеры Docker – это запущенные экземпляры образов Docker. Запуск образа создает Docker-контейнер. Образы являются некими шаблонами, которые можно использовать для создания контейнеров. Они содержат информацию о том, что требуется для создания контейнера. Образы могут храниться локально или удалённо. Если вам нужна помощь с установкой Docker, ознакомьтесь с нашими руководствами для CentOS 7 (анг.) или Ubuntu 18.04 .
Как Запустить Docker-контейнер
Помните, что перед запуском вам необходимо получить доступ к вашему VPS-серверу по SSH . Прочитайте наше руководство по PuTTY , если у вас возникли проблемы.
Чтобы получить список всех образов Docker в вашей системе, вы можете использовать команду:
Если вы хотите отобразить дополнительную информацию, введите в командной строке следующую команду:
У нас пока нет образов Docker в системе, поэтому давайте сначала выгрузим образ из реестра. Для этого перейдите в Docker Hub. Здесь вы можете найти сотни образов Docker. Мы выгрузим образ Ubuntu. Вы можете просмотреть страницу каждого образа для более подробной информации.
Мы можем выгрузить образ с помощью команды:
Вы можете заменить сотнями названий образов, которые находятся в Docker Hub, например CentOS, MySQL , mariaDB, Python и другими.
Опция -q перечислит только числовые ID изображений, доступных в вашей системе.
-f — флаг фильтра. Если бы мы хотели перечислить все необособленные (dangling) образы – не помеченные или те, на которые не ссылается контейнер – мы бы использовали команду:
Теперь, когда мы знаем, как получить и найти образ для запуска Docker-контейнера, мы можем приступить к работе.
Далее мы видим, как запустить образ. Запустив образ, мы фактически создаём контейнер из этого образа. Давайте запустим наш образ Ubuntu. Чтобы запустить Docker-контейнер, используйте команду:
Мы запустим образ Ubuntu. Так что команда будет выглядеть так:
Контейнер создан, но не запущен.
Для запуска контейнера мы используем команду:
Здесь -name MyContainer – это просто то, как мы хотим назвать запущенный процесс, а -it ubuntu bash – имя контейнера, который мы запускаем.
Теперь мы можем открыть другое окно терминала, зайти на сервер по SSH и выполнить команду:
Откройте другой терминал, чтобы выполнить следующую команду.
Теперь мы видим, что контейнер с именем MyContainer запущен.
Чтобы остановить контейнер, выполните команду:
Если мы хотим увидеть верхний процесс контейнера, мы можем запустить команду:
Это будет выглядеть следующим образом:
Чтобы увидеть статистику контейнера, например загрузку ЦП, использование памяти и другое:
Наконец, если мы хотим уничтожить контейнер Docker:
Вот и всё, что нужно сделать. Теперь вы готовы запустить Docker-контейнер и использовать его!
Подводим Итоги
Docker – невероятно полезный инструмент для любого разработчика. Возможность бесшовного тестирования, развёртывания и разработки приложений – это удобство, способное экспоненциально ускорить рабочий процесс. В этом руководстве мы покажем, как запустить Docker-контейнер, а также некоторые другие команды, которые наверняка пригодятся.
Чтобы узнать больше, мы советуем ознакомиться с другими нашими руководствами или официальной документацией Docker !
Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.
Источник
Команда запуска Docker с примерами
Docker — это платформа, которая позволяет разрабатывать, тестировать и развертывать приложения в виде переносимых самодостаточных контейнеров, которые работают практически где угодно.
Команда docker run создает контейнер из заданного образа и запускает контейнер с помощью заданной команды. Это одна из первых команд, с которой вам следует ознакомиться, когда вы начнете работать с Docker.
В этой статье мы будем использовать официальный образ Nginx, чтобы показать различные способы запуска контейнера Docker.
Команда запуска Docker
Команда docker run имеет следующий вид:
Имя образа, из которого должен быть создан контейнер, является единственным обязательным аргументом для команды docker run . Если образ отсутствует в локальной системе, он извлекается из реестра.
Если команда не указана, команда, указанная в инструкциях CMD или ENTRYPOINT выполняется при запуске контейнера.
Начиная с версии 1.13, интерфейс командной строки Docker был реструктурирован. Все команды сгруппированы по объекту, с которым они взаимодействуют.
Поскольку команда run взаимодействует с контейнерами, это подкоманда docker container . Синтаксис новой команды следующий:
Старый синтаксис до 1.13 все еще поддерживается. Под капотом команда docker run — это псевдоним для docker container run . Пользователям рекомендуется использовать новый синтаксис команд.
Список всех параметров docker container run Docker можно найти на странице документации Docker .
Запустите контейнер на переднем плане
По умолчанию, если для команды docker run опция, корневой процесс запускается на переднем плане. Это означает, что стандартный ввод, вывод и ошибка корневого процесса присоединяются к сеансу терминала.
Вывод процесса nginx будет отображаться на вашем терминале. Поскольку нет подключений к веб-серверу, терминал пуст.
Чтобы остановить контейнер, завершите запущенный процесс Nginx, нажав CTRL+C
Запустите контейнер в автономном режиме
Чтобы контейнер продолжал работать при выходе из сеанса терминала, запустите его в автономном режиме. Это похоже на запуск процесса Linux в фоновом режиме .
Используйте параметр -d чтобы запустить отдельный контейнер:
Отсоединенный контейнер остановится после завершения корневого процесса.
Вы можете перечислить запущенные контейнеры с помощью команды docker container ls .
Чтобы прикрепить терминал к корневому процессу отсоединенного контейнера, используйте команду docker container attach .
Удалите контейнер после выхода
По умолчанию, когда контейнер закрывается, его файловая система сохраняется в хост-системе.
Параметры —rm команде docker run удалить контейнер при автоматическом выходе:
Образ Nginx может быть не лучшим примером для очистки файловой системы контейнера после выхода из контейнера. Этот параметр обычно используется в контейнерах переднего плана, которые выполняют краткосрочные задачи, такие как тесты или резервное копирование базы данных.
Задайте имя контейнера
В Docker каждый контейнер идентифицируется своим UUID и именем. По умолчанию, если это не указано явно, имя контейнера автоматически генерируется демоном Docker.
Используйте параметр —name чтобы присвоить контейнеру собственное имя:
Имя контейнера должно быть уникальным. Если вы попытаетесь запустить другой контейнер с тем же именем, вы получите ошибку, подобную этой:
Запустите docker container ls -a чтобы docker container ls -a список всех контейнеров и увидеть их имена:
Значимые имена полезны для ссылки на контейнер в сети Docker или при выполнении команд CLI Docker.
Публикация контейнерных портов
По умолчанию, если порты не опубликованы, процесс, запущенный в контейнере, доступен только изнутри контейнера.
Публикация портов означает сопоставление портов контейнера с портами хост-компьютера, чтобы порты были доступны службам за пределами Docker.
Для публикации порта используйте следующие параметры -p :
- Если host_ip не указан, по умолчанию используется 0.0.0.0 .
- Если protocol не указан, по умолчанию используется TCP.
- Чтобы опубликовать несколько портов, используйте несколько параметров -p .
Чтобы сопоставить TCP-порт 80 (nginx) в контейнере с портом 8080 на интерфейсе localhost хоста, вы должны запустить:
Вы можете убедиться, что порт опубликован, открыв http://localhost:8080 в браузере или выполнив следующую команду curl на хосте Docker:
Результат будет выглядеть примерно так:
Совместное использование данных (монтаж томов)
Когда контейнер остановлен, все данные, созданные контейнером, удаляются. Docker Volumes — это предпочтительный способ сохранить данные и совместно использовать их в нескольких контейнерах.
Для создания томов и управления ими используйте следующие параметры -p :
- host_src может быть абсолютным путем к файлу или каталогу на хосте или именованному тому.
- container_dest — это абсолютный путь к файлу или каталогу в контейнере.
- Возможные варианты: rw (чтение-запись) и ro (только чтение). Если параметр не указан, по умолчанию используется rw .
Чтобы объяснить, как это работает, давайте создадим каталог на хосте и поместим в него файл index.html :
Затем смонтируйте каталог public_html в /usr/share/nginx/html в контейнере:
Вместо указания абсолютного пути к каталогу public_html мы используем команду $(pwd) , которая печатает текущий рабочий каталог .
Теперь, если вы введете http://localhost:8080 в своем браузере, вы должны увидеть содержимое файла index.html . Вы также можете использовать curl :
Интерактивный запуск контейнера
При работе с интерактивными процессами, такими как bash , используйте параметры -i и -t для запуска контейнера.
Параметр -it сообщает Docker, что стандартный ввод должен быть подключен к терминалу, и назначен псевдо-tty:
Оболочка Bash контейнера будет прикреплена к терминалу, и командная строка изменится:
Теперь вы можете взаимодействовать с оболочкой контейнера и запускать внутри нее любую команду.
В этом примере мы предоставили команду ( /bin/bash ) в качестве аргумента для команды docker run которая была выполнена вместо той, которая указана в файле Dockerfile.
Выводы
Docker — это стандарт упаковки и развертывания приложений, а также важный компонент CI / CD, автоматизации и DevOps.
Команда docker container run используется для создания и запуска контейнеров Docker.
Если у вас есть вопросы, оставьте комментарий ниже.
Источник
Как установить Docker и запустить Docker контейнеры в Ubuntu
Docker – это общедоступная и популярная технология виртуализации на уровне операционной системы (обычно называемая «контейнеризацией»), которая в основном работает на Linux и Windows.
Docker упрощает создание, развертывание и запуск приложений с использованием контейнеров.
С помощью контейнеров разработчики (и системные администраторы) могут упаковать приложение со всем необходимым для его запуска – кодом, средой выполнения, библиотеками, переменными среды и файлами конфигурации и отправить все это в виде одного пакета.
Да, это так здорово!
В этой статье мы покажем вам, как установить Docker CE (Community Edition), создать и запустить контейнеры Docker в дистрибутиве Ubuntu.
Установка Docker CE (Community Edition) в Ubuntu
1. Чтобы установить Docker CE, сначала необходимо удалить более старые версии Docker, называемые docker, docker.io или docker-engine, из системы с помощью следующей команды:
2. Затем вам нужно настроить репозиторий Docker для установки и обновления Docker из репозитория с помощью следующих команд.
3. Обновите индекс пакетов через apt и установите последнюю версию Docker CE, используя следующие команды.
4. После успешной установки пакета Docker CE служба должна быть автоматически запущена и автоматически включена на запуск при загрузке системы.
Вы можете проверить его состояние с помощью следующей команды.
5. Наконец, убедитесь, что Docker CE установлен правильно, запустив образ hello-world.
Изучите основные команды Docker в Ubuntu
6. Чтобы получить информацию о Docker, выполните следующую команду.
7. Чтобы получить информацию о версии Docker, выполните следующую команду.
8. Чтобы получить список всех доступных команд Docker, запустите Docker на своем терминале.
Загрузите образ Docker в Ubuntu
9. Для запуска контейнера Docker сначала необходимо загрузить образ из Docker Hub – предоставляет бесплатные образа из его репозиториев.
Например, чтобы загрузить образ Docker с именем CentOS 7, введите следующую команду.
10. После того, как вы определили, какой образ вы хотите запустить в соответствии с вашими требованиями, загрузите его локально, выполнив следующую команду (в этом случае загружается и используется образ CentOS).
11. Чтобы просмотреть список всех доступных образов Docker на вашем хосте, выполните следующую команду.
12. Если вам больше не нужен образ Docker, и вы можете удалить его, используя следующую команду.
Запустите Docker-контейнер в Ubuntu
13. Чтобы создать и запустить контейнер Docker, сначала необходимо запустить команду в загруженном образе CentOS, поэтому основной командой будет проверка файла версии распространения внутри контейнера с помощью команды cat, как показано.
14. Чтобы снова запустить контейнеры, сначала вам нужно получить идентификатор или имя контейнера, выполнив следующую команду, которая отобразит список запущенных и остановленных контейнеров:
15. После получения идентификатора или имени контейнера вы можете запустить контейнер с помощью следующей команды:
Здесь строка 0ddfa81c5779 представляет идентификатор контейнера, аastic_shirley представляет имя контейнера.
16. Чтобы остановить запущенный контейнер, запустите команду docker stop, указав идентификатор контейнера или имя.
17. Более лучший способ, чтобы вам не нужно было запоминать идентификатор контейнера, – это определить уникальное имя для каждого контейнера, который вы создаете, используя опцию –name, как показано.
18. Чтобы подключить и запустить команды Linux в контейнере, введите следующую команду.
19. Чтобы выйти и вернуться к хосту из сеанса работающего контейнера, вы должны ввести команду exit, как показано ниже
Это все для основных манипуляций с контейнерами.
Если у вас есть какие-либо вопросы или комментарии по поводу этой статьи, используйте форму обратной связи ниже, чтобы связаться с нами.
Источник