#docker #visual-studio-code #docker-compose #containers #vscode-devcontainer
#docker #visual-studio-code #docker-compose #контейнеры #vscode-devcontainer
Вопрос:
Это относится конкретно к удаленным контейнерам с VS Code, использующим файл docker-compose для определения служб. Одной из таких служб в данном случае является MariaDB, которая принимает переменную среды для указания местоположения файла, который содержит пароль для пользователя БД. Файл должен существовать при запуске контейнера, иначе он выдаст ошибку, которую новичку может быть сложно диагностировать. Файл может содержать значение по умолчанию, но если я передам его в общедоступный репозиторий, разработчики больше не смогут изменять его локально без риска фиксации изменений. Когда разработчик создает локальную среду из репозитория, можно использовать значение по умолчанию, и им не нужно создавать файлы в специальных местах перед открытием контейнера.
Согласно документации, внутри devcontainer.json
есть свойство, initializeCommand
которое, похоже, было бы местом для запуска некоторого кода для копирования файла по умолчанию в нужное место, но разработчик может запускать VS Code на Mac или в Windows. Существует ли кроссплатформенный способ убедиться, что среда подготовлена до ее запуска? Я хочу, чтобы это было автоматизировано, чтобы разработчикам не нужно было помнить или знать, чтобы сделать это перед началом работы.
По сути, он должен автоматически проверять, secrets/sql-password.txt
существует ли он, и копировать secrets/sql-default-password.txt
туда, только если файл отсутствует.
Есть предложения?