Docker Compose
Узнайте, как использовать Docker Compose с Skitflow
Skitflow интегрируется с Docker Compose и Docker Stack для предоставления гибких решений развертывания. Независимо от того, разрабатываете ли вы локально или развертываете в масштабе, Skitflow упрощает управление приложениями с помощью этих мощных инструментов Docker.
Методы конфигурации
Skitflow предоставляет два метода создания конфигураций Docker Compose:
- Docker Compose: Идеально подходит для стандартных конфигураций Docker Compose.
- Stack: Ориентирован на оркестрацию приложений с использованием Docker Swarm. Обратите внимание, что некоторые функции Docker Compose, такие как
build, недоступны в этом режиме.
Общие настройки
Настройте источник вашего кода, способ сборки приложения, а также управляйте такими действиями, как развертывание, обновление, удаление и остановка вашего приложения.
Переменные окружения
Редактор кода в Skitflow позволяет указать переменные окружения для вашего файла Docker Compose. По умолчанию Skitflow создает файл .env в указанном пути к файлу Docker Compose.
Мониторинг
Мониторьте каждый сервис отдельно в Skitflow. Если ваше приложение состоит из нескольких сервисов, каждый из них можно мониторить отдельно для обеспечения оптимальной производительности.
Логи
Получите доступ к подробным логам каждого сервиса через средство просмотра логов Skitflow, что помогает в устранении неполадок и обеспечении стабильности ваших сервисов.
Развертывания
Вы можете просмотреть последние 10 развертываний вашего приложения. Когда вы развертываете приложение в реальном времени, создается новая запись развертывания, которая постепенно показывает процесс сборки вашего приложения.
Мы также предлагаем кнопку для отмены развертываний, находящихся в очереди. Обратите внимание, что развертывания в процессе выполнения отменить нельзя.
Мы предоставляем вебхук, чтобы вы могли запускать собственные развертывания при отправке изменений в репозиторий GitHub, Gitea, GitLab, Bitbucket.
Расширенные настройки
Этот раздел предоставляет расширенные параметры конфигурации для опытных пользователей. Он включает инструменты для выполнения пользовательских команд внутри контейнера и управления томами.
- Command: Skitflow имеет определенную команду для запуска файла Docker Compose, обеспечивая полный контроль через пользовательский интерфейс. Однако вы можете добавить флаги или опции к команде.
- Volumes: Для обеспечения сохранности данных между развертываниями настройте тома хранения для вашего приложения.
Тома
Docker-тома — это способ сохранения данных, генерируемых и используемых контейнерами Docker. Они особенно полезны для сохранения данных между перезапусками контейнеров или для обмена данными между различными контейнерами.
Для привязки тома к хост-машине вы можете использовать следующий синтаксис в файле docker-compose.yml, но при этом тома будут очищаться при каждом новом развертывании:
volumes:
- "/folder:/path/in/container" ❌Рекомендуется использовать папку ../files для обеспечения сохранности данных между развертываниями. Например:
volumes:
- "../files/my-database:/var/lib/mysql" ✅
- "../files/my-configs:/etc/my-app/config" ✅Важно: Если вам нужно использовать файлы из вашего репозитория (конфигурационные файлы, скрипты и т.д.), вы должны переместить их в File Mounts Skitflow (через Advanced -> Mounts) вместо прямого монтирования из репозитория. При использовании AutoDeploy Skitflow выполняет git clone при каждом развертывании, что очищает директорию репозитория. Монтирование файлов напрямую из репозитория с использованием относительных путей (например, ./ или ./config/file.conf) приведет к их потере или пустому содержимому при последующих развертываниях. Подробнее смотрите в руководстве по устранению неполадок.
Горячие клавиши
Для ускорения навигации встроены горячие клавиши для переключения между вкладками на страницах Docker Compose. Аналогично GitHub, все они начинаются с клавиши g — нажмите g, а затем клавишу быстрого доступа.
| Клавиша | Вкладка |
|---|---|
g | General |
e | Environment |
u | Domains |
d | Deployments |
b | Backups |
s | Schedules |
v | Volume Backups |
l | Logs |
m | Monitoring |
a | Advanced |