16 808
правок
(→Установка: очепятка) |
|||
(не показано 13 промежуточных версий 4 участников) | |||
Строка 2: | Строка 2: | ||
== Описание == | == Описание == | ||
[https://docker.com Docker] — программное обеспечение для запуска приложений в изолированной среде. С его помощью можно упаковать приложение со всем его окружением и зависимостями в контейнер и потом развернуть его на любой ОС Linux. Такой подход позволяет избежать конфликта используемых приложением библиотек с установленными в основной системе. | [https://docker.com Docker] — программное обеспечение для запуска приложений в изолированной среде. С его помощью можно упаковать приложение со всем его окружением и зависимостями в контейнер и потом развернуть его на любой ОС Linux. Такой подход позволяет избежать конфликта используемых приложением библиотек с установленными в основной системе. | ||
В новых релизах на базе Debian «bullseye» (wb-2304 и новее) места в корневом разделе стало меньше и докер больше поставить нельзя, решения: | |||
# Остаться на wb-2207 — докер будет без проблем работать на Wiren Board 6 и 7. | |||
# Расширить корневой раздел до 2 Гбайт по [[Enlarging_the_rootfs_partition|инструкции]]. | |||
С помощью docker-контейнеров распространяется много открытого ПО, например, [[Home Assistant]] и [https://www.openhab.org/ openHAB]. | С помощью docker-контейнеров распространяется много открытого ПО, например, [[Home Assistant]] и [https://www.openhab.org/ openHAB]. | ||
Строка 26: | Строка 30: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg | curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg | ||
</syntaxhighlight> | |||
Docker пока не поддерживает nftables, который заменил iptables в новом bullseye — поэтому, '''если у вас релиз [[wb-2304]] и новее''', надо выполнить по очереди: | |||
:<syntaxhighlight lang="bash"> | |||
apt install -y iptables | |||
update-alternatives --set iptables /usr/sbin/iptables-legacy | |||
update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 51: | Строка 62: | ||
#:<syntaxhighlight lang="js"> | #:<syntaxhighlight lang="js"> | ||
{ | { | ||
"data-root": "/mnt/data/.docker" | "data-root": "/mnt/data/.docker", | ||
"log-driver": "json-file", | |||
"log-opts": { | |||
"max-size": "10m", | |||
"max-file": "3" | |||
} | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
# Сохраните и закройте файл: <kbd>Ctrl</kbd>+<kbd> | # Сохраните и закройте файл: <kbd>Ctrl</kbd>+<kbd>S</kbd> и <kbd>Ctrl</kbd>+<kbd>X</kbd>. | ||
В параметре ''log-opts'' задаются ограничения на журналы контейнеров, [https://docs.docker.com/config/containers/logging/configure/ подробнее]. | |||
== Установка == | == Установка == | ||
После того, как мы указали, где будут | После того, как мы указали, где будут храниться контейнеры, устанавливаем сам docker: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
apt update && apt install docker-ce docker-ce-cli containerd.io | apt update && apt install docker-ce docker-ce-cli containerd.io | ||
Строка 67: | Строка 85: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Если в консоли появилась надпись <code>Hello from Docker!</code>, docker установлен и работает. | Если в консоли появилась надпись <code>Hello from Docker!</code>, docker установлен и работает. | ||
Иногда требуется перезагрузка командой: <syntaxhighlight lang="bash">reboot</syntaxhighlight> затем повторить проверку. | |||
== Полезные команды == | == Полезные команды == |