Как работать внутри двух контейнерах через vscode?

Здравствуйте.
Я работаю на vscode, внутри контейнера через devcontainer на python, так удобнее, все библиотеки прокликиваются, можно получить полный доступ к окружению.

Недавно задумался о том, как сделать так, чтобы был отдельный контейнер с react приложением например, любой фронтенд и в нем так же можно было внутри контейнера работать, одновременно в двух контейнерах, есть ли какой то удобный способ это организовать ?

---------------
Vscode открывается внутри одного контейнера, я хочу чтобы открывалось два редактора внутри двух контейнеров

Дополнительно:

Недавно пришло понимание о том, как это реализовать, нужно делать по аналогии с микро сервисами, пробрасывать в dev container не папку одного проекта а общую папку с двумя приложениями, фронта и бэка и уже по идее там будут обе папки, которыми можно будет управлять

Ответы:

Открыть 2 окна vscode?

  • с devcontainer вы вроде тоже не знакомы, через него запускают docker-compose и пробрасывают внутри vscode
  • mcrack25, и? Один контейнер - одно окно VSCode. Второй контейнер - второе окно. Проблема в чём? К сожалению компьютер уже выключил, так бы попробовал. Уверен что всё решается просто.

Можете использовать docker-compose, это обертка над докером, в одном конфиге вы можете описать несколько сервисов и одними командами через docker-compose они будут подниматься и отключаться

в каждом сервисе в конфиге опишите ваши сервисы (например указав Dockerfile) для каждого, можно также пробросить локальные пути и порты прокинуть и все будет работать

например:
контейнер с nginx для проксирования фронта и бекенда
сервис бекенда
сервис фронта

и взаимодействие между ними наладить на уровне конфигурации, указав верные пути

потом по идее можете также и задеплоить, тогда конфигурация локальнйо разработки почти не будет отличаться от продакшн (если в проде будет docker compose/docker swarm)

  • Это и так то понятно, devcontainer и так то с docker-compose работает.

    Vscode открывается внутри одного контейнера, я хочу чтобы открывалось два редактора внутри двух контейнеров

  • mcrack25, не понял, зачем vscode внутри контейнера открывать?
  • Все более менее профессиональные разработчики, кто пользуются vscode работают внутри контейнера, внутри доступно всё окружение и все библиотеки контейнера
  • mcrack25, внутри контейнера понятно, когда код от туда через volume синкается

    не совсем понимаю, зачем сам vscode там поднимать

  • Максим Федоров, для того, чтобы всё установленные библиотеки python проекта прокликивались и можно было по ним переходить и смотреть что там, без этого ты же не можешь посмотреть исходники установленного пакета
  • mcrack25, как связан запуск в контейнере и код проекта в IDE?
  • Максим Федоров, попробуй поработать в devcontainer, пока не попробуешь не поймешь для чего это надо, как уже говорил для доступа ко всей среде разработки, библиотекам, файлам внутри контейнера и операционки в нём.

 

Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.

 

    • Как работать внутри двух контейнерах через vscode?Есть ответ
    • 09.04.2024
    Ответить

    Для работы внутри двух контейнеров через VSCode, вам необходимо использовать расширение Remote - Containers, которое позволяет управлять контейнерами Docker непосредственно из среды разработки VSCode.

    Вот как вы можете работать внутри двух контейнеров через VSCode:

    1. Установите расширение Remote - Containers, если у вас его еще нет. Для этого перейдите во вкладку Extensions в VSCode, введите "Remote - Containers" в поисковой строке и установите это расширение.

    2. Откройте папку проекта, в которой находятся файлы контейнеров, в VSCode.

    3. Нажмите на кнопку "Remote Explorer" в левой панели VSCode (она выглядит как квадрат с шестеренкой), затем выберите "Containers" в выпадающем меню. Здесь вы увидите список всех доступных контейнеров.

    4. Чтобы работать внутри конкретного контейнера, нажмите на него правой кнопкой мыши и выберите "Attach to Container". VSCode подключится к выбранному контейнеру и откроет его файловую систему в новом окне.

    5. Теперь вы можете редактировать файлы внутри контейнера, запускать команды в терминале Docker и т.д. Если у вас есть второй контейнер, повторите те же шаги для подключения к нему.

    Примечание: Убедитесь, что у вас установлен Docker на вашем компьютере, и что контейнеры, с которыми вы хотите работать, запущены.

    Пример использования Remote - Containers с двумя контейнерами на языке PHP:

     
    • Как работать внутри двух контейнерах через vscode?Есть ответ
    • 07.04.2024
    Ответить

    Для работы внутри двух контейнеров через VSCode, вам потребуется установить расширение Remote - Containers. Это позволит вам запускать код в различных контейнерах, таких как Docker или Kubernetes, прямо из вашей среды разработки.

    Вот пошаговая инструкция по работе с двумя контейнерами через VSCode:

    1. Установите расширение Remote - Containers. Для этого откройте VSCode, перейдите во вкладку Extensions (Ctrl+Shift+X), введите "Remote - Containers" в строке поиска, выберите расширение и нажмите "Install".

    2. Создайте новый проект или откройте существующий проект в VSCode.

    3. В правом нижнем углу окна VSCode найдите кнопку "><" в правом нижнем углу окна VSCode и выбрав нужный контейнер из списка.

    Используя расширение Remote - Containers, вы сможете удобно работать с несколькими контейнерами одновременно, не покидая среду разработки VSCode. Это значительно упрощает процесс разработки и тестирования вашего кода в различных средах.

Оставить комментарий