Комментарии 10
В docker шаблонов будет по умолчанию доступен xdebug для dev окружения?
Будет ли решена проблема владельцев файла, если создание происходит через консоль gii?
Уточню.
У меня сейчас развернут проект в окружении docker, если создавать, например модель, через консольную утилиту gii, то файлы создаются по умолчанию владельца root.
Приходится на хосте делать вручную команду chown.
Может есть какие-то способы решения? Или я не правильно использую gii и его надо выполнять на хосте (тогда на хосте надо разворачивать php и настраивать доступ к базе)?
Вполне вероятно что будет и то и то. issue создайте, глянем.
ARG PHP_VERSION
FROM yiisoftware/yii-php:${PHP_VERSION}-apache
ARG UID
ARG GID
ENV UID=${UID:-1000} GID=${GID:-1000}
RUN usermod -u ${UID} www-data; groupmod -g ${GID} www-data; chsh -s /bin/bash www-data
RUN pecl install xdebug; docker-php-ext-enable xdebug
php:
build:
context: ./php
args:
- PHP_VERSION
- UID
- GID
env_file:
- ./.env
PHP_VERSION=7.4
UID=1000
GID=1000
PHP_USER_ID=1000
docker-compose exec php bash # as root
docker-compose exec php su www-data # as current user
Только никому не рассказывайте про этот лайфхак.
Запускать все хозяйство на хосте я как-то научился
volumes:
- /etc/passwd:/etc/passwd:ro
- /etc/group:/etc/group:ro
PHP_EXTRA_CONFIGURE_ARGS=--enable-fpm --with-fpm-user=stepan --with-fpm-group=users
PHP_USER_NAME=stepan
PHP_USER_GROUP=users
NGINX_USER_NAME=stepan
NGINX_USER_GROUP=users
NGINX_UID=1000
NGINX_GID=985
Но ваш лайфак всё в корне переворачивает и делает гибче.
Больше информации хотелось видеть по работе с бд, формами в документации, это то что тормозит использование 3 версии.
Cycle, ActiveRecord.
Не нашел информации по создании миграции как в 2й версии, какой подход сейчас? Как в симфония через аннотации? Пример был бы кстати
Да, сейчас фокус сместился на код, документацию в следующей итерации обновим. Для Cycle есть родная документация и мини-гайд в пакете интеграции: https://github.com/yiisoft/yii-cycle/blob/master/docs/ru/README.md
Не нашел информации по создании миграции как в 2й версии, какой подход сейчас?
В Cycle миграции есть в пакете интеграции. Там можно через аннотации.
Для db есть https://github.com/yiisoft/yii-db-migration. Там подход как в Yii 2.
Александр, возможно ли ожидать, что появятся аннотации для, как в symfony для роутинга?
Круто! Надеюсь, что новый yii3 будет улучшен в сторону производительности, а не в сторону гибкости. По мне так некоторые вещи должны быть строго указаны, мол либо делаем так, либо ты получаешь не тот результат, который ожидаешь. Простые вещи как, а вдруг разработчик вместо $class = '.error', сделает $class='error', так фреймворк проверит и добавит точку (как пример), в конечном результате получаем большие затраты на время рендера, т.к. таких гибких вещей становится много.
Новости Yii 2020, выпуск 7