Этот проект содержит исходный код для веб -сайта yiiframework.com.
Если вы хотите внести свой вклад, пожалуйста, свяжитесь с нами, используя трекер выпуска.
Установите Docker и Docker Compose.
docker-compose build
docker-compose up
Сайт будет доступен по адресу http: // localhost: 81.
Вы можете использовать Script run_pageres.sh в корне исходного каталога для генерации скриншотов.
При необходимости отрегулируйте локальные файлы конфигурации:
config/console-local.php .config/params-local.php .config/web-local.php . Создайте личный токен GitHub (из раздела «Настройки профиля GitHub»). Вставьте его в файл в каталог data (@app/data) под названием github.token (одна строка, без линии).
Продолжить со следующими командами:
# run migrations
./yii migrate
# fill RBAC
./yii rbac/up
# build contributors page (this may take some time as it downloads a lot of user avatars from github)
./yii contributors/generate
# If you're on Windows you have to manually symlink or copy
# %appdata%/npm/node_modules/browser-sync to your app's node_modules
# The next step is for building the API documentation and the Guide files.
# It is optional for the site to be working but you will have no API docs and Guide.
# This step includes cloning the Yii 1 and Yii 2 repositories and a lot of computation,
# so you might want to skip it on the first install.
#
# This also requires an instance of elasticsearch to be configured and running
# (if you do not have it, it will still run, but the site search will not work).
# It also assumes you have pdflatex installed for building PDF guide docs.
#
# You may also build only parts of the docs, run make help for the available commands.
make docs
# If you are using Docker image, you need to additionally pass VENDOR_DIR:
make docs VENDOR_DIR= $VENDOR_DIR
# Yii 1.0 API docs generation. They are already included in VCS. Run this only if layout has changed.
docker build -f Dockerfile.yii-1.0 -t yiiframeworkcom-yii-1.0 .
docker run -it -v $PWD /data/api-1.0:/code/data/api-1.0 yiiframeworkcom-yii-1.0
# populate the search index by running
./yii search/rebuild
/code/vendor/bin/apidoc guide data/yii-2.0/docs/guide-ru data/docs-offline/yii-docs-2.0-ru --interactive=0
./yii guide " 2.0 " --interactive=0Для импорта данных с старого веб -сайта необходимы следующие шаги:
./yii import./yii badge/rebuild./yii user/ranking .Если у вас нет этих данных, вы можете работать с фиктивным контентом:
./yii fake-data . Вы можете запустить его несколько раз, чтобы генерировать больше данных../yii badge/rebuild ../yii user/ranking . Чтобы назначить пользователям дополнительные разрешения использовать ./yii rbac/assign .
Следующие команды должны быть настроены на регулярную основу:
| командование | интервал | Цель |
|---|---|---|
| yii sitemap/генерировать | ежедневно | Regenerate SiteMap.xml |
| YII участники/генерировать | еженедельно | Обновление списка участников на странице команды |
| yii значок/обновление | почасовой | Обновить значки для пользователей в Badge_queue |
| YII Cron/Update-Packagist | почасовой | Обновление данных расширения Packagist |
| yii пользователь/рейтинг | ежедневно | Обновить рейтинг пользователей |
| YII Github-Progress | почасовой | Обновить данные прогресса GitHub |
Кроме того, queue/listen должна работать как демон или queue/run как cronjob.
Этот раздел охватывает заметки для развертывания на сервере, вам может не понадобиться это для вашего Dev Env. ОС считается, что это Debian "Bullseye".
apt-get install texlive-full python3-pygments git nodejs makeСписок участников и миниатюры Аватара генерируются консольной командой:
./yii contributors/generate Он будет подключаться к GitHub через API и получить список участников, генерировать data/contributors.json data/avatars участники.
Было бы неплохо настроить работу Cron, чтобы запустить это время от времени - возможно, раз в месяц.
commands/ contains console commands (controllers)
config/ contains application configurations
controllers/ contains Web controller classes
data/ contains important data generated by different commands
env/ contains environment-dependent files
assets/
src/
fonts/ contains fonts
scss/ contains Sass source files
js/ contains JS source files
mail/ contains view files for e-mails
models/ contains model classes
node_modules/ contains installed NPM packages
runtime/ contains files generated during runtime
scripts/ contains shell scripts
vendor/ contains dependent 3rd-party packages
views/ contains view files for the Web application
web/ contains the entry script and Web resources
gulp для просмотра View, SASS и JS File Maneing и автоматически создают целевые файлы CSS/JS. Эта команда также запустит окно браузера, которое подключено к BrowserSync.gulp build , чтобы вручную восстановить целевые файлы CSS/JS из файлов Source Sass/JS.gulp watchproduction флаг: gulp build --production или запуск npm run buildassets/src/scss и перечислены в assets/src/scss/all.scss .GuideController имеет файл sass с именем _guide.scss .all.scss , должны иметь ведущее подчеркивание в имени. SASS будет игнорировать файлы, начиная с подчеркивания, так что будет создан только один файл CSS (All.css).all.scss .assets/src/js и перечислены в config.yml .GuideController имеет файл js с именем guide.js