Быстрый старт
В этом разделе документации представлено пошаговое руководство по настройке deploy вашего приложения на сервер с использованием onFriday. Чтобы всё заработало просто сделайте пошагово эту инструкцию!
Что нужно для того, чтобы использовать onFriday?
- Есть сервер, на нём обязательно установлены Git и Composer.
- У вашего сервера есть возможность подключения по защищенному SSH-каналу.
- Есть проект, код которого хранится на GitHub или GitLab.
- Есть учётная запись на onFriday с оплаченным периодом подписки.
Всё готово? Приступаем!
Создайте проект и введите основные настройки!
Перейдите в раздел Проекты, нажните на кнопку Создать и заполните поля.
Внимательнее с полем Имя репозитория! Указывайте без имени сервиса, только username и имя репозитория.
Например, для GitHub-репозитория https://github.com/moonshine-software/doc указываем moonshine-software/doc. Или полностью скопируйте путь из SSH ссылки проекта - git@github.com:moonshine-software/doc.git
Пример для GitLab-репозитория. Репозиторий https://gitlab.com/cutcode/tz - указываем cutcode/tz. Или полностью скопируйте путь из SSH ссылки проекта - git@gitlab.com:cutcode/tz.git.
Подробно о назначении и правилах оформления полей указано в разделе документации Основная информация.
Настройте параметры для взаимодействия onFriday с сервером
Итак, проект у нас создан, можно сказать, что половина работы уже сделана! Следующий шаг это настройка сервера.
Заполните информацию по взаимодействию с вашим сервером:
- ip-адрес, порт, имя пользователя (рекомендуем создать отдельного пользователя для работы onFriday)
- папку, в которой храниться проект на сервере
- версию PHP проекта и пути к PHP и Composer
После того, как вы ввели все настройки сервера и сохранили их, сгенерируется пара ключей для настройки SSH-соединения. Настроим его!
Для возможности работы с файлами на вашем сервере необходимо настроить защищенное соединение по протоколу SSH. onFriday сгенерирует публичный SSH-ключ, который нужно добавить на сервер в файл ~/.ssh/authorized_keys для пользователей, под которыми onFriday должен подключаться к серверу.
Копируете публичный ключ, авторизуетесь на сервере и добавляете его в ~/.ssh/authorized_keys . Например, командой: echo "ваш_public_key" >> ~/.ssh/authorized_keys
За подробностями можно обратиться в раздел документации - Серверы.
Проверка соединения с сервером
Ввели все настройки? Проверьте, всё ли работает при помощи специальной кнопки - “Проверка связи с сервером”. Выполнится небольшой тест, который определит, всё ли корректно настроено для взаимодействия.
Настройте взаимодействие с провайдером Git
Итак, чтобы onFriday запускал процесс деплоя при выполнении push в репозиторий вашего проекта в git-сервис, нужно добавить webhook в ваш git-сервис.
Посмотрим, как это сделать на примере GitHub
- Зайти в настройки github-репозитория, для которого вы хотите добавить webhook.
- Выбрать раздел “Webhooks“. Добавить новый webhook - нажимаем на кнопку “Add webhook”.
-
Вернемся в onFriday, заходим на вкладку "Развертывания".
Копируем из onFriday и вставляем значения “Payload URL“ и “Secret“ в соответствующие поля на GitHub. “Content type“ выбрать “application/json” - Переключатель “Which events would you like to trigger this webhook” установить “Just the push event.”
- Флажок “Active” установлен (активный).
- Нажать кнопку “Add webhook”.
Подробнее - в документации Deployments.
Пора выполнить deploy! Сейчас начнется
Всё готово для выполнения деплоя проекта на сервер с помощью onFriday!
Выполните push вашего проекта на Git провайдер. При успешном выполнении push выполняется webhook и onFriday начинает копировать проект на сервер.
Процесс копирования займёт какое-то время. Вы можете наблюдать за процессом копирования
Хотите большего? Раскройте все возможности onFriday!
-
Hooks. Кастомизируйте деплой!
onFriday обеспечивает большую гибкость и контроль над вашими deploy — вы можете детально настроить весь план деплоя, написав небольшие сценарии Bash для автоматизации этапов развертывания приложения.
Вы можете прочитать больше об этом в разделе документации Webhooks. -
Уведомления в Telegram. Удобное оповещение о результатах деплоя.
Настройте по документации Уведомления.