-
Notifications
You must be signed in to change notification settings - Fork 14
01.local
-
Скачать и установить Docker Toolbox и VirtualBox
-
Создать Docker Machine
docker-machine create --driver virtualbox default docker-machine start default
-
Настроить Docker Machine
Содержимое результата выполнения команды
docker-machine env default
записать в переменные среды.Например, в Windows 8 нужно перейти в Компьютер - Свойства - Дополнительные параметры системы - Дополнительно - Переменные среды...
C:\>docker-machine env default You can further specify your shell with either 'cmd' or 'powershell' with the --shell flag. SET DOCKER_TLS_VERIFY=1 SET DOCKER_HOST=tcp://192.168.99.100:2376 SET DOCKER_CERT_PATH=C:\Users\Пользователь\.docker\machine\machines\default SET DOCKER_MACHINE_NAME=default SET COMPOSE_CONVERT_WINDOWS_PATHS=true REM Run this command to configure your shell: REM @FOR /f "tokens=*" %i IN ('"C:\Program Files\Docker Toolbox\docker-machine.EXE" env default') DO @%i
Здесь нужно создать 5 переменных от
DOCKER_TLS_VERIFY
доCOMPOSE_CONVERT_WINDOWS_PATHS
Для macOS нужно дополнительно настроить машину, чтобы она корректно работала с NFS разделами. Дело в том, что при использовании docker-machine на macOS появляется проблема с доступами к файлам: владелец и права на файлы не меняются на примонтированных nfs томах.
Один из способов решения - использовать docker-machine-nfs:
brew install docker-machine-nfs docker-machine-nfs default
-
Добавить запись в файл
C:\WINDOWS\System32\Drivers\etc\hosts
192.168.99.100 docker.local 192.168.99.100 mysql
где
192.168.99.100
- это IP адрес из переменнойDOCKER_HOST
-
Запуск проекта в Docker
Внутри папки пользователя (обязательно), например в
C:\Users\Пользователь\Docker
создать новый проект:C:\Users\Пользователь\Docker> composer create-project covex-nn/docker-symfony .
Запустить
docker-compose
, встроенный в PHP web-server и инициализировать проектdocker-compose up -d phing php -S localhost:80 -t public
Сайт проекта будет доступен по адресу http://localhost/
Также, вместе с Docker, можно использовать Nginx и PHP, аналогичные тому, что используется в
production
. Для этого нужно скопироватьdocker-compose.override.yml.dist
вdocker-compose.override.yml
и выполнить команды:docker-compose up -d docker-compose exec php phing
-
Установка Webpack Encore
composer require webpack-encore
Установите Nodejs, а затем пакетный менеджер yarn
npm install --global npm npm install --global yarn
Установите зависимости проекта
yarn install --pure-lockfile
Подробнее об использовании Webpack Encore на сайте symfony.com