From fcdd1807b0601c6d7c91c6afe4648858e0fd7328 Mon Sep 17 00:00:00 2001 From: joglomedia Date: Fri, 4 Oct 2019 20:38:10 +0700 Subject: [PATCH] add tiny file manager [experimental] --- bin/lemper-cli.sh | 9 +++++ scripts/install_tools.sh | 77 ++++++++++++++++++++++++++++++++-------- 2 files changed, 72 insertions(+), 14 deletions(-) diff --git a/bin/lemper-cli.sh b/bin/lemper-cli.sh index 8da2268..57a85f1 100755 --- a/bin/lemper-cli.sh +++ b/bin/lemper-cli.sh @@ -62,6 +62,15 @@ function cmd_manage() { fi } +function cmd_tfm() { + if [ -x "$LibDir/lemper-tfm" ]; then + "$LibDir/lemper-tfm" "$@" + else + echo "Oops, lemper tfm subcommand module couldn't be loaded." + exit 1 + fi +} + SubCommand=$1 case ${SubCommand} in "" | "-h" | "--help") diff --git a/scripts/install_tools.sh b/scripts/install_tools.sh index 82e0706..f7c116c 100755 --- a/scripts/install_tools.sh +++ b/scripts/install_tools.sh @@ -50,23 +50,32 @@ function init_webadmin_install() { run bash -c 'echo "" > /usr/share/nginx/html/lcp/phpinfo.php73' # Install Adminer for Web-based MySQL Administration Tool - if [ ! -d /usr/share/nginx/html/lcp/dbadminer ]; then - run mkdir -p /usr/share/nginx/html/lcp/dbadminer + if [ ! -d /usr/share/nginx/html/lcp/dbadmin ]; then + run mkdir -p /usr/share/nginx/html/lcp/dbadmin run wget -q https://github.com/vrana/adminer/releases/download/v4.7.3/adminer-4.7.3.php \ - -O /usr/share/nginx/html/lcp/dbadminer/index.php + -O /usr/share/nginx/html/lcp/dbadmin/index.php run wget -q https://github.com/vrana/adminer/releases/download/v4.7.3/editor-4.7.3.php \ - -O /usr/share/nginx/html/lcp/dbadminer/editor.php + -O /usr/share/nginx/html/lcp/dbadmin/editor.php fi - # Install FileRun File Manager + # Install File Manager + # Experimental: Replace FileRun with Tinyfilemanager https://github.com/PHPlayground/tinyfilemanager if [ ! -d /usr/share/nginx/html/lcp/filemanager ]; then - run mkdir -p /usr/share/nginx/html/lcp/filemanager - run wget -q http://www.filerun.com/download-latest -O /usr/share/nginx/html/lcp/FileRun.zip && \ - run unzip -o -qq /usr/share/nginx/html/lcp/FileRun.zip -d /usr/share/nginx/html/lcp/filemanager && \ - run rm -f /usr/share/nginx/html/lcp/FileRun.zip - fi + #run mkdir -p /usr/share/nginx/html/lcp/filemanager + #run wget -q http://www.filerun.com/download-latest -O /usr/share/nginx/html/lcp/FileRun.zip && \ + #run unzip -o -qq /usr/share/nginx/html/lcp/FileRun.zip -d /usr/share/nginx/html/lcp/filemanager && \ + #run rm -f /usr/share/nginx/html/lcp/FileRun.zip - # TODO: Replace FileRun with Tinyfilemanager https://github.com/prasathmani/tinyfilemanager + # Clone custom TinyFileManager. + run git clone -q --depth=1 --branch=lemperfm_1.3.0 https://github.com/PHPlayground/tinyfilemanager.git \ + /usr/share/nginx/html/lcp/filemanager + + # Copy TinyFileManager custom account creator. + if [ -f /usr/share/nginx/html/lcp/filemanager/adduser-tfm.sh ]; then + run cp /usr/share/nginx/html/lcp/filemanager/adduser-tfm.sh /usr/local/lib/lemper/lemper-tfm + run chmod ugo+x /usr/local/lib/lemper/lemper-tfm + fi + fi # Install Zend OpCache Web Admin run wget -q https://raw.github.com/rlerdorf/opcache-status/master/opcache.php \ @@ -76,17 +85,57 @@ function init_webadmin_install() { #http://blog.elijaa.org/index.php?pages/phpMemcachedAdmin-Installation-Guide if [ ! -d /usr/share/nginx/html/lcp/phpMemcachedAdmin/ ]; then run git clone -q --depth=1 --branch=master \ - https://github.com/elijaa/phpmemcachedadmin.git /usr/share/nginx/html/lcp/phpMemcachedAdmin/ + https://github.com/elijaa/phpmemcachedadmin.git /usr/share/nginx/html/lcp/memcadmin/ else local CUR_DIR && \ CUR_DIR=$(pwd) - run cd /usr/share/nginx/html/lcp/phpMemcachedAdmin/ + run cd /usr/share/nginx/html/lcp/memcadmin/ run git pull -q run cd "${CUR_DIR}" fi + # Configure phpMemcachedAdmin. + if ! ${DRYRUN}; then + run touch /usr/share/nginx/html/lcp/memcadmin/Config/Memcache.php + cat > /usr/share/nginx/html/lcp/memcadmin/Config/Memcache.php < 'Server', + 'slabs_api' => 'Server', + 'items_api' => 'Server', + 'get_api' => 'Server', + 'set_api' => 'Server', + 'delete_api' => 'Server', + 'flush_all_api' => 'Server', + 'connection_timeout' => '1', + 'max_item_dump' => '100', + 'refresh_rate' => 2.0, + 'memory_alert' => '80', + 'hit_rate_alert' => '90', + 'eviction_alert' => '0', + 'file_path' => 'Temp/', + 'servers' => + [ + 'LEMPer Stack' => + [ + '127.0.0.1:11211' => + [ + 'hostname' => '127.0.0.1', + 'port' => '11211', + ], + '127.0.0.1:11212' => + [ + 'hostname' => '127.0.0.1', + 'port' => '11212', + ], + ], + ], +]; +EOL + fi + # Assign ownership properly - run chown -hR www-data: /usr/share/nginx/html + run chown -hR www-data:www-data /usr/share/nginx/html if [[ -x /usr/local/bin/lemper-cli && -d /usr/share/nginx/html/lcp ]]; then status "Web administration tools successfully installed."