Vyhledávání na webu

Liči – skvěle vypadající systém správy fotografií pro Linux


Lychee je bezplatný, otevřený, elegantní a snadno použitelný systém pro správu fotografií, který přichází se všemi nezbytnými funkcemi, které potřebujete pro bezpečnou správu a sdílení fotografií na vašem serveru. Umožňuje snadno spravovat (nahrávat, přesouvat, přejmenovávat, popisovat, mazat nebo vyhledávat) své fotografie během několika sekund z jednoduché webové aplikace.

Vlastnosti liči

  • Úžasné, krásné rozhraní pro správu všech vašich fotografií na jednom místě přímo z vašeho prohlížeče.
  • Sdílení fotografií a alb jedním kliknutím s ochranou heslem.
  • Prohlédněte si všechny své obrázky v režimu celé obrazovky s navigací vpřed a vzad pomocí klávesnice nebo nechte ostatní procházet vaše fotografie tím, že je zveřejníte.
  • Podporuje import fotografií z různých zdrojů: localhost, Dropbox, vzdálený server nebo pomocí odkazu.

Chcete-li nainstalovat Lychee, vše, co potřebujete, je spuštěný webový server, jako je Apache nebo Nginx s PHP 5.5 nebo novější a MySQL -databáze.

Pro účely tohoto článku budu instalovat systém správy fotografií Lychee s Nginx, PHP-FPM 7.0 a MariaDB na RHEL 8 VPS s názvem domény lychee.example.com.

Krok 1: Nainstalujte Nginx, PHP a MariaDB

1. Nejprve začněte instalací Nginx, PHP s potřebnými rozšířeními a databáze MariaDB pro nastavení hostitelského prostředí spustit Liči.

Na Cent/RHEL/Rocky Linux a 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

Na Ubuntu a Debianu

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. Jakmile nainstalujete potřebné balíčky, spusťte služby nginx, php-fpm a mariadb, povolte při spouštění a zkontrolujte, zda jsou tyto služby v provozu.

------------ 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. Dále, pokud máte ve svém systému povolenou bránu firewall, musíte ve bráně firewall otevřít porty 80 a 443, aby klient mohl požadavky na webový server Nginx na HTTP a HTTPS, jak je znázorněno.

------------ 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. Pro efektivní provoz Lychee se doporučuje zvýšit hodnoty následujících vlastností v souboru php.ini.

vim /etc/php/php.ini			#CentOS/RHEL
sudo vim /etc/php/7.4/fpm/php.ini     #Ubuntu/Debian 

Vyhledejte tyto parametry PHP a změňte jejich hodnoty na:

max_execution_time = 200
post_max_size = 100M
upload_max_size = 100M
upload_max_filesize = 20M
memory_limit = 256M

5. Nyní nakonfigurujte PHP-FPM pro nastavení uživatele a skupiny, naslouchání soketu www.conf souboru, jak je vysvětleno.

vim /etc/php-fpm.d/www.conf		        #CentOS/RHEL
sudo vim /etc/php/7.0/fpm/pool.d/www.conf	#Ubuntu/Debian

Pro nastavení uživatele/skupiny procesů Unixu vyhledejte direktivy níže (změňte www-data na nginx v systému CentOS).

user = www-data
group = www-data

Změňte také direktivu listen, podle které chcete přijímat požadavky FastCGI na Unixový socket.

listen = /run/php/php7.4-fpm.sock

A nastavte příslušná oprávnění vlastnictví pro soket Unix pomocí direktivy (změňte www-data na nginx na CentOS/RHEL).

listen.owner = www-data
listen.group = www-data

Uložte soubor a restartujte služby nginx a php-fpm.

systemctl restart nginx php-fpm              #CentOS/RHEL
sudo systemctl restart nginx php7.4-fpm      #Ubuntu/Debian

Krok 2: Zabezpečená instalace MariaDB

6. V tomto kroku byste měli zabezpečit instalaci databáze MariaDB (která je ve výchozím nastavení nezabezpečená, pokud je nainstalována na novém systému), spuštěním bezpečnostního skriptu, který je součástí binární balíček.

Spuštěním následujícího příkazu jako root spusťte skript.

sudo mysql_secure_installation

Budete vyzváni k nastavení hesla root, odebrání anonymních uživatelů, zakázání vzdáleného přihlášení root a odebrání testovací databáze. Po vytvoření hesla uživatele root a na zbývající otázky odpovězte ano/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

Krok 3: Nainstalujte Lychee Photo Management System

7. Chcete-li nainstalovat Lychee, musíte pro něj nejprve vytvořit databázi s příslušnými oprávněními pomocí následujících příkazů.

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. Dále se přesuňte do kořenového adresáře webového dokumentu a stáhněte si nejnovější verzi Lychee pomocí nástroje příkazového řádku git, jak je znázorněno.

cd /var/www/html/
sudo git clone --recurse-submodules https://github.com/LycheeOrg/Lychee.git

9. Poté nastavte správná oprávnění a vlastnictví v instalačním adresáři, jak je znázorněno (nahraďte admin ve vašem systému uživatelským jménem).

------------ 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. V tomto kroku musíte v instalačním adresáři lychee nastavit composer, který bude použit k instalaci závislostí 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

Krok 4: Nakonfigurujte Nginx Server Block pro Lichee

12. Dále musíte vytvořit a nakonfigurovat blok serveru Nginx pro aplikaci Lychee pod /etc/nginx/conf.d/.

vim /etc/nginx/conf.d/lychee.conf

Přidejte následující konfiguraci do výše uvedeného souboru, nezapomeňte použít svůj vlastní název domény místo lychee.example.com (toto je pouze fiktivní doména).

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;
	}
}

Poté soubor uložte a restartujte webový server Nginx a PHP-FPM, abyste použili poslední změny.

systemctl restart nginx php-fpm              #CentOS/RHEL
sudo systemctl restart nginx php7.0-fpm      #Ubuntu/Debian

Krok 5: Dokončete instalaci liči přes webový prohlížeč

13. Nyní použijte adresu URL lychee.example.com k otevření webového instalačního programu Lychee ve vašem prohlížeči a zadejte nastavení připojení k databázi a zadejte název databáze, kterou jste vytvořili liči a klikněte na Připojit.

14. Dále zadejte uživatelské jméno a heslo pro vaši instalaci a klikněte na Vytvořit přihlášení. Po přihlášení se dostanete na administrační panel, který obsahuje výchozí Alba, jak je znázorněno na následujícím snímku obrazovky.

Chcete-li nahrát fotografii nebo importovat z odkazu nebo importovat z Dropboxu nebo z jiného serveru nebo přidat album, klikněte na znaménko +. A pro zobrazení fotografií v albu na něj jednoduše klikněte.

Pro více informací navštivte domovskou stránku Lychee: https://lycheeorg.github.io/

Lychee je open source, snadno použitelný a elegantní systém PHP pro správu fotografií pro správu a sdílení fotografií. Pokud máte nějaké dotazy nebo připomínky, napište nám pomocí formuláře níže.