Lychee — великолепная система управления фотографиями для Linux
Lychee – это бесплатная, элегантная и простая в использовании система управления фотографиями с открытым исходным кодом, которая оснащена всеми необходимыми функциями для безопасного управления фотографиями и обмена ими на вашем сервере. Он позволяет вам легко управлять (загружать, перемещать, переименовывать, описывать, удалять или искать) своими фотографиями за считанные секунды с помощью простого веб-приложения.
Особенности личи
- Потрясающий красивый интерфейс для управления всеми вашими фотографиями в одном месте, прямо из браузера.
- Обмен фотографиями и альбомами в один клик с защитой паролем.
- Просматривайте все свои изображения в полноэкранном режиме с помощью навигации вперед и назад с помощью клавиатуры или позвольте другим просматривать ваши фотографии, сделав их общедоступными.
- Поддерживает импорт фотографий из различных источников: локальный хост, Dropbox, удаленный сервер или по ссылке.
Чтобы установить Lychee, все, что вам нужно, — это работающий веб-сервер, например Apache или Nginx с PHP 5.5 или более поздней версии и MySQL. -База данных.
Для целей этой статьи я установлю систему управления фотографиями Lychee с Nginx, PHP-FPM 7.0 и . MariaDB на RHEL 8 VPS с доменным именем lychee.example.com.
Шаг 1. Установите Nginx, PHP и MariaDB.
1. Сначала начните с установки Nginx, PHP с необходимыми расширениями и базы данных MariaDB, чтобы настроить среду хостинга. чтобы запустить Личи.
На Cent/RHEL/Rocky Linux и AlmaLinux
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
yum install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
yum install yum-utils
yum-config-manager --enable remi-php74 [Install PHP 7.4]
yum install nginx php php-fpm php-mysqli php-exif php-mbstring php-json php-zip php-gd php-imagick mariadb-server mariadb-client
В Ubuntu и Debian
sudo apt install nginx php php-fpm php-mysqli php-exif php-mbstring php-json php-zip php-gd php-imagick mariadb-server mariadb-client
2. После установки необходимых пакетов запустите службы nginx, php-fpm и mariadb, включите их во время загрузки и проверьте, работают ли эти службы.
------------ CentOS/RHEL ------------
systemctl start nginx php-fpm mariadb
systemctl status nginx php-fpm mariadb
systemctl enable nginx php-fpm mariadb
------------ Debian/Ubuntu ------------
sudo systemctl start nginx php7.4-fpm mysql
sudo systemctl status nginx php7.4-fpm mysql
sudo systemctl enable nginx php7.4-fpm mysql
3. Далее, если в вашей системе включен брандмауэр, вам необходимо открыть порты 80 и 443 в брандмауэре, чтобы разрешить клиенту запросы к веб-серверу Nginx по протоколам HTTP и HTTPS соответственно, как показано.
------------ Debian/Ubuntu ------------
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
------------ CentOS/RHEL ------------
firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --zone=public --permanent --add-port=443/tcp
firewall-cmd --reload
4. Для эффективной работы Lychee рекомендуется увеличить значения следующих свойств в файле php.ini
.
vim /etc/php/php.ini #CentOS/RHEL
sudo vim /etc/php/7.4/fpm/php.ini #Ubuntu/Debian
Найдите эти параметры PHP и измените их значения на:
max_execution_time = 200
post_max_size = 100M
upload_max_size = 100M
upload_max_filesize = 20M
memory_limit = 256M
5. Теперь настройте PHP-FPM, чтобы задать пользователя и группу, прослушивайте файл сокета www.conf
, как описано.
vim /etc/php-fpm.d/www.conf #CentOS/RHEL
sudo vim /etc/php/7.0/fpm/pool.d/www.conf #Ubuntu/Debian
Найдите приведенные ниже директивы, чтобы настроить пользователя/группу процессов Unix (измените www-data на nginx в CentOS).
user = www-data
group = www-data
Также измените директиву listen, позволяющую принимать запросы FastCGI к сокету Unix.
listen = /run/php/php7.4-fpm.sock
И установите соответствующие права владения для сокета Unix с помощью директивы (измените www-data на nginx в CentOS/RHEL).
listen.owner = www-data
listen.group = www-data
Сохраните файл и перезапустите службы nginx и php-fpm.
systemctl restart nginx php-fpm #CentOS/RHEL
sudo systemctl restart nginx php7.4-fpm #Ubuntu/Debian
Шаг 2. Безопасная установка MariaDB
6. На этом этапе вы должны защитить установку базы данных MariaDB (которая по умолчанию не защищена, если она установлена в новой системе), запустив сценарий безопасности, который поставляется с бинарный пакет.
Выполните следующую команду от имени пользователя root, чтобы запустить скрипт.
sudo mysql_secure_installation
Вам будет предложено установить пароль root, удалить анонимных пользователей, отключить удаленный вход в систему root и удалить тестовую базу данных. После создания пароля root ответьте yes/y
на остальные вопросы.
Enter current password for root (enter for none):
Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
Шаг 3. Установите систему управления фотографиями Lychee
7. Чтобы установить Lychee, сначала необходимо создать для него базу данных с соответствующими разрешениями, используя следующие команды.
sudo mysql -u root -p
MariaDB [(none)]> CREATE DATABASE lychee;
MariaDB [(none)]> CREATE USER 'lycheeadmin'@'localhost' IDENTIFIED BY '=@!#@%$Lost';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON lychee.* TO 'lycheeadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit
8. Затем перейдите в корень веб-документа и скачайте последнюю версию Lychee с помощью инструмента командной строки git, как показано.
cd /var/www/html/
sudo git clone --recurse-submodules https://github.com/LycheeOrg/Lychee.git
9. Затем установите правильные разрешения и владельца для каталога установки, как показано (замените admin именем пользователя в вашей системе).
------------ CentOS/RHEL ------------
chown admin:nginx -R /var/www/html/Lychee/public
chmod 775 -R /var/www/html/Lychee/public
------------ Debian/Ubuntu ------------
sudo chown admin:www-data -R /var/www/html/Lychee/public
sudo chmod 775 -R /var/www/html/Lychee/public
10. На этом этапе вам необходимо настроить composer в каталоге установки lychee, который будет использоваться для установки зависимостей PHP.
cd Lychee/
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
php composer.phar update
Шаг 4. Настройте блок сервера Nginx для Lychee
12. Далее вам необходимо создать и настроить блок сервера Nginx для приложения Lychee в /etc/nginx/conf.d/.
vim /etc/nginx/conf.d/lychee.conf
Добавьте следующую конфигурацию в приведенный выше файл, не забудьте использовать собственное доменное имя вместо lychee.example.com (это всего лишь фиктивный домен).
server {
listen 80;
server_name lychee.example.com;
root /var/www/html/Lychee/public;
index index.html;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Затем сохраните файл и перезапустите веб-сервер Nginx и PHP-FPM, чтобы применить последние изменения.
systemctl restart nginx php-fpm #CentOS/RHEL
sudo systemctl restart nginx php7.0-fpm #Ubuntu/Debian
Шаг 5. Завершите установку Lychee через веб-браузер.
13. Теперь используйте URL-адрес lychee.example.com
, чтобы открыть веб-установщик Lychee в браузере, укажите настройки подключения к базе данных и введите имя базы данных, для которой вы создали личи и нажмите Подключиться.
14. Затем введите имя пользователя и пароль для вашей установки и нажмите Создать логин. После входа в систему вы попадете на панель администратора, которая содержит Альбомы по умолчанию, как показано на следующем снимке экрана.
Чтобы загрузить фотографию, импортировать ее по ссылке, импортировать из Dropbox или с другого сервера или добавить альбом, нажмите знак +
. А чтобы просмотреть фотографии в альбоме, просто нажмите на него.
Для получения дополнительной информации посетите домашнюю страницу Lychee: https://lycheeorg.github.io/
Lychee — это простая в использовании и элегантная PHP-система управления фотографиями с открытым исходным кодом, предназначенная для управления фотографиями и обмена ими. Если у вас есть какие-либо вопросы или комментарии, используйте форму ниже, чтобы написать нам.