Docker (Русский)
Docker — это утилита для упаковки, загрузки и запуска любых приложений через легковесный контейнер.
Contents
Установка
Установите docker, доступный в официальных репозиториях. Для i686 установите docker-gitAUR из AUR. Затем включите и запустите службу docker.service и проверьте ее работу:
# docker info
Если необходимо запускать docker от обычного пользователя, добавьте его в группу docker и перелогиньтесь:
# gpasswd -a user docker
Настройка
Отредактируйте /etc/systemd/system/docker.service, где http_proxy — ваш прокси сервер, -g <path> — директория docker (по умолчанию /var/cache/docker).
[Service] Environment="http_proxy=192.168.1.1:3128" ExecStart= ExecStart=/usr/bin/docker -d -g /var/yourDockerDir
По умолчанию, демон docker принимает запросы на доменном сокете Unix. Если вы хотите, чтобы запросы принимались на сетевом порту, отредактируйте /etc/systemd/system/docker.socket, где ListenStream — сетевой адрес сокета:
[Socket] ListenStream=0.0.0.0:2375
Docker 0.9.0 — 1.2.x и LXC
Начиная с версии 0.9.0, Docker предоставляет новый способ запуска контейнеров без необходимости в LXC, называемый libcontainer.
LXC может быть удален в ближайшем будущем, однако таким образом вы не сможете использовать lxc-attach с контейнерами, управляемыми Docker 0.9.0+ по умолчанию (запрос 5797). Для этого потребуется запускать службу Docker с параметром -e lxc.
Вы можете создать файл с именем lxc.conf в /etc/systemd/system/docker.service.d/ со следующим содержимым:
[Service] ExecStart= ExecStart=/usr/bin/docker -d -e lxc
Skype
Смотрите Skype#Docker[broken link: invalid section].
Сборка образа i686
Для архитектуры i686, мы не можем использовать образ x86_64, полученный с помощью следующей команды:
# docker pull base/archlinux
Образ ArchLinux
Вместо этого, посетите реестр base/archlinux и перейдите по ссылке mkimage-arch.sh для скачивания mkimage-arch.sh и mkimage-arch-pacman.conf. Затем сделайте скрипт исполняемым:
$ chmod +x mkimage-arch.sh
и выполните следущее:
# LC_ALL=C ./mkimage-arch.sh # LC_ALL=C потому что скрипт парсит вывод консоли
Скрипт проверит наличие необходимых утилит. В случае их отсутствия будет предложено их установить.
$ docker run -t -i --rm archlinux /bin/bash # для запуска
Для медленных сетевых подключений и/или на слабых машинах можно увеличить тайм-аут сборки:
$ sed -i 's/timeout 60/timeout 120/' mkimage-arch.sh
Образ Debian
Собрать образ Debian можно с помощью debootstrap из AUR:
$ mkdir wheezy-chroot # debootstrap wheezy ./wheezy-chroot http://http.debian.net/debian/ $ cd wheezy-chroot # tar cpf - . | docker import - debian $ docker run -t -i --rm debian /bin/bash