Yandex.Cloud
  • Сервисы
  • Почему Yandex.Cloud
  • Сообщество
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Yandex Container Solution
  • Начало работы
  • Сценарии использования
    • Все сценарии
    • Создать ВМ с Container Optimized Image
    • Создать ВМ с Container Optimized Image и дополнительным томом для Docker-контейнера
    • Создать ВМ с Container Optimized Image и несколькими Docker-контейнерами
    • Создать группу ВМ с Container Optimized Image
    • Изменить ВМ с Container Optimized Image
    • Настройка вывода информации из Docker-контейнера в серийный порт
    • Создать ВМ и группу ВМ с Container Optimized Image с помощью Terraform
  • Концепции
    • Образ Container Optimized Image
    • Квоты и лимиты
  • Правила тарификации
  • Вопросы и ответы
  1. Сценарии использования
  2. Настройка вывода информации из Docker-контейнера в серийный порт

Настройка вывода информации из Docker-контейнера в серийный порт

  • Перед началом работы
  • Создайте ВМ с Container Optimized Image и выводом серийного порта

В этой инструкции вы создадите виртуальную машину из образа Container Optimized Image и настроите перенаправление потока вывода приложения в серийный порт виртуальной машины.

Перед началом работы

Если нужный Docker-образ загружен в Container Registry, то создайте сервисный аккаунт с ролью container-registry.images.puller на используемый реестр. От его имени ВМ на базе Container Optimized Image будет скачивать из реестра Docker-образ.

Создайте ВМ с Container Optimized Image и выводом серийного порта

CLI

Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

  1. Посмотрите описание команды CLI для создания ВМ на базе образа Container Optimized Image:

    $ yc compute instance create-with-container --help
    
  2. Подготовьте спецификацию ВМ. Задайте имя пользователя, укажите публичную часть SSH-ключа для подключения к ВМ и сохраните эти данные в файл cloud-config-ports.yaml:

    #cloud-config
    runcmd:
      - [ sudo, chmod, 666, /dev/ttyS1]
    users:
      - name: <имя пользователя>
        groups: sudo
        shell: /bin/bash
        sudo: ['ALL=(ALL) NOPASSWD:ALL']
        ssh-authorized-keys:
          - <публичный SSH-ключ для подключения к ВМ>
    
  3. Подготовьте спецификацию Docker-контейнера. Сохраните следующие данные в файл container-spec-ports.yaml:

    spec:
     containers:
     - image: ubuntu
       name: app
       command: ["/bin/bash", "-c", "sleep 30 && echo 'Hello World!' > /dev/ttyS1"]
       securityContext:
         privileged: true
       stdin: false
       tty: false
       volumeMounts:
         - mountPath: /dev/ttyS1
           name: log-port
     restartPolicy: Always
     volumes:
       - name: log-port
         hostPath:
           path: /dev/ttyS1
    
  4. Создайте ВМ с несколькими дисками.

    1. Получите идентификатор образа для создания ВМ:

      • Bash

        $ IMAGE_ID=$(yc compute image get-latest-from-family container-optimized-image --folder-id standard-images --format=json | jq -r .id)
        
      • PowerShell

        > $IMAGE_ID=(yc compute image get-latest-from-family container-optimized-image --folder-id standard-images --format=json | ConvertFrom-Json).id
        
    2. Создайте ВМ:

      yc compute instance create \
          --name coi-vm-with-sp \
          --zone=ru-central1-c \
          --network-interface subnet-name=<имя подсети>,nat-ip-version=ipv4 \
          --metadata-from-file user-data=cloud-config-ports.yaml,docker-container-declaration=container-spec-ports.yaml \
          --create-boot-disk image-id=$IMAGE_ID
      

      Где:

      • --name — имя виртуальной машины.
      • --zone — зона доступности.
      • --network-interface — сетевые настройки виртуальной машины.
      • --metadata-from-file — YAML-файлы метаданных для создания ВМ.
      • --create-boot-disk — идентификатор образа для создания загрузочного диска.

      После создания виртуальная машина появится в списке ВМ в разделе Compute Cloud в консоли управления.

    3. Проверьте результат.

      1. В консоли управления перейдите на страницу каталога и выберите сервис Compute Cloud.
      2. Нажмите на имя нужной виртуальной машины coi-vm-with-sp.
      3. В блоке Серийный порт выберите порт COM2. Через несколько минут на экран начнет выводиться Hello world!.

Подробнее о работе с ВМ читайте в пошаговых инструкциях.

В этой статье:
  • Перед началом работы
  • Создайте ВМ с Container Optimized Image и выводом серийного порта
Language
Вакансии
Политика конфиденциальности
Условия использования
© 2021 ООО «Яндекс.Облако»