Devilbox
Devilbox - это инструмент для локальной разработки веб-приложений, который обеспечивает полную среду для работы с веб-технологиями, такими как PHP, Apache, Nginx, MySQL, Redis и многими другими.
Devilbox может использоваться для разработки и тестирования веб-приложений на своем компьютере, без необходимости установки и настройки каждой индивидуальной компоненты вручную. Это значительно ускоряет процесс разработки и позволяет сосредоточиться на создании приложения, вместо того, чтобы тратить время на настройку окружения.
Devilbox также может использоваться для разработки приложений на других языках программирования, таких как Python и Ruby, благодаря тому, что он обеспечивает полную среду для работы с веб-технологиями.
Как пользоваться Devilbox?
- Установка Devilbox Скачайте Devilbox с официального сайта (https://devilbox.org/) и следуйте инструкциям по установке для вашей операционной системы.
- Запуск Devilbox Чтобы запустить Devilbox, перейдите в каталог Devilbox и выполните команду:
./start.sh
- Создание проекта Создайте каталог для вашего проекта в каталоге Devilbox, например:
cd ~/devilbox mkdir myproject
- Настройка виртуального хоста Создайте файл
docker-compose.override.ymlв каталоге Devilbox с содержимым:
version: '3.6' services: httpd: volumes: - ../myproject:/srv/www/:delegated ports: - "80:80"
Этот файл настраивает Apache в Devilbox для обслуживания виртуального хоста myproject.devilbox.loc и связывает каталог myproject с /srv/www/myproject в контейнере.
- Запуск веб-сервера Выполните команду:
./reload.sh
Эта команда перезапускает веб-сервер с новыми настройками.
- Тестирование Откройте браузер и введите адрес
http://myproject.devilbox.loc.
- Добавление базы данных Чтобы добавить базу данных для вашего проекта, выполните следующие шаги:
- Создайте каталог
data/mysql/myprojectв каталоге Devilbox. - Создайте файл
docker-compose.override.ymlв каталоге Devilbox с содержимым:
version: '3.6' services: db: volumes: - ../data/mysql/myproject:/var/lib/mysql/:delegated environment: MYSQL_DATABASE: myproject MYSQL_USER: user MYSQL_PASSWORD: password
Этот файл настраивает MySQL в Devilbox для создания базы данных myproject и пользователя user с паролем password.
- Запустите базу данных, выполнив команду:
./reload.sh
- Добавление других компонентов Devilbox поддерживает множество других компонентов, таких как Redis, Memcached, RabbitMQ и многие другие. Чтобы добавить эти компоненты, создайте файл
docker-compose.override.ymlс необходимыми настройками.
Например, чтобы добавить Redis, создайте файл docker-compose.override.yml с содержимым:
version: '3.6' services: redis: image: redis
- Остановка Devilbox Чтобы остановить Devilbox, выполните команду:
./stop.sh
Это остановит все контейнеры, связанные с Devilbox.
***
Конфигурирование версий PHP и MySQL в Devilbox может быть очень полезным, особенно если вы разрабатываете приложение, которое работает только с определенной версией PHP или MySQL.
Смена версии PHP Для смены версии PHP в Devilbox нужно выполнить следующие шаги:
Откройте файл docker-compose.override.yml в редакторе кода.
Добавьте или измените секцию php с нужной версией PHP. Например, чтобы использовать PHP версии 7.4, добавьте следующую секцию:
version: '3.6' services: php: image: devilbox/php-fpm:7.4-work
И сохраните файл.
Теперь Devilbox будет использовать PHP версии 7.4.
Смена версии MySQL Для смены версии MySQL в Devilbox нужно выполнить следующие шаги:
Откройте файл docker-compose.override.yml в редакторе кода.
Добавьте или измените секцию db с нужной версией MySQL. Например, чтобы использовать MySQL версии 5.7, добавьте следующую секцию:
version: '3.6' services: db: image: mysql:5.7
И сохраните файл.
Теперь Devilbox будет использовать MySQL версии 5.7.
Вывод Devilbox - это мощный инструмент для локальной разработки веб-приложений, который обеспечивает полную среду для работы с веб-технологиями. С его помощью вы можете быстро и легко настроить локальную среду для работы с PHP и другими веб-технологиями, что упрощает и ускоряет процесс разработки и тестирования приложений. Хотя он может показаться сложным для новичков, он предлагает множество возможностей и гибкости, чтобы настроить его под любой проект.
