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

ライチの特徴
- ブラウザから直接、すべての写真を 1 か所で管理できる、美しく美しいインターフェース
- ワンクリックで写真とアルバムをパスワード保護付きで共有
- キーボードを使用して前後のナビゲーションを使用して全画面モードですべての画像を表示したり、写真を公開して他の人に写真を閲覧させたりできます
- ローカルホスト、Dropbox、リモート サーバー、またはリンクの使用など、さまざまなソースからの写真のインポートをサポートします。
Lychee をインストールするために必要なのは、PHP 5.5 以降を搭載した Apache や Nginx などの Web サーバーと MySQL だけです。・ データベースです。
この記事では、Nginx、PHP-FPM 7.0、を使用してLychee写真管理システムをインストールします。 MariaDB は、ドメイン名が lychee.example.com の RHEL 8 VPS 上にあります。
ステップ 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 を開く必要があります。図に示すように、それぞれHTTP とHTTPS で Nginx 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-data を nginx に変更します)。
user = www-data group = www-data
また、Unix ソケットへのFastCGI リクエストを受け入れるためのlisten ディレクティブを変更します。
listen = /run/php/php7.4-fpm.sock
そして、ディレクティブを使用して Unix ソケットに適切な所有権を設定します (CentOS/RHEL では www-data を nginx に変更します)。
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 写真管理システムです。ご質問やご意見がございましたら、以下のフォームを使用してご連絡ください。