Wiki source code of Подготовка среды контейнеризации
Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
1.1 | 1 | В данном разделе приведены сведения по подготовке операционной системы к установке контейнеризированной Платформы НЕЙРОСС. |
| 2 | |||
| 3 | {{info}} | ||
| 4 | Вы можете использовать имеющийся готовый сервер, в том числе с другими контейнерами приложений. Для вашего удобства подготовлена базовая инструкция установки ОС Ubuntu Server ~[[[doc:neyross.Установка Платформы НЕЙРОСС.Установка с НЕЙРОСС Старт.Установка ОС Ubuntu Server 22\.04 LTS.WebHome]]]. | ||
| 5 | {{/info}} | ||
| 6 | |||
| 7 | \\ | ||
| 8 | |||
| 9 | == {{id name="Подготовкасредыконтейнеризации-Общиесведения"/}}Общие сведения == | ||
| 10 | |||
| 11 | Для работы Платформы НЕЙРОСС в контейнеризированной модели требуются предварительная установка (% style="color: rgb(51,51,51);" %)Docker — платформы для разработки, развёртывания и запуска приложений в контейнерах, а также Docker Compose — инструмента оркестрации докер-контейнеров (запуска нескольких Докер-сервисов как единого изолированного приложения). | ||
| 12 | |||
| 13 | {{info title="Рекомендуемые версии Docker и Compose"}} | ||
| 14 | Docker: 23.0.4 или выше | ||
| 15 | Docker Compose: v2.20.3 или выше | ||
| 16 | {{/info}} | ||
| 17 | |||
| 18 | {{info}} | ||
| 19 | Также в рамках скрипта устанавливается Cockpit для упрощения монтирования накопителей и выполнения прочих действий по администрированию сервера. | ||
| 20 | {{/info}} | ||
| 21 | |||
| 22 | \\ | ||
| 23 | |||
| 24 | == {{id name="Подготовкасредыконтейнеризации-Установканеобходимогоокружения"/}}Установка необходимого окружения == | ||
| 25 | |||
| 26 | Вы можете установить Docker и Docker Compose требуемых версий самостоятельно, а также использовать уже имеющийся сервер с установленными приложениями. Для вашего удобства специалисты компании ИТРИУМ подготовили скрипт автоматической установки требуемых компонентов. | ||
| 27 | |||
| 28 | {{error}} | ||
| 29 | **ВАЖНО** | ||
| 30 | |||
| 31 | Для работы скрипта требуется доступ в интернет, так как в коде «зашиты» ссылки на дистрибутивы из публичных репозиториев. Рекомендуется выполнять первичную настройку сервера при наличии доступа в интернет. При невозможности подключения к сети рекомендуем изменить пути загрузки пакетов на локальные или самостоятельно выполнить установку требуемых пакетов. | ||
| 32 | {{/error}} | ||
| 33 | |||
| 34 | \\ | ||
| 35 | |||
| 36 | Скрипт поддерживает следующие семейства операционных систем: | ||
| 37 | |||
| 38 | 1. Ubuntu, Debian | ||
| 39 | 1. AstraLinux | ||
| 40 | 1. RHEL (CentOS, RedHat, Fedora) | ||
| 41 | |||
| 42 | {{info}} | ||
| 43 | Даже в рамках одного семейства ОС на различных версиях инсталляция может выполняться немного по-разному. Код скрипта оптимизирован для целевых версий ОС: | ||
| 44 | |||
| 45 | * (% style="color: rgb(47, 52, 61); color: rgb(47, 52, 61)" %)Ubuntu Server 20.04 LTS, (%%)Ubuntu Server 22.04 LTS | ||
| 46 | * (% style="color: rgb(47,52,61);" %)Astra Linux Special Edition 1.7, 1.8 | ||
| 47 | {{/info}} | ||
| 48 | |||
| 49 | Вам потребуется: | ||
| 50 | |||
| 51 | 1. Сформировать файл скрипта и поместить его на целевой сервер. | ||
| 52 | 1. Запустить скрипт на выполнение. | ||
| 53 | |||
| 54 | == {{id name="Подготовкасредыконтейнеризации-Созданиефайласкрипта"/}}Создание файла скрипта == | ||
| 55 | |||
| 56 | {{info}} | ||
| 57 | Вы можете запросить готовый файл скрипта у специалистов компании ИТРИУМ. Также вы можете сформировать его самостоятельно по инструкции ниже. | ||
| 58 | {{/info}} | ||
| 59 | |||
| 60 | \\ | ||
| 61 | |||
| 62 | Скопируйте код ниже и сохраните в файл формата SH, например {{code language="none"}}prepare-os-docker.sh{{/code}}. | ||
| 63 | |||
| |
3.1 | 64 | {{code language="java"}} |
| |
1.1 | 65 | #!/bin/bash |
| 66 | set -e | ||
| 67 | |||
| 68 | # debian packages | ||
| 69 | add_docker_debian_apt_repo() { | ||
| 70 | # for ubuntu or debian adding actual repo based on os-release | ||
| 71 | # for astra adding fixed repo for debian buster | ||
| 72 | . /etc/os-release | ||
| 73 | lsb_dist="" | ||
| 74 | lsb_version="" | ||
| 75 | case $ID in | ||
| 76 | "debian" | "ubuntu") | ||
| 77 | lsb_dist="$ID" | ||
| 78 | lsb_version=$(lsb_release -cs) | ||
| 79 | ;; | ||
| 80 | "astra") | ||
| 81 | lsb_dist="debian" | ||
| 82 | lsb_version="buster" | ||
| 83 | ;; | ||
| 84 | *) | ||
| 85 | # this should not be the case | ||
| 86 | exit 1 | ||
| 87 | ;; | ||
| 88 | esac | ||
| 89 | DOCKER_APT_REPO="deb [arch=amd64] https://download.docker.com/linux/$lsb_dist $lsb_version stable" | ||
| 90 | echo "[docker] adding repo $DOCKER_APT_REPO to /etc/apt/sources.list" | ||
| 91 | |||
| 92 | COMMENT_TEXT="repo to install docker appended by neyross-platform installer" | ||
| 93 | if [ $(grep -c "$COMMENT_TEXT" /etc/apt/sources.list) -eq 1 ] | ||
| 94 | then | ||
| 95 | echo "[docker] repo to install docker already added to sources.list by previous run of installer; do nothing" | ||
| 96 | else | ||
| 97 | echo "[docker] this is first run; adding repo to install docker..." | ||
| 98 | sudo tee -a /etc/apt/sources.list > /dev/null <<EOT | ||
| 99 | |||
| 100 | # $COMMENT_TEXT | ||
| 101 | |||
| 102 | # repo to install docker | ||
| 103 | $DOCKER_APT_REPO | ||
| 104 | EOT | ||
| 105 | fi | ||
| 106 | } | ||
| 107 | |||
| 108 | |||
| 109 | ensure_docker_debian() { | ||
| 110 | if command -v docker > /dev/null 2>&1; then | ||
| 111 | echo "[docker] already installed, do nothing" | ||
| 112 | else | ||
| 113 | # standart way with software-properties-common and apt-add-repository not working on Astra | ||
| 114 | echo "[docker] not installed, installing manually, updating apt..." | ||
| 115 | sudo apt update | ||
| 116 | echo "[docker] installing additional packages..." | ||
| 117 | sudo apt install -y apt-transport-https ca-certificates curl gnupg2 | ||
| 118 | echo "[docker] adding gpg key" | ||
| 119 | curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - | ||
| 120 | echo "[docker] adding docker apt repo..." | ||
| 121 | add_docker_debian_apt_repo | ||
| 122 | echo "[docker] running update..." | ||
| 123 | sudo apt update | ||
| 124 | echo "[docker] installing docker-ce..." | ||
| 125 | sudo apt install -y docker-ce | ||
| 126 | echo "[docker] done; starting and enabling docker service" | ||
| 127 | sudo systemctl start docker | ||
| 128 | sudo systemctl enable docker | ||
| 129 | fi | ||
| 130 | docker -v | ||
| 131 | docker compose version | ||
| 132 | } | ||
| 133 | |||
| 134 | ensure_cockpit_debian() { | ||
| 135 | if command -v cockpit-bridge > /dev/null 2>&1; then | ||
| 136 | echo "[cockpit] already installed, do nothing" | ||
| 137 | else | ||
| 138 | echo "[cockpit] not found; installing it with plugins" | ||
| 139 | sudo apt update | ||
| 140 | sudo apt install -y cockpit cockpit-system cockpit-bridge | ||
| 141 | echo "[cockpit] done; preparing cockpit.conf" | ||
| 142 | COCKPIT_CONF_CONTENT=$(cat <<-END | ||
| 143 | |||
| 144 | [WebService] | ||
| 145 | AllowUnencrypted = true | ||
| 146 | END | ||
| 147 | ) | ||
| 148 | echo "$COCKPIT_CONF_CONTENT" > /etc/cockpit/cockpit.conf | ||
| 149 | sudo chgrp cockpit-ws /etc/cockpit/cockpit.conf | ||
| 150 | echo "[cockpit] done; enabling all network interfaces for cockpit JIC" | ||
| 151 | GLOBALLY_MANAGED_DEVICES_CONTENT=$(cat <<-END | ||
| 152 | [keyfile] | ||
| 153 | unmanaged-devices=none | ||
| 154 | END | ||
| 155 | ) | ||
| 156 | echo "$GLOBALLY_MANAGED_DEVICES_CONTENT" > /etc/NetworkManager/conf.d/10-globally-managed-devices.conf | ||
| 157 | sudo systemctl restart NetworkManager | ||
| 158 | echo "done; starting and enabling cockpit service" | ||
| 159 | sudo systemctl start cockpit | ||
| 160 | sudo systemctl enable cockpit | ||
| 161 | echo "[cockpit] done with cockpit" | ||
| 162 | fi | ||
| 163 | } | ||
| 164 | |||
| 165 | install_debian_packages() { | ||
| 166 | echo "installing ubuntu \ debian packages;" | ||
| 167 | ensure_docker_debian | ||
| 168 | ensure_cockpit_debian | ||
| 169 | } | ||
| 170 | |||
| 171 | # end debian packages | ||
| 172 | |||
| 173 | # astra packages | ||
| 174 | ensure_astra_repositories() { | ||
| 175 | COMMENT_TEXT="added by neyross-platform installer" | ||
| 176 | if [ $(grep -c "$COMMENT_TEXT" /etc/apt/sources.list) -eq 1 ] | ||
| 177 | then | ||
| 178 | echo "repos already added to sources.list by previous run of installer; do nothing" | ||
| 179 | else | ||
| 180 | echo "this is first run; adding repos for extended astra..." | ||
| 181 | sudo tee -a /etc/apt/sources.list > /dev/null <<EOT | ||
| 182 | # $COMMENT_TEXT | ||
| 183 | # all astra repos | ||
| 184 | deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free | ||
| 185 | deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-update/ 1.7_x86-64 main contrib non-free | ||
| 186 | deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-base/ 1.7_x86-64 main contrib non-free | ||
| 187 | deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free | ||
| 188 | deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 astra-ce backports | ||
| 189 | |||
| 190 | EOT | ||
| 191 | fi | ||
| 192 | } | ||
| 193 | |||
| 194 | install_astra_packages() { | ||
| 195 | echo "installing astra packages;" | ||
| 196 | ensure_astra_repositories | ||
| 197 | ensure_docker_debian | ||
| 198 | ensure_cockpit_debian | ||
| 199 | } | ||
| 200 | # end astra packages | ||
| 201 | |||
| 202 | # rhel packages | ||
| 203 | ensure_docker_rhel() { | ||
| 204 | if command -v docker > /dev/null 2>&1; then | ||
| 205 | echo "docker already installed, do nothing" | ||
| 206 | else | ||
| 207 | echo "docker not installed, using script from get.docker.com..." | ||
| 208 | curl -fsSL https://get.docker.com -o /tmp/install-docker.sh | ||
| 209 | sh /tmp/install-docker.sh | ||
| 210 | echo "done installing docker; starting and enabling systemd service..." | ||
| 211 | systemctl start docker | ||
| 212 | systemctl enable docker | ||
| 213 | echo "done with docker" | ||
| 214 | fi | ||
| 215 | docker -v | ||
| 216 | docker compose version | ||
| 217 | } | ||
| 218 | ensure_cockpit_rhel() { | ||
| 219 | if command -v cockpit-bridge > /dev/null 2>&1; then | ||
| 220 | echo "[cockpit] already installed, do nothing" | ||
| 221 | else | ||
| 222 | echo "[cockpit] not found; installing it with plugins" | ||
| 223 | sudo yum update | ||
| 224 | sudo yum install cockpit | ||
| 225 | echo "[cockpit] done; preparing cockpit.conf" | ||
| 226 | COCKPIT_CONF_CONTENT=$(cat <<-END | ||
| 227 | [WebService] | ||
| 228 | AllowUnencrypted = true | ||
| 229 | END | ||
| 230 | ) | ||
| 231 | echo "$COCKPIT_CONF_CONTENT" > /etc/cockpit/cockpit.conf | ||
| 232 | sudo chgrp cockpit-ws /etc/cockpit/cockpit.conf | ||
| 233 | echo "[cockpit] done; enabling all network interfaces for cockpit JIC" | ||
| 234 | GLOBALLY_MANAGED_DEVICES_CONTENT=$(cat <<-END | ||
| 235 | [keyfile] | ||
| 236 | unmanaged-devices=none | ||
| 237 | END | ||
| 238 | ) | ||
| 239 | echo "$GLOBALLY_MANAGED_DEVICES_CONTENT" > /etc/NetworkManager/conf.d/10-globally-managed-devices.conf | ||
| 240 | sudo systemctl restart NetworkManager | ||
| 241 | echo "done; starting and enabling cockpit service" | ||
| 242 | sudo systemctl enable --now cockpit.socket | ||
| 243 | sudo systemctl start cockpit | ||
| 244 | sudo systemctl enable cockpit | ||
| 245 | echo "done; enabling FW rules" | ||
| 246 | sudo firewall-cmd --permanent --add-service=cockpit | ||
| 247 | sudo firewall-cmd --reload | ||
| 248 | echo "[cockpit] done with cockpit" | ||
| 249 | fi | ||
| 250 | } | ||
| 251 | |||
| 252 | # NOT TESTED YET | ||
| 253 | install_rhel_packages() { | ||
| 254 | echo "installing RHEL packages" | ||
| 255 | ensure_docker_rhel | ||
| 256 | ensure_cockpit_rhel | ||
| 257 | } | ||
| 258 | # end rhel packages | ||
| 259 | |||
| 260 | check_docker_version() { | ||
| 261 | required_version="23.0.0" | ||
| 262 | |||
| 263 | if ! command -v docker &>/dev/null; then | ||
| 264 | echo "docker is not installed" >&2 | ||
| 265 | return | ||
| 266 | fi | ||
| 267 | |||
| 268 | current_version=$(docker --version | awk '{print $3}') | ||
| 269 | |||
| 270 | if [[ "$(printf '%s\n' "$required_version" "$current_version" | sort -V | head -n1)" != "$required_version" ]]; then | ||
| 271 | echo "the current version of Docker (${current_version}) is less than the required version (${required_version})." >&2 | ||
| 272 | exit 1 | ||
| 273 | fi | ||
| 274 | } | ||
| 275 | |||
| 276 | install_packages() { | ||
| 277 | if [ -f "/etc/os-release" ]; then | ||
| 278 | . /etc/os-release | ||
| 279 | echo "checking for docker availability" | ||
| 280 | check_docker_version | ||
| 281 | echo "installing system packages; OS ID is $ID, OS ID_LIKE is $ID_LIKE" | ||
| 282 | case $ID in | ||
| 283 | "debian" | "ubuntu") | ||
| 284 | install_debian_packages | ||
| 285 | ;; | ||
| 286 | "astra") | ||
| 287 | install_astra_packages | ||
| 288 | ;; | ||
| 289 | "centos" | "rhel" | "fedora") | ||
| 290 | install_rhel_packages | ||
| 291 | ;; | ||
| 292 | # Add cases for other distributions and call the appropriate installation functions | ||
| 293 | *) | ||
| 294 | echo "Unsupported distribution, please contact Itrium for support in adding your distribution. Please provide output of /etc/os-release and /etc/lsb_release" | ||
| 295 | exit 1 | ||
| 296 | ;; | ||
| 297 | esac | ||
| 298 | else | ||
| 299 | echo "Unsupported Linux distribution" | ||
| 300 | exit 1 | ||
| 301 | fi | ||
| 302 | } | ||
| 303 | |||
| 304 | # Make sure we are root or we sudo'd | ||
| 305 | [ $(id -u) != "0" ] && { echo "Error: You must be root to run this script"; exit 1; } | ||
| 306 | |||
| 307 | echo "Hello, this script prepares OS to Neyross Platform (installs docker and cockpit)" | ||
| 308 | install_packages | ||
| 309 | echo "done, ready to install neyross-platform-docker / neyross-start" | ||
| 310 | |||
| 311 | exit 0 | ||
| 312 | |||
| 313 | {{/code}} | ||
| 314 | |||
| 315 | {{error}} | ||
| 316 | **ВАЖНО** | ||
| 317 | |||
| 318 | При работе в ОС семейства Windows файл по умолчанию создаётся в кодировке Windows (CR LF), такой формат не распознаётся корректно в среде Linux, возникают ошибки запуска. Рекомендуем воспользоваться свободно распространяемым приложение Notepad++. | ||
| 319 | |||
| 320 | Порядок действий: | ||
| 321 | |||
| 322 | 1. Создать новый пустой файл. | ||
| 323 | 1. Вставить скопированный код скрипта. | ||
| 324 | 1. Выполнить команду **Правка** → **Формат конца строк** →** Преобразовать в Unix**. | ||
| 325 | 1. Выполнить команду **Файл** → **Сохранить как**. Задать имя файла латиницей. Указать тип файла: «Unix script file». | ||
| 326 | |||
| 327 | (% style="color: rgb(23,43,77);" %)Вы также можете обратиться к специалистам компании ИТРИУМ, мы вышлем подготовленный файл. | ||
| 328 | {{/error}} | ||
| 329 | |||
| 330 | \\ | ||
| 331 | |||
| 332 | Поместите данный файл на целевой сервер (например, в директорию {{code language="none"}}$HOME{{/code}}). | ||
| 333 | |||
| 334 | **СОВЕТ**: для загрузки файла по сети с Windows-машины, вы можете воспользоваться свободно-распространяемым клиентом удалённого доступа [[Putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html||shape="rect"]], например, — SCP-к(% style="color: rgb(34,34,34);" %)лиентом с интерфейсом командной строки pscp.exe. | ||
| 335 | |||
| 336 | {{expand title="Как использовать pscp.exe..."}} | ||
| 337 | Поместите файл pscp.exe из дистрибутива Putty (% style="color: rgb(34,34,34);" %)в папку со скриптом инсталляции и из интерфейса командной строки ОС Windows выполните:\\ | ||
| 338 | |||
| |
3.1 | 339 | {{code language="java"}} |
| |
1.1 | 340 | pscp.exe prepare-os-docker.sh user@10.1.29.38:/home/user/ |
| 341 | {{/code}} | ||
| 342 | |||
| 343 | (% style="color: rgb(34,34,34);" %)Где: | ||
| 344 | |||
| 345 | * (% style="color: rgb(34,34,34);" %){{code language="none"}}prepare-os-docker.sh {{/code}}— скрипт подготовки ОС; | ||
| 346 | * (% style="color: rgb(34,34,34);" %){{code language="none"}}user{{/code}} — имя суперпользователя в ОС; | ||
| 347 | * (% style="color: rgb(34,34,34);" %){{code language="none"}}10.1.29.38{{/code}} — IP-адрес сервера; | ||
| 348 | * (% style="color: rgb(34,34,34);" %){{code language="none"}}/home/user/{{/code}} — путь к целевой папке. | ||
| 349 | |||
| 350 | {{info}} | ||
| 351 | **ПОДСКАЗКА** | ||
| 352 | |||
| 353 | Выберите **Пуск** > **Выполнить**. Введите {{code language="none"}}cmd{{/code}}. Нажмите **Enter**. Перейдите в папку со скриптом {{code language="none"}}cd [путь к папке]{{/code}}. Выполните команду выше. | ||
| 354 | {{/info}} | ||
| 355 | {{/expand}} | ||
| 356 | |||
| 357 | == {{id name="Подготовкасредыконтейнеризации-Запускскрипта"/}}Запуск скрипта == | ||
| 358 | |||
| 359 | (% style="letter-spacing: 0.0px;" %)В терминале ОС целевого сервера в директории с файлом (% style="color: rgb(34,34,34);letter-spacing: 0.0px;" %){{code language="none"}}prepare-os-docker.sh{{/code}}(% style="letter-spacing: 0.0px;" %) выполните: | ||
| 360 | |||
| 361 | {{code language="bash"}} | ||
| 362 | sudo bash prepare-os-docker.sh | ||
| 363 | {{/code}} | ||
| 364 | |||
| 365 | где, prepare-os-docker{{code language="none"}}.sh{{/code}} — название файла скрипта. | ||
| 366 | |||
| 367 | == {{id name="Подготовкасредыконтейнеризации-Работаскрипта"/}}Работа скрипта == | ||
| 368 | |||
| 369 | Ниже приведён алгоритм работы и пример вывода скрипта. | ||
| 370 | |||
| 371 | 1. ((( | ||
| 372 | Выполняется обновление ОC, установка и запуск Docker и Docker Compose. | ||
| 373 | |||
| 374 | {{info}} | ||
| 375 | Выбор репозиториев для установки пакетов зависит от семейства ОС, которое определяется чтением файла {{code language="none"}}/etc/os-release{{/code}}. Ниже приведён пример для ОС Ubuntu Server 20.04 LTS. | ||
| 376 | {{/info}} | ||
| 377 | |||
| |
3.1 | 378 | {{code language="java"}} |
| |
1.1 | 379 | Hello, this script prepares OS to Neyross Platform (installs docker and cockpit) |
| 380 | checking for docker availability | ||
| 381 | docker is not installed | ||
| 382 | installing system packages; OS ID is ubuntu, OS ID_LIKE is debian | ||
| 383 | installing ubuntu \ debian packages; | ||
| 384 | [docker] not installed, installing manually, updating apt... | ||
| 385 | Hit:1 http://ru.archive.ubuntu.com/ubuntu focal InRelease | ||
| 386 | Hit:2 http://ru.archive.ubuntu.com/ubuntu focal-updates InRelease | ||
| 387 | Hit:3 http://ru.archive.ubuntu.com/ubuntu focal-backports InRelease | ||
| 388 | Hit:4 http://ru.archive.ubuntu.com/ubuntu focal-security InRelease | ||
| 389 | Reading package lists... Done | ||
| 390 | Building dependency tree | ||
| 391 | Reading state information... Done | ||
| 392 | 68 packages can be upgraded. Run 'apt list --upgradable' to see them. | ||
| 393 | [docker] installing additional packages... | ||
| 394 | Reading package lists... Done | ||
| 395 | ... | ||
| 396 | [docker] adding docker apt repo... | ||
| 397 | [docker] adding repo deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable to /etc/apt/sources.list | ||
| 398 | [docker] this is first run; adding repo to install docker... | ||
| 399 | [docker] running update... | ||
| 400 | Hit:1 http://ru.archive.ubuntu.com/ubuntu focal InRelease | ||
| 401 | Hit:2 http://ru.archive.ubuntu.com/ubuntu focal-updates InRelease | ||
| 402 | Hit:3 http://ru.archive.ubuntu.com/ubuntu focal-backports InRelease | ||
| 403 | Hit:4 http://ru.archive.ubuntu.com/ubuntu focal-security InRelease | ||
| 404 | Get:5 https://download.docker.com/linux/ubuntu focal InRelease [57.7 kB] | ||
| 405 | Get:6 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages [51.6 kB] | ||
| 406 | Fetched 109 kB in 1s (81.0 kB/s) | ||
| 407 | Reading package lists... Done | ||
| 408 | Building dependency tree | ||
| 409 | Reading state information... Done | ||
| 410 | 68 packages can be upgraded. Run 'apt list --upgradable' to see them. | ||
| 411 | ... | ||
| 412 | The following NEW packages will be installed: | ||
| 413 | containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-ce-rootless-extras docker-compose-plugin pigz slirp4netns | ||
| 414 | 0 upgraded, 8 newly installed, 0 to remove and 68 not upgraded. | ||
| 415 | Need to get 123 MB of archives. | ||
| 416 | After this operation, 442 MB of additional disk space will be used. | ||
| 417 | Get:1 http://ru.archive.ubuntu.com/ubuntu focal/universe amd64 pigz amd64 2.4-1 [57.4 kB] | ||
| 418 | ... | ||
| 419 | Selecting previously unselected package pigz. | ||
| 420 | (Reading database ... 134175 files and directories currently installed.) | ||
| 421 | Preparing to unpack .../0-pigz_2.4-1_amd64.deb ... | ||
| 422 | Unpacking pigz (2.4-1) ... | ||
| 423 | ... | ||
| 424 | Setting up docker-buildx-plugin (0.17.1-1~ubuntu.20.04~focal) ... | ||
| 425 | Setting up containerd.io (1.7.22-1) ... | ||
| 426 | Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /lib/systemd/system/containerd.service. | ||
| 427 | Setting up docker-compose-plugin (2.29.7-1~ubuntu.20.04~focal) ... | ||
| 428 | Setting up docker-ce-cli (5:27.3.1-1~ubuntu.20.04~focal) ... | ||
| 429 | Setting up pigz (2.4-1) ... | ||
| 430 | Setting up docker-ce-rootless-extras (5:27.3.1-1~ubuntu.20.04~focal) ... | ||
| 431 | Setting up docker-ce (5:27.3.1-1~ubuntu.20.04~focal) ... | ||
| 432 | Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /lib/systemd/system/docker.service. | ||
| 433 | Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /lib/systemd/system/docker.socket. | ||
| 434 | Processing triggers for man-db (2.9.1-1) ... | ||
| 435 | Processing triggers for systemd (245.4-4ubuntu3.23) ... | ||
| 436 | [docker] done; | ||
| 437 | starting and enabling docker service | ||
| 438 | Synchronizing state of docker.service with SysV service script with /lib/systemd/systemd-sysv-install. | ||
| 439 | Executing: /lib/systemd/systemd-sysv-install enable docker | ||
| 440 | Docker version 27.3.1, build ce12230 | ||
| 441 | Docker Compose version v2.29.7 | ||
| 442 | {{/code}} | ||
| 443 | ))) | ||
| 444 | 1. ((( | ||
| 445 | Выполняется установка Cockpit. | ||
| 446 | |||
| |
3.1 | 447 | {{code language="java"}} |
| |
1.1 | 448 | [cockpit] not found; installing it with plugins |
| 449 | Hit:1 http://ru.archive.ubuntu.com/ubuntu focal InRelease | ||
| 450 | Hit:2 http://ru.archive.ubuntu.com/ubuntu focal-updates InRelease | ||
| 451 | Hit:3 http://ru.archive.ubuntu.com/ubuntu focal-backports InRelease | ||
| 452 | Hit:4 https://download.docker.com/linux/ubuntu focal InRelease | ||
| 453 | Hit:5 http://ru.archive.ubuntu.com/ubuntu focal-security InRelease | ||
| 454 | Reading package lists... Done | ||
| 455 | Building dependency tree | ||
| 456 | Reading state information... Done | ||
| 457 | 68 packages can be upgraded. Run 'apt list --upgradable' to see them. | ||
| 458 | ... | ||
| 459 | The following NEW packages will be installed: | ||
| 460 | cockpit cockpit-bridge cockpit-dashboard cockpit-networkmanager cockpit-packagekit cockpit-storaged cockpit-system cockpit-ws cracklib-runtime dns-root-data dnsmasq-base libblockdev-mdraid2 libbluetooth3 libbytesize1 | ||
| 461 | libcrack2 libidn11 libjansson4 libndp0 libnl-route-3-200 libnm0 libpwquality-common libpwquality-tools libpwquality1 libteamdctl0 network-manager network-manager-pptp ppp pptp-linux wamerican wpasupplicant | ||
| 462 | 0 upgraded, 30 newly installed, 0 to remove and 68 not upgraded. | ||
| 463 | Need to get 10.2 MB of archives. | ||
| 464 | After this operation, 25.4 MB of additional disk space will be used. | ||
| 465 | Get:1 http://ru.archive.ubuntu.com/ubuntu focal/universe amd64 cockpit-bridge amd64 215-1 [557 kB] | ||
| 466 | ... | ||
| 467 | Get:30 http://ru.archive.ubuntu.com/ubuntu focal/main amd64 wamerican all 2018.04.16-1 [210 kB] | ||
| 468 | Fetched 10.2 MB in 2s (6,363 kB/s) | ||
| 469 | Preconfiguring packages ... | ||
| 470 | Selecting previously unselected package cockpit-bridge. | ||
| 471 | (Reading database ... 134429 files and directories currently installed.) | ||
| 472 | Preparing to unpack .../00-cockpit-bridge_215-1_amd64.deb ... | ||
| 473 | Unpacking cockpit-bridge (215-1) ... | ||
| 474 | ... | ||
| 475 | Setting up cockpit-ws (215-1) ... | ||
| 476 | Adding system user `cockpit-ws' (UID 116) ... | ||
| 477 | Adding new group `cockpit-ws' (GID 122) ... | ||
| 478 | Adding new user `cockpit-ws' (UID 116) with group `cockpit-ws' ... | ||
| 479 | Adding system user `cockpit-wsinstance' (UID 117) ... | ||
| 480 | Adding new group `cockpit-wsinstance' (GID 123) ... | ||
| 481 | Adding new user `cockpit-wsinstance' (UID 117) with group `cockpit-wsinstance' ... | ||
| 482 | ... | ||
| 483 | Setting up cockpit-packagekit (215-1) ... | ||
| 484 | Setting up network-manager (1.22.10-1ubuntu2.4) ... | ||
| 485 | Created symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service → /lib/systemd/system/NetworkManager-dispatcher.service. | ||
| 486 | Created symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service → /lib/systemd/system/NetworkManager-wait-online.service. | ||
| 487 | Created symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service → /lib/systemd/system/NetworkManager.service. | ||
| 488 | ... | ||
| 489 | Setting up cockpit-system (215-1) ... | ||
| 490 | Setting up cockpit (215-1) ... | ||
| 491 | Processing triggers for systemd (245.4-4ubuntu3.23) ... | ||
| 492 | Processing triggers for man-db (2.9.1-1) ... | ||
| 493 | Processing triggers for dbus (1.12.16-2ubuntu2.3) ... | ||
| 494 | Processing triggers for libc-bin (2.31-0ubuntu9.16) ... | ||
| 495 | [cockpit] done; preparing cockpit.conf | ||
| 496 | [cockpit] done; enabling all network interfaces for cockpit JIC | ||
| 497 | done; starting and enabling cockpit service | ||
| 498 | The unit files have no installation config (WantedBy=, RequiredBy=, Also=, | ||
| 499 | Alias= settings in the [Install] section, and DefaultInstance= for template | ||
| 500 | units). This means they are not meant to be enabled using systemctl. | ||
| 501 | |||
| 502 | [cockpit] done with cockpit | ||
| 503 | done, ready to install neyross-platform-docker / neyross-start | ||
| 504 | {{/code}} | ||
| 505 | ))) | ||
| 506 | |||
| 507 | == {{id name="Подготовкасредыконтейнеризации-Ошибкивыполнения"/}}Ошибки выполнения == | ||
| 508 | |||
| 509 | Если выполняются попытки поиска дистрибутивов на локальном носителе, который более не доступен, например: | ||
| 510 | |||
| |
3.1 | 511 | {{code language="java"}} |
| |
1.1 | 512 | The repository '[путь к дистрибутиву]' no longer has a Release file. |
| 513 | {{/code}} | ||
| 514 | |||
| 515 | удалите данный источник из списка. Для этого перейдите в режим редактирования файла {{code language="none"}}sources.list{{/code}} | ||
| 516 | |||
| |
3.1 | 517 | {{code language="java"}} |
| |
1.1 | 518 | sudo nano /etc/apt/sources.list |
| 519 | {{/code}} | ||
| 520 | |||
| 521 | и удалите строку с недоступным источником, файлы будут загружены из сети Интернет, при отсутствии доступа в сеть, укажите правильный путь с дистрибутивами. | ||
| 522 | |||
| 523 | \\ | ||
| 524 | |||
| 525 | Если Docker уже был установлен в среде операционной системы, проверьте, что установлены все зависимости, в частности, — установлен docker compose. Для этого выполните команды | ||
| 526 | |||
| |
3.1 | 527 | {{code language="java"}} |
| |
1.1 | 528 | docker -v |
| 529 | docker compose version | ||
| 530 | {{/code}} | ||
| 531 | |||
| 532 | {{error}} | ||
| 533 | **ВАЖНО** | ||
| 534 | |||
| 535 | При установке Docker вручную не используйте пакеты snap, используйте APT! Если ранее был установлен Docker с помощью snap или неподдерживаемой версии, рекомендуем предварительно удалить Docker. | ||
| 536 | {{/error}} | ||
| 537 | |||
| 538 | **Следующий шаг:** | ||
| 539 | |||
| 540 | Перейдите к установке НЕЙРОСС Старт | ||
| 541 | |||
| 542 | [[doc:start.Установка НЕЙРОСС Старт.WebHome]] |