Понимание :
Блэкфайр:
После того, как вы установили Docker, пришло время создать проект.
В этом проекте используются файлы среды Docker, чтобы обеспечить настройку в соответствии с вашими потребностями, поэтому вам НЕОБХОДИМО определить файл .env для запуска сборки.
Чтобы работать лучше, Docker может заблокировать установку ваших зависимостей и вернуть ошибку или никогда не менять вашу конфигурацию PHP, мы рекомендуем удалить все ваши изображения/контейнеры перед сборкой проекта.
docker stop $( docker ps -a -q )
docker rm $( docker ps -a -q )
docker rmi $( docker images -a -q ) -f
Обратите внимание, что выполнение этой команды может занять несколько минут.
Как только это будет сделано, давайте построим проект.
cp .env.dist .env
Обновите информацию, связанную с Docker, затем используйте Docker-Compose:
docker-composer up -d --build
Затем вы должны использовать Composer для запуска приложения:
docker exec -it project_php-fpm sh
# Use Composer inside the container for better performances.
composer install
composer clear-cache
composer dump-autoload --optimize --classmap-authoritative --no-dev
# Configure BDD
./bin/console d:s:c # for classic users
# Fixtures
./bin/console d:f:l -n
Как только это будет сделано, получите доступ к проекту через браузер:
http://localhost:port/
Для производственного подхода необходимо обновить файл .env и изменить ключи APP_ENV и APP_DEBUG.
http://localhost:port/
Если вам нужно выполнить некоторые задачи:
docker exec -it project_php-fpm sh
Оказавшись в контейнере:
# Example for clearing the cache
./bin/console c:c --env=prod || rm -rf var/cache/ *
Обратите внимание, что вы ДОЛЖНЫ открыть второй терминал, чтобы сохранить git или другую командную строку за пределами Docker.
cd core
php bin/console s:r || ./bin/console s:r || make serve
Затем войдите в проект через браузер:
http://localhost:8000
Команды, перечисленные выше, остаются доступными и необходимыми для этого подхода.
Этот проект полностью протестирован и сопровождается PHPUnit и Behat, таким образом, наш код легко поддерживать и обновлять. Вот подробности покрытия:
Чтобы запустить тесты, вот процесс:
Обязательно создайте контейнеры/сервисы.
docker exec -it project_php-fpm sh
phpunit -v
vendor/bin/behat
Как только это будет сделано, вы должны увидеть разные результаты тестов.