Сделали несколько инфраструктурных улучшений и перешли на более удобный деплой.
Исправили недочёты инфраструктуры, довели до ума работу с 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.
Скрытый контент (код, слайды, ...) для подписчиков.
Открыть →Чтобы не пропускать новые эпизоды подпишитесь на наш канал @deworkerpro в Telegram

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