Рубрики
Uncategorized

CI/CD Pipeline с Docker, Github Decicts, Dockerhub и Сторожевой башней

Трубопровод CI/CD для фазы разработки. Я хотел настроить конвейер CI/CD, где мое приложение … с меткой Docker, Github, The Watchtower, DevOps.

Трубопровод CI/CD для фазы разработки.

Я хотел настроить конвейер CI/CD, где мое приложение, наконец, будет развернуто на моей локальной машине, а также использует сладкие вещи, которые GitHub предоставил GitHub-Actions, Местная машина будучи ключом здесь.

Может быть много ситуаций, когда вы хотите, чтобы развертывание было локальным, особенно на этапе разработки, чтобы:

  • предотвратить сетевой трафик
  • не передача конфиденциальных данных
  • приспосабливать частые изменения в кодовой базе
Примечание. Эта статья требует, чтобы у вас было, по крайней мере, некоторые предварительные знания о Docker и Github-Actions, и Docker установлен на вашей локальной машине.

1. Задачи на ваше заявление

«Docker — это открытая платформа для разработки, доставки и запуска приложений» Docker похож на виртуальную машину, но только с частями, необходимыми для запуска ваших приложений. Docker предоставляет комплексное руководство по разработке с Docker в их документации, которую можно найти Здесь Анкет

Чтобы «докеризировать» приложение, вы пишете Dockerfile. Вот пример Dockerfile.

2. Настройка действий GitHub для тестирования и CI

Как только у вас есть Dockerfile, вы можете построить изображение Docker. Изображение Docker — это файл, состоящий из нескольких слоев, который используется для выполнения кода в контейнере Docker. Изображение Docker в основном A упакованное приложение Это может быть выполнено как контейнеры Docker Анкет Контейнер Docker — это просто работающее изображение Docker.

Действия GitHub предоставляет среду для выполнения «действий», которая может выполнять различные задачи. Эти действия написаны как YAML файлы , который затем выполняет на основе триггеров GitHub, таких как Толкание в филиал , Инициирование заправочного запроса и т.п. Проверьте функции действий GitHub Здесь Анкет

Dockerhub — это онлайн -реестр, где вы можете сохранить изображения Docker. Вам требуется учетная запись Dockerhub для изображений Docker в реестре. Если вы предпочитаете, вы также можете сделать свой собственный реестр. Подробнее об этом Здесь Анкет

Ниже приведен пример Actions.yml Файл для создания изображения и нажмите изображение в DockerHub.

3. Сторожевая башня

Центральная часть всего этого трубопровода — Сторожевая башня Анкет

«С помощью сторожевой башни вы можете обновить работающую версию вашего приложения в контейнер, просто нажав новое изображение в концентратор Docker или свой собственный реестр изображений. «Проверьте их репо для получения дополнительной информации.

ContactRrr/Сторожевая башня

Процесс автоматизации обновлений базовых изображений контейнеров Docker.

По сути, с помощью сторожевой башни, когда изображение обновляется в реестре (например, Dockerhub), контейнер обновляется с последними изменениями.

Делая это, вы успешно сделали свой конвейер CI/CD, который обновляется всякий раз, когда изменения вносятся в репо GitHub. Локальный контейнер занимает некоторое время для обновления, как только обновленное изображение будет выдвинуто в реестр, но установление всего этого рабочего процесса прост и прекрасно работает, по крайней мере, для среды разработки.

Оригинал: «https://dev.to/tsuki42/ci-cd-pipeline-with-docker-github-actions-dockerhub-and-watchtower-3l3n»