Библиотека сайта rus-linux.net
Как запустить контейнеры Docker в CentOS или в Fedora
Оригинал: How to run Docker containers on CentOS or FedoraАвтор: Dan Nanni
Дата публикации: May 8, 2014
Перевод: Н.Ромоданов
Дата перевода: январь 2015 г.
В последнее время Docker стал ключевой технологией для развертывания приложений в облачной среде. По сравнению с традиционной аппаратной виртуализации, контейнерная песочница Docker в качестве среды развертывания приложений дает ряд преимуществ, таких как более легковесная изоляция, мобильность развертывания, простота в обслуживании, и т.д. В настоящее время усилия разработчиков по рационализации управления и развертывания контейнеров Docker направляет компания Red Hat.
Docker также может быть очень полезен пользователям не только в облачной среде, но и в частности, если нужно протестировать конкретное программное обеспечение в конкретной среде Linux. Вы можете легко развернуть контейнер Docker для целевой среды, установить и протестировать в нем программное обеспечение, а затем уничтожить контейнер когда вы в нем все сделаете. Весь процесс от начала и до конца является достаточно эффективным, и, в общем, вы ничего не сможете испортить в вашей системе.
В этом руководстве я собираюсь рассказать о том, как создавать и управлять контейнерами Docker в системах CentOS и Fedora. Обратите внимание, что в настоящее время Docker поддерживается только для 64-разрядных хост-систем. Если вы хотите попробовать Docker на Ubuntu, то обратитесь к этому руководству.
Устанавливаем Docker на CentOS или Fedora
Чтобы установить Docker на CentOS, сначала подключите репозиторий EPEL, а затем используйте команду yum
:
$ sudo yum install docker-io $ sudo service docker start $ sudo chkconfig docker on
Чтобы установить Docker в Fedora, используйте следующие команды:
$ sudo yum install docker-io $ sudo systemctl start docker.service $ sudo systemctl enable docker.service
После установки Docker на CentOS или в Fedora, вам следует добавить пользователя, под которым вы работаете, в группу docker
, с тем чтобы иметь возможность запускать Docker в роли непривилегированного пользователя. Для этого используйте следующую команду:
$ sudo usermod -a -G docker $USER
Для того, чтобы активировать изменение в группе, выйдите из системы, а затем снова в нее войдите.
Теперь у вас должна быть возможность выполнять команду docker
в роли непривилегированного пользователя.
Базовое использование Docker
Чтобы запустить новый контейнер Docker, вам необходимо решить, какой образ Docker должен использоваться в качестве контейнера. Вы можете поискать его в официальном списке образов Docker, в котором перечисляются общедоступные образы Docker. В списке образов Docker есть базовые образы Linux, которые поддерживаются командой разработчиков Docker (например, Ubuntu, Debian, Fedora, CentOS), а также специальные образы, которые распространяются пользователями (например, MySQL, Redis, WordPress).
Например, для того, чтобы в интерактивном режиме запустить контейнер Ubuntu, выполните следующую команду. Последний аргумент '/bin/bash' должен использован внутри контейнера после его запуска.
$ docker run -i -t ubuntu /bin/bash
Когда вы запустите эту команду первый раз, она, возможно, скачает из сети образ Ubuntu Docker, а затем загрузит контейнер Docker, используя этот образ. Контейнер Ubuntu загрузится мгновенно, и вы внутри контейнера увидите консольное приглашение. Внутри контейнера песочнице вы получаете доступ к полноценной операционной системе Ubuntu.
Если в командной строке вы введете 'exit', то выйдите из контейнера и он будет остановлен.
Чтобы получить список всех контейнеров (в том числе и остановленных), выполните следующую команду:
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 6a08a0b2bb4c ubuntu:14.04 /bin/bash About a minute ago Exit 0 cocky_ritchie
Чтобы при работающем демоне заново запустить остановленный контейнер:
$ docker start [идентификатор_контейнера]
Чтобы удалить остановленный контейнер:
$ docker rm [идентификатор_контейнера]
Чтобы подключиться к контейнеру, работающему в фоновом режиме, для того, чтобы посмотреть, что с ним, или его использовать:
$ docker attach [идентификатор_контейнера]
Вы можете достаточно просто настроить работающий контейнер (например, установить новые программы). Если вы хотите сохранить изменения в текущем контейнере, то вам сначала нужно выйти из интерактивного режима контейнера, набрав в командной строке команду "exit". А затем сохранить измененный образ как еще один образ, использовав для этого следующую команду:
$ docker commit [идентификатор_контейнера] [новое_имя_образа]
Чтобы узнать идентификатор вашего контейнера, вы можете воспользоваться командой "docker ps -a" так, как это было описано выше.
После того, как вы создали новый образ, вы можете запустить новый контейнер с этим образом.
Вы также можете скачать любые общедоступные образы контейнеров (например, ubuntu, bowery/mysql) и сохранить их в локальном репозитории следующим образом.
$ docker pull [имя_образа]
Чтобы посмотреть список всех локально загруженных/сохраненных образов контейнеров:
$ docker images
Вы можете выбрать конкретный образ, который будет загружен из контейнера:
$ docker run -i -t [идентификатор_образа] /bin/bash
Чтобы удалить образ контейнера из локального репозитория:
$ docker rmi [идентификатор_образа]