Docker
Docker
Инструкция по работе с docker.
Установка
Установить docker можно следующей командой:
# apt-get install docker-engine
В старых репозиториях пакет называется docker-ce:
# apt-get install docker-ce
Для запуска docker от пользователя (не root) следует выполнить несколько шагов:
-
Добавить пользователя в группу
docker
;# usermod ИМЯ_ПОЛЬЗОВАТЕЛЯ -aG docker
- Выполнить повторный вход в систему.
Затем необходимо запустить соответствующую службу:
# systemctl enable --now docker
Запуск и готовые образы
В зависимости от действий на этапе установки команды можно будет запускать от обычного пользователя или от root
.
Официальный образ
Официальный образ ALT можно получить по ссылке: https://hub.docker.com/_/alt/. Для запуска контейнера достаточно выполнить следующую команду:
docker run --rm -it alt
По умолчанию используется образ из тега latest
, который указывает на последний стабильный бранч. Например, сейчас это p10.
Для использования образа sisyphus нужно указать соответствующий тег:
docker run --rm -it alt:sisyphus
Официальный образ доступен для следующих архитектур:
- amd64
- arm64v8
- i386
- ppc64le
Производные образы
По адресу https://hub.docker.com/u/altcloud/ находятся специализированные образы под конкретные задачи, построенные на основе официального образа. Сборка этих образов осуществляется из Dockerfile'ов по адресу https://github.com/alt-cloud/ALT-Dockerfiles/tree/sisyphus.
Существуют образы для следующих задач:
- веб серверы
nginx
иapache2
; - хранение конфигурации
etcd
; - интерпретаторы для запуска своих приложений
python
иruby
; - и другие.
Сборка базового образа с использование mkimage-profiles
Rootfs для официального образа собирается из профиля ve/docker. Собрать его можно следующей командой.
$ make ve/docker.tar.xz
Полученный rootfs нужно собрать, чтобы получить образ. Для этого нужно создать каталог, скопировать в него rootfs и создать Dockerfile со следующим содержимым:
FROM scratch ADD docker-latest.tar.xz / RUN true > /etc/security/limits.d/50-defaults.conf # overwrite this with 'CMD []' in a dependent Dockerfile CMD ["/bin/bash"]
Затем можно собрать образ:
$ docker build --rm --tag=my-image .
Где my-image - это имя образа.