Lychee - Sistema ta' Ġestjoni tar-Ritratti li tħares mill-Kbir għal Linux


Lychee hija sistema ta’ ġestjoni tar-ritratti b’xejn, open-source, eleganti u faċli biex tużah, li tiġi bil-karatteristiċi kollha meħtieġa li għandek bżonn biex timmaniġġja u taqsam ir-ritratti b’mod sigur fuq is-server tiegħek. Jippermettilek timmaniġġja faċilment (ttella’, timxi, tibdel isem, tiddeskrivi, tħassar jew tfittex) ir-ritratti tiegħek f’sekondi minn applikazzjoni sempliċi tal-web.

  • Interface mill-isturdament u sabiħa biex timmaniġġja r-ritratti kollha tiegħek f'post wieħed, dritt mill-browser tiegħek.
  • Klikkja waħda ta' ritratti u albums bi protezzjoni bil-password.
  • Ara l-immaġini kollha tiegħek fil-modalità ta' skrin sħiħ b'navigazzjoni bil-quddiem u b'lura billi tuża t-tastiera tiegħek jew ħalli oħrajn jibbrawżjaw ir-ritratti tiegħek billi tagħmilhom pubbliċi.
  • Jappoġġja l-importazzjoni ta' ritratti minn diversi sorsi: localhost, Dropbox, server remot, jew bl-użu ta' link.

Biex tinstalla Lychee, dak kollu li għandek bżonn huwa web-server li jaħdem bħal Apache jew Nginx b'PHP 5.5 jew aktar tard u MySQL-Database.

Għall-iskop ta 'dan l-artikolu, se ninstalla sistema ta' ġestjoni tar-ritratti Lychee b'Nginx, PHP-FPM 7.0, u MariaDB fuq RHEL 8 VPS bl-isem tad-dominju lychee.example.com.

Pass 1: Installa Nginx, PHP, u MariaDB

1. L-ewwel ibda billi tinstalla Nginx, PHP b'estensjonijiet meħtieġa, u database MariaDB biex twaqqaf ambjent ta 'akkoljenza biex tmexxi Lychee.

# 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
$ 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. Ladarba tkun installat il-pakketti meħtieġa, ibda s-servizzi nginx, php-fpm, u mariadb, ppermettihom fil-ħin tal-ibbutjar u ċċekkja jekk dawn is-servizzi humiex qed jaħdmu.

------------ 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. Sussegwentement, jekk għandek firewall attivat fis-sistema tiegħek, għandek bżonn tiftaħ il-portijiet 80 u 443 fil-firewall biex tippermetti talbiet tal-klijenti lis-server tal-web Nginx fuq HTTP u HTTPS rispettivament, kif muri.

------------ 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. Sabiex titħaddem Lychee b'mod effettiv, huwa rakkomandat li jiżdiedu l-valuri tal-proprjetajiet li ġejjin fil-fajl php.ini.

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

Fittex għal dawn il-parametri PHP u biddel il-valuri tagħhom għal:

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

5. Issa kkonfigurat PHP-FPM biex tissettja l-utent u l-grupp, isma socket www.conf fajl kif spjegat.

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

Fittex id-direttivi hawn taħt biex tissettja l-utent/grupp ta 'proċessi Unix (ibiddlu www-data għal nginx fuq CentOS).

user = www-data
group = www-data

Ukoll, ibdel id-direttiva tas-smigħ li fuqha taċċetta talbiet FastCGI għal socket Unix.

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

U waqqaf il-permessi ta 'sjieda xierqa għas-socket Unix billi tuża d-direttiva (biddlu www-data għal nginx fuq CentOS/RHEL).

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

Issejvja l-fajl u erġa ibda s-servizzi nginx u php-fpm.

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

Pass 2: Installazzjoni Sikura MariaDB

6. F'dan il-pass, għandek tiżgura l-installazzjoni tad-database MariaDB (li mhix assigurata awtomatikament jekk tkun installata fuq sistema ġdida), billi tħaddem l-iskrittura tas-sigurtà li jiġi mal-pakkett binarju.

Mexxi l-kmand li ġej bħala root, biex tniedi l-iskrittura.

$ sudo mysql_secure_installation

Inti se tintalab biex tissettja password tal-għeruq, tneħħi utenti anonimi, tiddiżattiva l-login tal-għeruq mill-bogħod u tneħħi d-database tat-test. Wara li toħloq password root, u wieġeb iva/y għall-bqija tal-mistoqsijiet.

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

Pass 3: Installa Lychee Photo Management System

7. Biex tinstalla Lychee, l-ewwel, għandek bżonn toħloq database għaliha bil-permessi xierqa billi tuża l-kmandi li ġejjin.

$ sudo mysql -u root -p
MariaDB [(none)]> CREATE DATABASE lychee; 
MariaDB [(none)]> CREATE USER 'lycheeadmin'@'localhost' IDENTIFIED BY '[email !#@%$Lost';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON  lychee.* TO 'lycheeadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

8. Sussegwentement, mur fl-għerq tad-dokument tal-web u aqbad l-aħħar verżjoni ta 'Lychee billi tuża l-għodda tal-linja tal-kmand git, kif muri.

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

9. Imbagħad issettja l-permessi korretti u s-sjieda fuq id-direttorju tal-installazzjoni kif muri (issostitwixxi admin b'isem tal-utent fis-sistema tiegħek).

------------ 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. F'dan il-pass, għandek bżonn twaqqaf kompożitur fid-direttorju tal-installazzjoni tal-lychee, li se jintuża biex jiġu installati dipendenzi 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

Pass 4: Ikkonfigura Nginx Server Block għal Lychee

12. Sussegwentement, għandek bżonn toħloq u tikkonfigura blokka tas-server Nginx għall-applikazzjoni Lychee taħt /etc/nginx/conf.d/.

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

Żid il-konfigurazzjoni li ġejja fil-fajl ta 'hawn fuq, ftakar li tuża l-isem tad-dominju tiegħek minflok lychee.example.com (dan huwa biss dominju finta).

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

Imbagħad issalva l-fajl u erġa ibda s-server tal-web Nginx u PHP-FPM biex tapplika l-bidliet riċenti.

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

Pass 5: Imla l-Installazzjoni tal-Lychee Permezz tal-Web Browser

13. Issa uża l-URL lychee.example.com biex tiftaħ l-installatur tal-web Lychee fil-brawżer tiegħek u ipprovdi s-settings tal-konnessjoni tad-database tiegħek u daħħal l-isem tad-database li ħloqt għal lychee u kklikkja Ikkonnettja.

14. Sussegwentement, daħħal username u password għall-installazzjoni tiegħek u kklikkja Oħloq Login. Wara l-login, int se tinżel fid-dashboard tal-amministratur li fih l-Albums default kif muri fil-screenshot li ġej.

Biex ittella' ritratt jew timporta minn link jew timporta minn Dropbox jew minn server ieħor jew iżżid album, ikklikkja fuq is-sinjal +. U biex tara ritratti f'album, sempliċement ikklikkja fuqha.

Għal aktar informazzjoni, żur Lychee Homepage: https://lycheeorg.github.io/

Lychee hija sistema ta’ ġestjoni tar-ritratti PHP ta’ sors miftuħ, faċli biex tużah u eleganti biex timmaniġġja u taqsam ritratti. Jekk għandek xi mistoqsijiet jew kummenti, uża l-formola hawn taħt biex tikteb lilna.