Lychee - Sistem Manajemen Foto yang Tampak Hebat untuk Linux


Lychee adalah sistem pengelolaan foto gratis, sumber terbuka, elegan, dan mudah digunakan, yang dilengkapi dengan semua fitur penting yang Anda perlukan untuk mengelola dan berbagi foto dengan aman di server Anda. Ini memungkinkan Anda mengelola dengan mudah (mengunggah, memindahkan, mengganti nama, mendeskripsikan, menghapus, atau mencari) foto Anda dalam hitungan detik dari aplikasi web sederhana.

Fitur Leci

  • Antarmuka yang menakjubkan dan indah untuk mengelola semua foto Anda di satu tempat, langsung dari browser Anda.
  • Berbagi foto dan album sekali klik dengan perlindungan kata sandi.
  • Lihat semua gambar Anda dalam mode layar penuh dengan navigasi maju dan mundur menggunakan keyboard Anda atau biarkan orang lain menelusuri foto Anda dengan menjadikannya publik.
  • Mendukung impor foto dari berbagai sumber: localhost, Dropbox, server jarak jauh, atau menggunakan tautan.

Untuk menginstal Lychee, yang Anda butuhkan hanyalah server web yang berjalan seperti Apache atau Nginx dengan PHP 5.5 atau lebih baru dan MySQL -Database.

Untuk keperluan artikel ini, saya akan menginstal sistem manajemen foto Lychee dengan Nginx, PHP-FPM 7.0, dan MariaDB pada VPS RHEL 8 dengan nama domain lychee.example.com.

Langkah 1: Instal Nginx, PHP, dan MariaDB

1. Pertama, mulailah dengan menginstal Nginx, PHP dengan ekstensi yang diperlukan, dan database MariaDB untuk menyiapkan lingkungan hosting untuk menjalankan Lychee.

Di Cent/RHEL/Rocky Linux dan 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

Di Ubuntu dan 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. Setelah Anda menginstal paket yang diperlukan, mulai layanan nginx, php-fpm, dan mariadb, aktifkan mereka pada saat boot dan periksa apakah layanan ini aktif dan berjalan.

------------ 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. Selanjutnya, jika firewall di sistem Anda diaktifkan, Anda perlu membuka port 80 dan 443 di firewall untuk mengizinkan klien permintaan ke server web Nginx di masing-masing HTTP dan HTTPS, seperti yang ditunjukkan.

------------ 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. Untuk menjalankan Lychee secara efektif, disarankan untuk meningkatkan nilai properti berikut dalam file php.ini.

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

Cari parameter PHP ini dan ubah nilainya menjadi:

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

5. Sekarang konfigurasikan PHP-FPM untuk mengatur pengguna dan grup, dengarkan file www.conf soket seperti yang dijelaskan.

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

Cari arahan di bawah untuk menyetel pengguna/grup proses Unix (ubah www-data menjadi nginx di CentOS).

user = www-data
group = www-data

Juga, ubah perintah listen untuk menerima permintaan FastCGI ke soket Unix.

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

Dan tetapkan izin kepemilikan yang sesuai untuk soket Unix menggunakan direktif (ubah www-data menjadi nginx di CentOS/RHEL).

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

Simpan file dan mulai ulang layanan nginx dan php-fpm.

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

Langkah 2: Amankan Instalasi MariaDB

6. Pada langkah ini, Anda harus mengamankan instalasi basis data MariaDB (yang secara default tidak aman jika diinstal pada sistem baru), dengan menjalankan skrip keamanan yang disertakan dengan paket biner.

Jalankan perintah berikut sebagai root, untuk meluncurkan skrip.

sudo mysql_secure_installation

Anda akan diminta untuk menyetel kata sandi root, menghapus pengguna anonim, menonaktifkan login root dari jarak jauh, dan menghapus database pengujian. Setelah membuat kata sandi root, dan jawab yes/y untuk pertanyaan selanjutnya.

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

Langkah 3: Instal Sistem Manajemen Foto Lychee

7. Untuk menginstal Lychee, pertama-tama, Anda perlu membuat database untuknya dengan izin yang sesuai menggunakan perintah berikut.

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. Selanjutnya, pindah ke root dokumen web dan ambil versi terbaru Lychee menggunakan alat baris perintah git, seperti yang ditunjukkan.

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

9. Kemudian atur izin dan kepemilikan yang benar pada direktori instalasi seperti yang ditunjukkan (ganti admin dengan nama pengguna di sistem Anda).

------------ 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. Pada langkah ini, Anda perlu menyiapkan composer di direktori instalasi lychee, yang akan digunakan untuk menginstal dependensi 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

Langkah 4: Konfigurasikan Blok Server Nginx untuk Lychee

12. Selanjutnya, Anda perlu membuat dan mengonfigurasi blok server Nginx untuk aplikasi Lychee di bawah /etc/nginx/conf.d/.

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

Tambahkan konfigurasi berikut pada file di atas, ingatlah untuk menggunakan nama domain Anda sendiri, bukan lychee.example.com (ini hanya domain tiruan).

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

Kemudian simpan file dan mulai ulang server web Nginx dan PHP-FPM untuk menerapkan perubahan terkini.

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

Langkah 5: Selesaikan Instalasi Lychee Melalui Browser Web

13. Sekarang gunakan URL lychee.example.com untuk membuka penginstal web Lychee di browser Anda dan berikan pengaturan koneksi database Anda dan masukkan nama database yang Anda buat leci dan klik Hubungkan.

14. Selanjutnya, masukkan nama pengguna dan kata sandi untuk instalasi Anda dan klik Buat Login. Setelah login, Anda akan diarahkan ke dasbor admin yang berisi Album default seperti yang ditunjukkan pada tangkapan layar berikut.

Untuk mengunggah foto atau mengimpor dari tautan atau mengimpor dari Dropbox atau dari server lain atau menambahkan album, klik tanda +. Dan untuk melihat foto dalam album, cukup klik di atasnya.

Untuk informasi lebih lanjut, kunjungi Beranda Lychee: https://lycheeorg.github.io/

Lychee adalah sistem pengelolaan foto PHP sumber terbuka, mudah digunakan, dan elegan untuk mengelola dan berbagi foto. Jika Anda memiliki pertanyaan atau komentar, gunakan formulir di bawah ini untuk menulis kepada kami.