Как развернуть первое приложение в Coolify?
- В панели откройте Мои серверы и нажмите на свой сервер.
- На вкладке Обзор дождитесь, пока в строке Приложение появится «Coolify готов».
- Откройте ссылку из строки Адрес панели и войдите с данными из строк Email и Пароль. Сервер и первый проект уже готовы.
Подключение репозитория
- На странице Projects откройте My first project и production, затем нажмите New resource.
- Для публичного репозитория выберите Public Git Repository, введите адрес и нажмите Check repository.
- Для частного репозитория сначала нажмите Generate ED25519 на странице Private Keys в разделе Keys & Tokens и добавьте открытый ключ в Deploy keys репозитория на GitHub. Затем выберите Private Git Repository (with Deploy Key) и введите
[email protected]:user/project.git. - Оставьте в Build pack значение Railpack и нажмите Continue. Coolify помечает Railpack как бета-версию, поэтому при проблемах выберите собственный Dockerfile.
- Введите свои переменные на странице Environment Variables и нажмите Deploy. Тестовый адрес с HTTPS находится на странице Domains.
Развёртывание через git push
- На странице Webhooks приложения скопируйте Webhook URL из раздела GitHub, введите в Webhook secret случайное значение не короче 16 символов и сохраните.
- На GitHub откройте Settings репозитория, перейдите в Webhooks и нажмите Add webhook. Укажите этот адрес в Payload URL,
application/jsonв Content type, то же значение в Secret и выберите единственным событием push.
После этого каждый git push в выбранную ветку собирает и публикует новую версию. Если вы изменили переменную, имя которой начинается с NEXT_PUBLIC_, нажмите Redeploy. Если при сборке не хватает памяти, увеличьте сервер в панели.
Ваш домен
Направьте A-запись на IP-адрес сервера. На странице Domains нажмите Add domain, выберите https, введите домен, сохраните и нажмите Redeploy. Сертификат Coolify получит сам.
Закрытие портов 8000, 6001 и 6002
Когда панель открывается по своему HTTPS-адресу, эти порты не нужны. Docker обходит ufw для публикуемых им портов, поэтому ufw их не закроет. Подключитесь по SSH и воспользуйтесь официальным способом Coolify:
cd /data/coolify/source
printf 'services:\n coolify:\n ports: !override\n - "127.0.0.1:8000:8080"\n - "127.0.0.1:6001:6001"\n - "127.0.0.1:6002:6002"\n' > docker-compose.custom.yml
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Последняя команда обновляет установку и переходит на более новую версию, если она есть. Чтобы отменить это, удалите файл и выполните ту же команду.
Полезно знать
Coolify подключается по SSH как root со своим ключом. Если отключить вход root или удалить строку coolify из /root/.ssh/authorized_keys, развёртывание перестанет работать.
Сервера ещё нет? Закажите сервер с установленным Coolify: вы выбираете размер и платите только за выбранное.
Спасибо за отзыв!