Refactor: Photoprism (#6335)
This commit is contained in:
parent
e54ed7dc35
commit
202eb3fb2a
@ -27,22 +27,35 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
msg_info "Stopping PhotoPrism"
|
|
||||||
sudo systemctl stop photoprism
|
|
||||||
msg_ok "Stopped PhotoPrism"
|
|
||||||
|
|
||||||
msg_info "Updating PhotoPrism"
|
RELEASE=$(curl -fsSL https://api.github.com/repos/photoprism/photoprism/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
$STD apt-get install -y libvips42
|
if [[ "${RELEASE}" != "$(cat ~/.photoprism 2>/dev/null)" ]] || [[ ! -f ~/.photoprism ]]; then
|
||||||
curl -fsSL https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xzf - -C /opt/photoprism --strip-components=1
|
msg_info "Stopping PhotoPrism"
|
||||||
msg_ok "Updated PhotoPrism"
|
systemctl stop photoprism
|
||||||
|
msg_ok "Stopped PhotoPrism"
|
||||||
|
|
||||||
msg_info "Starting PhotoPrism"
|
fetch_and_deploy_gh_release "photoprism" "photoprism/photoprism" "prebuild" "latest" "/opt/photoprism" "*linux-amd64.tar.gz"
|
||||||
sudo systemctl start photoprism
|
|
||||||
msg_ok "Started PhotoPrism"
|
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
|
||||||
msg_ok "Update Successful"
|
if [[ "${LIBHEIF_URL}" != "$(cat ~/.photoprism_libheif 2>/dev/null)" ]] || [[ ! -f ~/.photoprism_libheif ]]; then
|
||||||
|
msg_info "Updating PhotoPrism LibHeif"
|
||||||
|
$STD apt-get install -y libvips42
|
||||||
|
curl -fsSL "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" -o /tmp/libheif.tar.gz
|
||||||
|
tar -xzf /tmp/libheif.tar.gz -C /usr/local
|
||||||
|
ldconfig
|
||||||
|
echo "${LIBHEIF_URL}" >~/.photoprism_libheif
|
||||||
|
msg_ok "Updated PhotoPrism LibHeif"
|
||||||
|
fi
|
||||||
|
|
||||||
|
msg_info "Starting PhotoPrism"
|
||||||
|
systemctl start photoprism
|
||||||
|
msg_ok "Started PhotoPrism"
|
||||||
|
msg_ok "Update Successful"
|
||||||
|
else
|
||||||
|
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||||
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
build_container
|
build_container
|
||||||
description
|
description
|
||||||
|
@ -15,48 +15,90 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies (Patience)"
|
msg_info "Installing Dependencies (Patience)"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
exiftool \
|
exiftool \
|
||||||
ffmpeg \
|
ffmpeg \
|
||||||
libheif1 \
|
libheif1 \
|
||||||
libpng-dev \
|
libpng-dev \
|
||||||
libjpeg-dev \
|
libjpeg-dev \
|
||||||
libtiff-dev \
|
libtiff-dev \
|
||||||
imagemagick \
|
imagemagick \
|
||||||
darktable \
|
darktable \
|
||||||
rawtherapee \
|
rawtherapee \
|
||||||
libvips42 \
|
libvips42 \
|
||||||
lsb-release
|
lsb-release
|
||||||
|
|
||||||
echo 'export PATH=/usr/local:$PATH' >>~/.bashrc
|
echo 'export PATH=/usr/local:$PATH' >>~/.bashrc
|
||||||
export PATH=/usr/local:$PATH
|
export PATH=/usr/local:$PATH
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
fetch_and_deploy_gh_release "photoprism" "photoprism/photoprism" "prebuild" "latest" "/opt/photoprism" "*linux-amd64.tar.gz"
|
||||||
|
|
||||||
msg_info "Installing PhotoPrism (Patience)"
|
msg_info "Installing PhotoPrism (Patience)"
|
||||||
mkdir -p /opt/photoprism/{cache,config,photos,storage,temp}
|
mkdir -p /opt/photoprism/{cache,config,photos,storage,temp}
|
||||||
mkdir -p /opt/photoprism/photos/{originals,import}
|
mkdir -p /opt/photoprism/photos/{originals,import}
|
||||||
mkdir -p /opt/photoprism_backups
|
mkdir -p /opt/photoprism_backups
|
||||||
curl -fsSL https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xz -C /opt/photoprism --strip-components=1
|
|
||||||
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
|
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
|
||||||
curl -fsSL "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" | tar -xzf - -C /usr/local --strip-components=1
|
curl -fsSL "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" -o /tmp/libheif.tar.gz
|
||||||
|
tar -xzf /tmp/libheif.tar.gz -C /usr/local
|
||||||
ldconfig
|
ldconfig
|
||||||
|
echo "${LIBHEIF_URL}" >~/.photoprism_libheif
|
||||||
chmod -R 755 /opt/photoprism/photos/originals
|
chmod -R 755 /opt/photoprism/photos/originals
|
||||||
cat <<EOF >/opt/photoprism/config/.env
|
cat <<EOF >/opt/photoprism/config/.env
|
||||||
PHOTOPRISM_AUTH_MODE='password'
|
# Authentication
|
||||||
|
PHOTOPRISM_ADMIN_USER='admin'
|
||||||
PHOTOPRISM_ADMIN_PASSWORD='changeme'
|
PHOTOPRISM_ADMIN_PASSWORD='changeme'
|
||||||
|
PHOTOPRISM_AUTH_MODE='password'
|
||||||
|
PHOTOPRISM_PUBLIC='false'
|
||||||
|
|
||||||
|
# Network / HTTP
|
||||||
PHOTOPRISM_HTTP_HOST='0.0.0.0'
|
PHOTOPRISM_HTTP_HOST='0.0.0.0'
|
||||||
PHOTOPRISM_HTTP_PORT='2342'
|
PHOTOPRISM_HTTP_PORT='2342'
|
||||||
PHOTOPRISM_SITE_CAPTION='https://Helper-Scripts.com'
|
PHOTOPRISM_SITE_URL='http://localhost:2342/'
|
||||||
|
PHOTOPRISM_DISABLE_TLS='true'
|
||||||
|
PHOTOPRISM_DEFAULT_TLS='false'
|
||||||
|
PHOTOPRISM_HTTP_COMPRESSION='gzip'
|
||||||
|
|
||||||
|
# Features & AI
|
||||||
|
PHOTOPRISM_DISABLE_TENSORFLOW='false'
|
||||||
|
PHOTOPRISM_DISABLE_FACES='false'
|
||||||
|
PHOTOPRISM_DISABLE_CLASSIFICATION='false'
|
||||||
|
PHOTOPRISM_DISABLE_VECTORS='false'
|
||||||
|
PHOTOPRISM_DETECT_NSFW='false'
|
||||||
|
PHOTOPRISM_UPLOAD_NSFW='true'
|
||||||
|
|
||||||
|
# Paths & Storage
|
||||||
PHOTOPRISM_STORAGE_PATH='/opt/photoprism/storage'
|
PHOTOPRISM_STORAGE_PATH='/opt/photoprism/storage'
|
||||||
PHOTOPRISM_ORIGINALS_PATH='/opt/photoprism/photos/originals'
|
PHOTOPRISM_ORIGINALS_PATH='/opt/photoprism/photos/originals'
|
||||||
PHOTOPRISM_IMPORT_PATH='/opt/photoprism/photos/import'
|
PHOTOPRISM_IMPORT_PATH='/opt/photoprism/photos/import'
|
||||||
PHOTOPRISM_BACKUP_PATH='/opt/photoprism_backups'
|
PHOTOPRISM_BACKUP_PATH='/opt/photoprism_backups'
|
||||||
|
|
||||||
|
# Database
|
||||||
PHOTOPRISM_DATABASE_DRIVER='sqlite'
|
PHOTOPRISM_DATABASE_DRIVER='sqlite'
|
||||||
PHOTOPRISM_DISABLE_WEBDAV='false'
|
|
||||||
PHOTOPRISM_DISABLE_FACES='false'
|
# Behavior & Options
|
||||||
PHOTOPRISM_AUTO_INDEX='300'
|
PHOTOPRISM_AUTO_INDEX='300'
|
||||||
PHOTOPRISM_AUTO_IMPORT='-1'
|
PHOTOPRISM_AUTO_IMPORT='-1'
|
||||||
PHOTOPRISM_PUBLIC='false'
|
PHOTOPRISM_DISABLE_WEBDAV='false'
|
||||||
|
PHOTOPRISM_READONLY='false'
|
||||||
|
PHOTOPRISM_DISABLE_SETTINGS='false'
|
||||||
|
PHOTOPRISM_DISABLE_CHOWN='false'
|
||||||
|
PHOTOPRISM_EXPERIMENTAL='false'
|
||||||
|
PHOTOPRISM_INIT='https tensorflow'
|
||||||
|
|
||||||
|
# Image Processing
|
||||||
|
PHOTOPRISM_ORIGINALS_LIMIT='5000'
|
||||||
|
PHOTOPRISM_JPEG_QUALITY='85'
|
||||||
|
PHOTOPRISM_RAW_PRESETS='false'
|
||||||
|
PHOTOPRISM_DISABLE_RAW='false'
|
||||||
|
|
||||||
|
# Debug & Logging
|
||||||
PHOTOPRISM_DEBUG='false'
|
PHOTOPRISM_DEBUG='false'
|
||||||
|
PHOTOPRISM_LOG_LEVEL='info'
|
||||||
|
|
||||||
|
# Site Info
|
||||||
|
PHOTOPRISM_SITE_CAPTION='https://Helper-Scripts.com'
|
||||||
|
PHOTOPRISM_SITE_DESCRIPTION=''
|
||||||
|
PHOTOPRISM_SITE_AUTHOR=''
|
||||||
EOF
|
EOF
|
||||||
ln -sf /opt/photoprism/bin/photoprism /usr/local/bin/photoprism
|
ln -sf /opt/photoprism/bin/photoprism /usr/local/bin/photoprism
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user