Я запускаю контейнер Docker со специальным сценарием bash, который запускает контейнер, а затем создает пользователя X с динамическим именем, UID и GUID в контейнере. Затем я могу зайти в контейнер и выполнить действия от имени этого пользователя X. Сценарий также создает пользователя с псевдонимом vscode с тем же UID, что и ранее созданный динамический пользователь X.
В VSCode я могу присоединиться кэтот контейнер. Два вопроса:
- Как настроить VSCode для выполнения всех действий от имени пользователя vscode или пользователя X? (При использовании devcontainer.json для создания контейнера это тривиально, но теперь я присоединяюсь к существующему контейнеру, а devcontainer.json не используется).
- В devcontainer.json у вас есть возможность автоматически устанавливать расширения. Какой файл настроек мне нужно создать для автоматической установки расширений при подключении к контейнеру?
Решение должно быть автоматизировано. Например. ручное вмешательство и фиксация изображения, как предложено ниже, возможно, но пользователям будет намного сложнее просто использовать мой образ Docker.
Я обновился до vscode 1.39 и попытался добавить:
ADD server-env-setup /root/.vscode-server/server-env-setup
Но «server-env-setup», похоже, используется только для WSL.