Настройка параметров проекта и редактора
Вы настроили контейнер разработки для одного из проектов вашего агентства. Теперь он будет "просто работать" для тех, кто имеет Docker и расширение "Контейнеры разработки". Они по-прежнему должны установить зависимости. Кроме того, для них могут потребоваться некоторые расширения Visual Studio Code, о которые они не знают.
К счастью, вы можете полностью настроить и автоматизировать все настройки проекта с помощью файла devcontainer.json.
Более подробный взгляд на devcontainer.json
Рассмотрим основные параметры в файле .devcontainer/devcontainer.json из проекта панели мониторинга продуктов. Это слишком много, чтобы рассмотреть все сразу, так что давайте рассмотрим его по частям.
Конфигурация сборки
Свойство image определяет, как будет создан контейнер на основе так называемого образа контейнера .
"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},
Этот образ размещается в репозитории devcontainers/images, где можно получить дополнительные сведения. Образы в этом репозитории — это все заранее созданные образы, которые ускоряют рабочий процесс и упрощают конфигурацию .devcontainer/devcontainer.json.
Вы также можете использовать файлы, известные как Dockerfile или файл Docker Compose, для настройки установки. Эти файлы могут жить в папке .devcontainer и позволяют дополнительно настроить определенные требования к настройке, например установку дополнительного программного обеспечения. Получить больше информации вы можете в документации по контейнерам разработки.
Функции
Контейнеры разработки с функциями являются автономными, распространенными единицами кода установки и конфигурации контейнера разработки. Имя исходит от того, что ссылка на одну из них позволяет быстро и легко добавлять средства, среду выполнения или библиотеку "Функции" в контейнер разработки для использования вами или вашими коллегами.
При использовании команды VS Code Dev Containers: добавление файлов конфигурации Dev Container, вам предлагается список сценариев для настройки существующих конфигураций контейнеров разработки, таких как установка Git или Azure CLI.
Параметры проекта
Более поздний раздел файла связан непосредственно с конфигурацией проекта.
customizations задает определенные свойства продукта для продуктов , поддерживающих контейнеры разработки, например VS Code и GitHub Codespaces.
Например, можно задать vscode.settings для копирования параметров компьютера в контейнер. Эти параметры могут быть установлены в собственной настройке Visual Studio Code. Добавив их в settings, вы убедитесь, что любой пользователь, который открывает этот проект, получает эти определенные параметры VS Code.
В этом контейнере Python вы можете увидеть эти параметры в его базовом образе mcr.microsoft.com/devcontainers/python:0-3.11. Они предоставляют пользователю улучшенный интерфейс редактирования Python.
- Вы можете использовать массив
extensionsв свойствеcustomizations.vscode, чтобы указать, какие расширения Visual Studio Code должны быть установлены в Visual Studio Code при подключении к контейнеру. Обычная настройка Visual Studio Code и все уже имеющиеся расширения не будут присутствовать при использовании контейнеров разработки. Расширения указаны здесь с идентификаторами.
Команда_Создания_Поста
Свойство postCreateCommand позволяет выполнять все команды, которые требуется выполнить после создания контейнера. Если вы помните из первого упражнения, вам пришлось выполнить команду pip3 для установки зависимостей. Но откуда бы вы узнали, как это сделать? Может быть, нет. Вы можете настроить его здесь, чтобы оно произошло автоматически, и другие не должны беспокоиться об этом.
В следующем упражнении вы измените файл devcontainer.json, чтобы автоматизировать несколько аспектов проекта, который настроит других разработчиков для немедленного успеха.