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. Создать ВМ с Container Optimized Image и несколькими Docker-контейнерами

Создание ВМ с Container Optimized Image и несколькими Docker-контейнерами

  • Перед началом работы
  • Создайте ВМ с несколькими Docker-контейнерами

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

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

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

Создайте ВМ с несколькими Docker-контейнерами

CLI

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

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

Чтобы создать ВМ на базе образа Container Optimized Image и несколькими Docker-контейнерами:

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

    yc compute instance create-with-container --help
    
  2. Подготовьте спецификацию Docker-контейнеров. Сохраните следующие данные в файл docker-compose.yaml:

    version: '3.7'
    services:
      app1:
        container_name: nginx
        image: "nginx"
        ports:
          - "80:80"
        restart: always
      app2:
        container_name: redis
        image: "redis"
        restart: always
    
  3. Создайте ВМ с несколькими Docker-контейнерами.

    yc compute instance create-with-container \
        --name my-vm \
        --zone=ru-central1-a \
        --ssh-key ssh-key.pub \
        --network-interface subnet-name=<имя подсети>,nat-ip-version=ipv4 \
        --service-account-name default-sa \
        --docker-compose-file docker-compose.yaml
    

    Где:

    • --name — имя виртуальной машины.
    • --zone — зона доступности.
    • --ssh-key — содержимое файла открытого ключа.
    • --network-interface — сетевые настройки виртуальной машины.
    • --service-account-name — имя сервисного аккаунта.
    • --docker-compose-file — YAML-файл со спецификацией контенеров.

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

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

    1. Подключитесь к ВМ по SSH.
    2. Посмотрите список запущенных Docker-контейнеров:
    sudo docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
    c79b1cdc5a3a        nginx               "nginx -g 'daemon of…"   16 seconds ago      Up 14 seconds       0.0.0.0:80->80/tcp   nginx
    3ac5a9844a5d        redis               "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        6379/tcp             redis
    
В этой статье:
  • Перед началом работы
  • Создайте ВМ с несколькими Docker-контейнерами
Language
Вакансии
Политика конфиденциальности
Условия использования
© 2021 ООО «Яндекс.Облако»