Продолжаем стримы на полезные смежные темы. В этот раз поговорим про способы оптимизации запуска и работы PHP-приложений.
Большой стрим про практики разделения новых и существующих проектов на модули и микросервисы. Паттерны и антипаттерны дробления.
Остальное в блоге
15:12
Перевод проектов на плагин Docker Compose V2 для всех окружений. Установка на Jenkins-сервер с помощью Ansible.
24:08
Использование переменных окружения во фронтеде на React при разработке и при деплое с Docker. Отличие работы переменных фронтенда от бэкенда.
18:57
Обновление зависимостей. Перевод бэкенда на PHP 8.1 и мини-обзор новых возможностей. Переход фронтенда на React 18.
1:14:21
Установка сервера Nginx c PHP-FPM. Структура файлов и директорий. Автозагрузка классов с Composer. Установка и настройка PHPUnit.
52:55
Декларативное централизованное управление доменными именами с помощью Traefik. Автополучение Let's Encrypt сертификатов. Деплой нескольких проектов в один кластер.
59:57
Запуск БД в Docker и без него. Способы организации репликации. Написание скрипта резервного копирования базы данных PostgreSQL с загрузкой в S3-совместимое хранилище.
26:09
Обновление Debian и Docker на серверах. Перевод передачи паролей в контейнеры с переменных окружения на секреты. Работа с секретами в функции env.
55:26
Завершаем аутентификацию для бэкенда. Добавление роли в JWT. Форсированное разлогинивание пользователя. Автоочистка устаревших кодов из БД.
1:10:16
Разработка страницы входа и контроллера для генерации и обновления OAuth-токенов. Добавление Query-модели для выполнения запросов данных из модуля.
34:54
Перевод API на PHP 8. Сборка расширений из исходников вместо PECL. Добавление типов и упрощение PHPDoc-блоков за счёт перехода от Psalm-аннотаций и удаления повторов.
1:30:43
Программирование формы регистрации пользователя в React. Организация взаимодействия фронтенда с API. Работа через CORS-заголовки и через проксирование.
32:54
Решение проблемы Pull Rate Limit сервиса DockerHub. Создание собственного кеширующего прокси для загрузки официальных Docker-образов.
59:18
Обновление версий Docker-образов Nginx, NodeJS и PostgreSQL. Переход на Composer 2 и XDebug 3. Изменения в Cucumber 7. Кэширование в Psalm 4.
1:12:00
Перевод проекта с Docker Compose на Docker Swarm для установки на кластер. Организация бесшовного деплоя. Управление размещением сервисов.
24:17
Инициализация режима Docker Swarm. Автоматическое поднятие кластера из менеджера и машин-воркеров с помощью Ansible.
Free25:25
Реализация Continuous Deployment. Алгоритм Rolling Updates для бесшовного обновления контейнеров. Использование оркестраторов для деплоя на кластер.
1:23:06
Реализация CI/CD pipeline в сервисе GitHub Actions. Использование GitHub Packages для хранения Docker-образов. Кэширование Docker-слоёв через BuildKit.
1:24:44
Построение CI/CD Pipeline для автоматизации тестирования и деплоя в Jenkins. Сбор артефактов и уведомления по электронной почте.
Free1:03:20
Установка Jenkins через Docker. Организация сети распределённой сборки. Подготовка виртуальных машин для менеджера и агентов через Ansible.
33:32
Подготовка проекта к работе в CI/CD Pipeline. Добавление окружения для тестирования рабочих Docker-образов. Создание файла подкачки в Ansible.
1:18:32
Написание E2E-тестов для проверки работы проекта из фронтенда и API. Тестирование интерфейса ReactJS-приложения в браузере в Docker-контейнере.
47:12
Создание проекта с ReactJS. Подключение и сборка пакетов через NodeJS. Запуск девелоперского сервера с автообновлением UI. Деплой фронтенда через Docker.
58:26
Философия логирования процессов в Docker. Установка Monolog. Вывод логов для функциональных тестов. Подключение сервиса Sentry.IO для уведомлений об ошибках.
52:48
Реализация отправки электронных писем по протоколу SMTP. Подключение эмулятора почтовика для локальной разработки. Подключение шаблонизатора для рендеринга HTML-писем.
48:06
Подключение базы данных в Docker и конфигурирование через переменными окружения. Обзор Doctrine ORM. Установка и регистрация в DI контейнере.
41:37
Установка Xdebug в Docker-образы. Настройка отладки консольных скриптов. Подключение к PhpStorm для отладки веб-скриптов в PHP-FPM.
18:31
Оптимизация Docker-образов для production через использование кеширования и мультистадийный билдинг.
Free1:04:40
Подъём девелоперской версии сайта с Docker. Построение сетевой структуры. Сборка образов для продакшена и первый деплой.
Free38:16
Чем является Docker и чем не является. Удобство использования Docker для локальной разработки и для продакшена.
Тип
Технология
Фреймворк
Язык
Метки