1.Установка и настройка
1.1.Требования
- Git
- PHP: 7.0 и выше
- PHP Composer
- Расширения PHP: mbstring, xml, gd, zip, PDO
- Функции PHP: pcntl_signal (только для работы обработчика через менеджер очередей)
- Сервер базы данных:
— MySQL 5.5 и выше
— PostgreSQL 9.4 и выше - Сервисы кэширования:
— Локальный диск
— Memcached
— Redis
1.2.Установка
Выгружаем файлы из репозитория:
$ git clone https://github.com/pgallery/gallery.git
Устанавливаем необходимые компоненты:
$ cd gallery $ composer install
Копируем конфигурационный файл из шаблона:
$ cp .env.example .env
Производим настройку конфигурационного файла.
По завершению создаем структуру базы данных и загружаем данные, необходимые для работы галереи:
$ ./artisan migrate $ ./artisan db:seed
Создаем кэш роутов:
$ ./artisan route:cache
1.3.Обработчик
Для ускорения работы галереи через браузер, все операции по обработке изображений (создание миниатюр и т.п.) происходят в фоновом режиме. Создано 2 варианта обработчика.
Обработчик через cron:
Необходимо прописать в crontab задание:
* * * * * /PATH/TO/artisan schedule:run >/dev/null 2>&1
Обработчик через менеджер очередей:
Необходимо запустить воркер:
/PATH/TO/artisan queue:work --queue=BuildImage,ArchivesClean
Если нет возможности запустить воркер в фоновом режиме, рекомендуется использовать обработчик через cron.
2.Установка без git
Установка без git
php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php php composer-setup.php --install-dir=./bin --filename=composer php -r "unlink('composer-setup.php');" chmod +x ./bin/composer wget https://github.com/pgallery/gallery/archive/master.zip unzip master.zip ln -s gallery-master/public public_html cd gallery-master ~/bin/composer install
3.Настройка
Ниже описаны лишь те параметры, которые нужны для запуска галереи. Для получения информации об остальных параметрах, рекомендую обратиться к официальной документации Laravel 5.
Базовые параметры:
APP_NAME — наименование приложения. Например: MyGallery.
APP_KEY — ключ приложения. Генерируется командой:
$ ./artisan key:generate
APP_URL — URL сайта
Параметры подключения к базе данных:
DB_CONNECTION — драйвер базы данных. mysql — для сервера MySQL, pgsql — для сервера PostgreSQL
DB_HOST — host на котором расположен сервер базы данных
DB_DATABASE — имя базы данных
DB_USERNAME — имя пользователя базы данных
DB_PASSWORD — пароль пользователя базы данных
3.1.Рекомендуемые параметры PHP
- max_execution_time: 360
- max_file_uploads: 250
- memory_limit: 256Mb
- post_max_size: 256Mb
- upload_max_filesize: 256Mb
4.Роли пользователей
Роли пользователей
Наименование | Доступ в админку | Возможности |
---|---|---|
admin | Да | Выполнение всех действий |
moderator | Да | Лишен возможностей управления группами и полного удаления объектов |
operator | Да | Имеет возможность управления собственными альбомами и изображениями (не реализовано) |
viewer | Нет | Просмотр с отображением скрытых альбомов (не реализовано) |
guest | Нет | Только просмотр и скачивание архивов альбомов (выдается по умолчанию при регистрации) |
5.Обновление
Получаем изменения из репозитория:
$ git pull
Обновляем компоненты:
$ composer update
Выполняем миграцию изменений структуры базы данных:
$ ./artisan migrate
Сбрасываем кэши:
$ ./artisan route:clear $ ./artisan cache:clear
Создаем кэш роутов:
$ ./artisan route:cache
6.Установка Docker
7.Вспомогательные команды
Вспомогательные команды предназначены для изменения данных по средствам их вызова в консоле сервера.
Включение и отключение использования обработчика очередей:
php artisan queues enabled
Редактирование пользователя:
php artisan usermod admin@example.com \ --email=new@email.com \ --password=NewMyPass \ --google2fa=disabled
admin@example.com — E-Mail пользователя, которому меняются данные.
—email — новый E-Mail.
—password — новый пароль.
—google2fa — включает/выключает (enabled/disabled соответственно) двухфакторную авторизацию.
Обязательным параметром является E-Mail пользователя. Остальные параметры указываются опционально.