Краткое руководство. Контейнеризация проекта с помощью модернизации GitHub Copilot

В этом кратком руководстве показано, как упаковать проект в контейнер с помощью функции модернизации в GitHub Copilot.

Чтобы использовать службы вычислений контейнеров, такие как Служба Azure Kubernetes и Контейнеры приложений Azure, необходимо контейнеризировать проект, создав Dockerfile и другие связанные файлы конфигурации, а также создать образы контейнеров. Расширение GitHub Copilot для модернизации автоматизирует процесс контейнеризации.

Предпосылки

  • Учетная запись GitHub с активной подпиской на GitHub Copilot в рамках любого плана.
  • Один из следующих сред разработки:
  • Docker установлен и запущен.

Замечание

Учетная запись Azure требуется только для развертывания ресурсов в Azure и не нужна при использовании функции модернизации GitHub Copilot для изменения кода.

Контейнеризация проекта

Чтобы запустить процесс контейнеризации, выполните следующие действия.

  1. Убедитесь, что у вас установлен и запущен Docker.

  2. Откройте проект в интегрированной среде разработки.

  3. На боковой панели Действия откройте панель расширения модернизации GitHub Copilot. В разделе "Задачи " откройте " Задачи контейнеризации", выберите приложение контейнеризации задач и нажмите кнопку "Выполнить".

    Screenshot Visual Studio Code, в котором показана задача

  4. После нажатия кнопки откроется окно чата Copilot с режимом агента автоматически.

    Снимок экрана Visual Studio Code, на котором показано окно чата Copilot с автоматически активированным задачей Containerize Application режимом Agent.

  5. Повторно выберите Continue, чтобы подтвердить каждое действие инструмента в окне Copilot Chat. Агент Copilot использует различные средства для упрощения контейнеризации. Для каждого средства требуется подтверждение, нажав кнопку "Продолжить".

  6. Copilot обычно выполняет следующие действия, чтобы контейнеризировать проект:

    • Проверяет, установлен и запущен Docker.
    • Проверяет, готов ли код приложения к выполнению в контейнере.
    • Создает Dockerfile для каждого проекта.
    • Создает образы Docker для каждого проекта.
    • Сканирует созданные образы Docker для известных уязвимостей (CVEs).
    • Создает сводку результатов контейнеризации.

Замечание

Используйте модели Claude Opus 4.5 или более поздних версий для получения наилучших результатов.

Для исправления ошибок контейнеризации Copilot может потребоваться несколько итераций.

Настройка с помощью собственных запросов

Кнопка "Контейнеризовать приложение" отправляет предопределенный запрос. Для большего контроля введите настраиваемый запрос непосредственно в чате Copilot с включённым режимом агента. Этот подход позволяет указать параметры контейнеризации для проекта.

Подсказка

Примеры запросов для различных сценариев:

  • "Containerize my application using a multi-stage Dockerfile to minimize the final image size" — оптимизируйте размер рабочего образа.
  • "Create a Dockerfile for my project using Eclipse Temurin 21 as the base image" — укажите конкретный базовый образ.
  • "Containerize all modules in this multi-module project and create a docker-compose.yml for local testing" — управление проектами с несколькими модулями с помощью compose.
  • "Containerize my app and push the image to my Реестр контейнеров Azure: <acr-name>.azurecr.io" — сборка и отправка на одном шаге.

Дальнейшие действия