Руководство. Предоставление общего доступа к приложению Docker с помощью Visual Studio Code

Это руководство является частью двух из четырех частей серии, введя Docker для использования с Visual Studio Code (VS Code).

В этом руководстве описано следующее:

  • Обновление кода и замена контейнера.
  • Предоставление общего доступа к образу.
  • Запуск образа в новом экземпляре.

Необходимые компоненты

В этом руководстве показано, как создать приложение Docker с помощью Visual Studio Code. Чтобы продолжить работу, вам потребуется запущенный диспетчер списков todo из части 1.

Обновление кода и замена контейнера

Давайте внесите несколько изменений и узнайте об управлении контейнерами.

  1. В файле src/static/js/app.js обновите строку 56 для использования новой текстовой метки:

    - <p className="text-center">No items yet! Add one above!</p>
    + <p className="text-center">You have no todo items yet! Add one above!</p>
    

    Сохраните изменения.

  2. Остановите и удалите текущую версию контейнера. Несколько контейнеров не могут использовать один и тот же порт.

    Щелкните правой кнопкой мыши контейнер getting-started и выберите команду Удалить.

    Screenshot shows the Docker extension with a container selected and a context menu with Remove selected.

    Или в командной строке выполните следующую команду, чтобы получить идентификатор контейнера.

    docker ps
    

    Затем остановите и удалите контейнер:

    docker stop <container-id>
    docker rm <container-id>
    
  3. Создайте обновленную версию образа. В проводнике щелкните правой кнопкой мыши Dockerfileи выберите команду Собрать образ.

    Кроме того, чтобы создать командную строку, измените каталог на папку, содержащую Файл Dockerfile, и используйте ту же команду, которую вы использовали раньше.

    docker build -t getting-started .
    
  4. Запустите новый контейнер с обновленным кодом.

    docker run -dp 3000:3000 getting-started
    
  5. Обновите страницу http://localhost:3000 в браузере, и вы увидите новый текст справки.

    Screenshot shows the sample application with the modified text, described above.

Предоставление общего доступа к образу

Теперь, когда вы создали образ, к нему можно предоставить общий доступ. Для предоставления общего доступа к образам Docker используется реестр Docker. Реестр по умолчанию — это Docker Hub, откуда берутся все используемые нами образы.

Чтобы отправить образ, необходимо сначала создать репозиторий в Docker Hub.

  1. Перейдите в Docker Hub и войдите в свою учетную запись.

  2. Щелкните Создать репозиторий.

  3. В качестве имени репозитория введите getting-started. Убедитесь, что параметру Видимость задано значение Общедоступная.

  4. Выберите Создать.

    С правой стороны страницы вы увидите раздел с названием Команды Docker. В нем приводится пример команды для отправки в репозиторий.

    Screenshot shows the Docker Hub page with a suggested Docker command.

  5. В VS Code в представлении Docker в разделе REGISTRYIES щелкните значок подключаемого модуля, чтобы подключиться к реестру и выберите Docker Hub.

    Введите имя и пароль учетной записи Docker Hub.

  6. В представлении Docker в VS Code в разделе ОБРАЗЫ щелкните тег образа правой кнопкой мыши и выберите команду Отправить. Введите пространство имен и тег или примите значения по умолчанию.

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

    Войдите в Docker Hub:

    docker login -u <username>
    
  8. Используйте следующую команду, чтобы присвоить образу getting-started новое имя.

    docker tag getting-started <username>/getting-started
    
  9. Используйте следующую команду, чтобы отправить контейнер.

    docker push <username>/getting-started
    

Запуск образа в новом экземпляре

Теперь, когда образ создан и отправлен в реестр, попробуйте запустить приложение в совершенно новом экземпляре, которому незнаком этот образ контейнера. Чтобы запустить приложение, используйте сайт Play with Docker.

  1. Откройте Play with Docker в браузере.

  2. Войдите со своей учетной записью Docker Hub.

  3. Нажмите кнопку Пуск, а затем щелкните ссылку + Добавить новый экземпляр в левой части. Через несколько секунд в браузере откроется окно терминала.

    Screenshot shows the Play with Docker site with an add new instance link.

  4. Запустите приложение в окне терминала.

    docker run -dp 3000:3000 <username>/getting-started
    

    Play with Docker извлекает образ и запускает его.

  5. Щелкните значок 3000 рядом с пунктом ОТКРЫТЬ ПОРТ. Вы должны увидеть приложение с внесенными изменениями.

    Если значок 3000 не отображается, выберите ОТКРЫТЬ ПОРТ и введите "3000".

Очистка ресурсов

Чтобы продолжить работу с этой серией учебников, оставьте все настройки, сделанные на данный момент.

Следующие шаги

Поздравляю. Вы выполнили часть 2 и узнали, как обновить код и запустить образ в новом экземпляре.

Ниже приведены некоторые ресурсы, которые могут быть полезны:

Далее выполните инструкции из следующего учебника в этой серии: