ウェブサイト検索

Lychee - Linux 用の見栄えの良い写真管理システム


Lychee は、無料のオープンソースのエレガントで使いやすい写真管理システムで、サーバー上の写真を安全に管理および共有するために必要な機能がすべて備わっています。シンプルな Web アプリケーションから数秒で写真を簡単に管理 (アップロード、移動、名前変更、説明、削除、検索) できます。

ライチの特徴

  • ブラウザから直接、すべての写真を 1 か所で管理できる、驚くほど美しいインターフェース。
  • ワンクリックで写真とアルバムをパスワード保護付きで共有できます。
  • キーボードを使用して前後のナビゲーションを使用して全画面モードですべての画像を表示したり、写真を公開して他の人に写真を閲覧させたりできます。
  • ローカルホスト、Dropbox、リモートサーバー、またはリンクの使用など、さまざまなソースからの写真のインポートをサポートします。

Lychee をインストールするために必要なのは、PHP 5.5 以降を搭載した ApacheNginx などの Web サーバーと MySQL だけです。・ データベースです。

この記事では、NginxPHP-FPM 7.0を使用してLychee写真管理システムをインストールします。 MariaDB は、ドメイン名が lychee.example.com の RHEL 8 VPS 上にあります。

ステップ 1: Nginx、PHP、MariaDB をインストールする

1. まず、Nginx、必要な拡張機能を備えた PHPMariaDB データベースをインストールしてホスティング環境をセットアップします。 ライチを実行します。

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. 必要なパッケージをインストールしたら、nginxphp-fpmmariadb サービスを開始し、有効にします。起動時にこれらのサービスが稼働しているかどうかを確認します。

------------ 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. 次に、システムでファイアウォールが有効になっている場合は、クライアントを許可するためにファイアウォールでポート 80443 を開く必要があります。図に示すように、それぞれHTTPHTTPSNginx Web サーバーへのリクエストを送信します。

------------ 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 ユーザー/プロセスのグループを設定します (CentOS では www-datanginx に変更します)。

user = www-data
group = www-data

また、Unix ソケットへのFastCGI リクエストを受け入れるためのlisten ディレクティブを変更します。

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

そして、ディレクティブを使用して Unix ソケットに適切な所有権を設定します (CentOS/RHEL では www-datanginx に変更します)。

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. このステップでは、バイナリパッケージ。

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. 次に、Web ドキュメント ルートに移動し、示されているように、git コマンド ライン ツールを使用して最新バージョンの Lychee を取得します。

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. このステップでは、PHP の依存関係をインストールするために使用される lychee インストール ディレクトリに composer をセットアップする必要があります。

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: Lychee 用の Nginx サーバー ブロックを構成する

12. 次に、Lychee アプリケーション用の Nginx サーバー ブロックを /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 Web サーバーとPHP-FPM を再起動して、最近の変更を適用します。

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

ステップ 5: Web ブラウザ経由で Lychee のインストールを完了する

13. 次に、URL lychee.example.com を使用してブラウザで Lychee Web インストーラーを開き、データベース接続設定を指定して、作成したデータベースの名前を入力します。ライチを選択し、[接続] をクリックします。

14. 次に、インストール用のユーザー名パスワードを入力し、ログインの作成をクリックします。ログイン後、次のスクリーンショットに示すように、 デフォルトのアルバムが含まれる管理ダッシュボードが表示されます。

写真をアップロードするか、リンクからインポートするか、Dropbox または別のサーバーからインポートするか、アルバムを追加するには、+ 記号をクリックします。アルバム内の写真を表示するには、アルバムをクリックするだけです。

詳細については、Lychee ホームページをご覧ください: https://lycheeorg.github.io/

Lychee は、写真を管理および共有するための、オープンソースの使いやすくエレガントな PHP 写真管理システムです。ご質問やご意見がございましたら、以下のフォームを使用してご連絡ください。