Открой безлимитный доступ ко всем скринкастам и получай большие скидки на все наши мероприятия:
Бесплатный
0/ мес.

Ограниченный доступ
только к Free-видео

Активен
Подписчик
500/ мес.

Безлимитный доступ
ко всем скринкастам

Принимаем оплату российскими и иностранными картами, системами МИР Pay и Tinkoff Pay.

Дистанционный деплой с Docker SSH

Сделали несколько инфраструктурных улучшений и перешли на более удобный деплой.

Исправили недочёты инфраструктуры, довели до ума работу с SSH-ключами, сделали более удобный дистанционный деплой в Docker Swarm через SSH, перешли на Systemd Timers вместо Cron, разделили docker-entrypoint файлы, исправили конфликты доступа к файлам из Docker-контейнеров и доработали diff-проверки в пайплайне, чтобы они работали без ложных срабатываний при использовании внешнего кэша сборки в buildx:

  • 00:00:00 Что сегодня будет
  • 00:00:39 Изменение версии Traefik
  • 00:04:49 Экранирование пробрасываемых путей
  • 00:05:53 Развёрнутые имена параметров
  • 00:07:57 Конфликт локального и тестового окружения
  • 00:14:21 Флаг интерактивного режима
  • 00:14:54 Изменение прокидываемого порта
  • 00:15:58 Точки в регулярном выражении
  • 00:16:38 Переименование compose-файлов
  • 00:17:43 Сборка образов плагином buildx
  • 00:19:59 Синтаксис переменных окружения
  • 00:20:38 Регистр ключевых слов
  • 00:21:11 Таймаут команды down
  • 00:24:06 Увеличение задержки при деплое
  • 00:26:19 Переход на Mailpit для эмуляции почты
  • 00:30:56 Переход на эмулятор S3 хранилища
  • 00:36:16 Кавычки для переменной пароля
  • 00:36:55 Имя секрета для файлов ключей
  • 00:38:08 Более надёжный Docker Diff
  • 00:49:37 Установка JQ в Jenkins
  • 00:50:21 Ограничение параллельной сборки проекта
  • 00:52:25 Строгая проверка хоста в SSH
  • 00:58:30 Дистанционный деплой в Docker Swarm через SSH
  • 01:12:19 Поштучный Rollback в Docker Swarm
  • 01:13:46 Доступ к реестру при дистанционном деплое
  • 01:17:36 Сокрытие compose-файла
  • 01:23:34 Миграция с команды apt-key
  • 01:25:14 Переход с Cron на Systemd Timers
  • 01:29:26 Разделение docker entrypoints
  • 01:38:13 Запуск с exec для сохранения PID процесса
  • 01:42:33 Синтаксис команд в compose-файлах
  • 01:43:47 Передача UID и GID в контейнеры
  • 01:54:32 Смена портов для не-root контейнеров
  • 01:58:44 Подведение итогов

В следующем эпизоде переведём фронтенд с шаблона Create-React-App на сборку в ViteJS.

Скрытый контент (код, слайды, ...) для подписчиков. Открыть →
Дмитрий Елисеев
elisdn.ru
Комментарии (1)
Руслан

Дмитрий, спасибо! С нетерпением ожидаем продолжения ранее запланированных скринкастов по аукциону (RabbitMQ, Outbox Pattern, Centrifugo etc.).

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий

Или войти через:

Yandex
MailRu
GitHub
Google