update 2025-03-20 12:24:49

This commit is contained in:
kenzok8 2025-03-20 12:24:49 +08:00
parent 5c3c4593f0
commit 8bd6c6af81
9 changed files with 217 additions and 42 deletions

View File

@ -2,7 +2,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=1.1.2-20240822 PKG_VERSION:=1.1.3-20250320
PKG_RELEASE:= PKG_RELEASE:=
LUCI_TITLE:=LuCI support for homeassistant LUCI_TITLE:=LuCI support for homeassistant

View File

@ -3,6 +3,52 @@
ACTION=${1} ACTION=${1}
shift 1 shift 1
istoreenhance_pull() {
local image_name="$1"
local isInstall=$(command -v iStoreEnhance)
local isRun=$(pgrep iStoreEnhance)
# 判断iStoreEnhance是否运行
if [ -n "$isRun" ]; then
# 使用 docker info 获取包含 registry.linkease.net 的镜像服务器地址
local registry_mirror=$(docker info 2>/dev/null | awk -F': ' '/Registry Mirrors:/ {found=1; next} found && NF {if ($0 ~ /registry.linkease.net/) {print; exit}}')
if [[ -n "$registry_mirror" ]]; then
# 提取主机和端口部分
local registry_host=$(echo ${registry_mirror} | sed -E 's|^https?://([^/]+).*|\1|')
# 拼接完整的镜像地址
local full_image_name="$registry_host/$image_name"
echo "istoreenhance_pull ${full_image_name}"
# 直接拉取镜像
docker pull "$full_image_name"
if [ $? -ne 0 ]; then
echo "istoreenhance_pull failed"
exit 1
fi
else
echo "istoreenhance_pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
echo "download failed, not found registry.linkease.net"
exit 1
fi
fi
else
# 否则运行 docker pull
echo "docker pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
# 判断是否安装 iStoreEnhance
if [ -z "$isInstall" ]; then
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
else
echo "download failed, enable istoreenhance to speedup"
fi
exit 1
fi
fi
}
do_install() { do_install() {
local config=`uci get homeassistant.@homeassistant[0].config_path 2>/dev/null` local config=`uci get homeassistant.@homeassistant[0].config_path 2>/dev/null`
local IMAGE_NAME=`uci get homeassistant.@homeassistant[0].image_name 2>/dev/null` local IMAGE_NAME=`uci get homeassistant.@homeassistant[0].image_name 2>/dev/null`
@ -13,8 +59,7 @@ do_install() {
exit 1 exit 1
fi fi
echo "docker pull ${IMAGE_NAME}" istoreenhance_pull ${IMAGE_NAME}
docker pull ${IMAGE_NAME}
docker rm -f homeassistant docker rm -f homeassistant
local cmd="docker run --restart=unless-stopped -d \ local cmd="docker run --restart=unless-stopped -d \

View File

@ -2,7 +2,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=1.0.0-20250313 PKG_VERSION:=1.0.1-20250320
PKG_RELEASE:= PKG_RELEASE:=
LUCI_TITLE:=LuCI support for Immich LUCI_TITLE:=LuCI support for Immich

View File

@ -4,6 +4,52 @@
ACTION=${1} ACTION=${1}
shift 1 shift 1
istoreenhance_pull() {
local image_name="$1"
local isInstall=$(command -v iStoreEnhance)
local isRun=$(pgrep iStoreEnhance)
# 判断iStoreEnhance是否运行
if [ -n "$isRun" ]; then
# 使用 docker info 获取包含 registry.linkease.net 的镜像服务器地址
local registry_mirror=$(docker info 2>/dev/null | awk -F': ' '/Registry Mirrors:/ {found=1; next} found && NF {if ($0 ~ /registry.linkease.net/) {print; exit}}')
if [[ -n "$registry_mirror" ]]; then
# 提取主机和端口部分
local registry_host=$(echo ${registry_mirror} | sed -E 's|^https?://([^/]+).*|\1|')
# 拼接完整的镜像地址
local full_image_name="$registry_host/$image_name"
echo "istoreenhance_pull ${full_image_name}"
# 直接拉取镜像
docker pull "$full_image_name"
if [ $? -ne 0 ]; then
echo "istoreenhance_pull failed"
exit 1
fi
else
echo "istoreenhance_pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
echo "download failed, not found registry.linkease.net"
exit 1
fi
fi
else
# 否则运行 docker pull
echo "docker pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
# 判断是否安装 iStoreEnhance
if [ -z "$isInstall" ]; then
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
else
echo "download failed, enable istoreenhance to speedup"
fi
exit 1
fi
fi
}
do_install() { do_install() {
local port=`uci get immich.@main[0].port 2>/dev/null` local port=`uci get immich.@main[0].port 2>/dev/null`
local config=`uci get immich.@main[0].config_path 2>/dev/null` local config=`uci get immich.@main[0].config_path 2>/dev/null`
@ -36,33 +82,15 @@ do_install() {
cd $config cd $config
export COMPOSE_PROJECT_NAME=linkease-immich export COMPOSE_PROJECT_NAME=linkease-immich
docker pull redis:6.2-alpine@sha256:905c4ee67b8e0aa955331960d2aa745781e6bd89afc44a8584bfd13bc890f0ae istoreenhance_pull redis:6.2-alpine@sha256:905c4ee67b8e0aa955331960d2aa745781e6bd89afc44a8584bfd13bc890f0ae
RET=$?
if [ ! "$RET" = "0" ]; then
echo "download failed, install istoreenhance to speedup"
exit 1
fi
docker pull tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0 istoreenhance_pull tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
RET=$?
if [ ! "$RET" = "0" ]; then
echo "download failed, install istoreenhance to speedup"
exit 1
fi
docker pull "linkease/immich-machine-learning:$IMMICH_VERSION" istoreenhance_pull "linkease/immich-machine-learning:$IMMICH_VERSION"
RET=$?
if [ ! "$RET" = "0" ]; then
echo "download failed, install istoreenhance to speedup" istoreenhance_pull "linkease/immich-server:$IMMICH_VERSION"
exit 1
fi
docker pull "linkease/immich-server:$IMMICH_VERSION"
RET=$?
if [ ! "$RET" = "0" ]; then
echo "download failed, install istoreenhance to speedup"
exit 1
fi
docker-compose down || true docker-compose down || true
docker-compose up -d docker-compose up -d

View File

@ -2,7 +2,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=1.0.2-20240822 PKG_VERSION:=1.0.3-20250320
PKG_RELEASE:= PKG_RELEASE:=
LUCI_TITLE:=LuCI support for ITTools LUCI_TITLE:=LuCI support for ITTools

View File

@ -4,13 +4,58 @@
ACTION=${1} ACTION=${1}
shift 1 shift 1
istoreenhance_pull() {
local image_name="$1"
local isInstall=$(command -v iStoreEnhance)
local isRun=$(pgrep iStoreEnhance)
# 判断iStoreEnhance是否运行
if [ -n "$isRun" ]; then
# 使用 docker info 获取包含 registry.linkease.net 的镜像服务器地址
local registry_mirror=$(docker info 2>/dev/null | awk -F': ' '/Registry Mirrors:/ {found=1; next} found && NF {if ($0 ~ /registry.linkease.net/) {print; exit}}')
if [[ -n "$registry_mirror" ]]; then
# 提取主机和端口部分
local registry_host=$(echo ${registry_mirror} | sed -E 's|^https?://([^/]+).*|\1|')
# 拼接完整的镜像地址
local full_image_name="$registry_host/$image_name"
echo "istoreenhance_pull ${full_image_name}"
# 直接拉取镜像
docker pull "$full_image_name"
if [ $? -ne 0 ]; then
echo "istoreenhance_pull failed"
exit 1
fi
else
echo "istoreenhance_pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
echo "download failed, not found registry.linkease.net"
exit 1
fi
fi
else
# 否则运行 docker pull
echo "docker pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
# 判断是否安装 iStoreEnhance
if [ -z "$isInstall" ]; then
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
else
echo "download failed, enable istoreenhance to speedup"
fi
exit 1
fi
fi
}
do_install() { do_install() {
local port=`uci get ittools.@main[0].port 2>/dev/null` local port=`uci get ittools.@main[0].port 2>/dev/null`
local image_name=`uci get ittools.@main[0].image_name 2>/dev/null` local image_name=`uci get ittools.@main[0].image_name 2>/dev/null`
[ -z "$image_name" ] && image_name="linuxserver/ittools:latest" [ -z "$image_name" ] && image_name="linuxserver/ittools:latest"
echo "docker pull ${image_name}" istoreenhance_pull ${image_name}
docker pull ${image_name}
docker rm -f ittools docker rm -f ittools
[ -z "$port" ] && port=9070 [ -z "$port" ] && port=9070

View File

@ -2,7 +2,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=1.2.0-20240822 PKG_VERSION:=1.2.1-20250320
PKG_RELEASE:= PKG_RELEASE:=
LUCI_TITLE:=LuCI support for jellyfin LUCI_TITLE:=LuCI support for jellyfin

View File

@ -8,6 +8,52 @@ shift 1
ARCH="default" ARCH="default"
IMAGE_NAME='default' IMAGE_NAME='default'
istoreenhance_pull() {
local image_name="$1"
local isInstall=$(command -v iStoreEnhance)
local isRun=$(pgrep iStoreEnhance)
# 判断iStoreEnhance是否运行
if [ -n "$isRun" ]; then
# 使用 docker info 获取包含 registry.linkease.net 的镜像服务器地址
local registry_mirror=$(docker info 2>/dev/null | awk -F': ' '/Registry Mirrors:/ {found=1; next} found && NF {if ($0 ~ /registry.linkease.net/) {print; exit}}')
if [[ -n "$registry_mirror" ]]; then
# 提取主机和端口部分
local registry_host=$(echo ${registry_mirror} | sed -E 's|^https?://([^/]+).*|\1|')
# 拼接完整的镜像地址
local full_image_name="$registry_host/$image_name"
echo "istoreenhance_pull ${full_image_name}"
# 直接拉取镜像
docker pull "$full_image_name"
if [ $? -ne 0 ]; then
echo "istoreenhance_pull failed"
exit 1
fi
else
echo "istoreenhance_pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
echo "download failed, not found registry.linkease.net"
exit 1
fi
fi
else
# 否则运行 docker pull
echo "docker pull ${image_name}"
docker pull "$image_name"
if [ $? -ne 0 ]; then
# 判断是否安装 iStoreEnhance
if [ -z "$isInstall" ]; then
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
else
echo "download failed, enable istoreenhance to speedup"
fi
exit 1
fi
fi
}
get_image() { get_image() {
if grep -Eq ',rtd-?129.$' /proc/device-tree/compatible 2>/dev/null; then if grep -Eq ',rtd-?129.$' /proc/device-tree/compatible 2>/dev/null; then
ARCH="rtd129x" ARCH="rtd129x"
@ -31,8 +77,7 @@ get_image() {
do_install() { do_install() {
get_image get_image
echo "docker pull ${IMAGE_NAME}" istoreenhance_pull ${IMAGE_NAME}
docker pull ${IMAGE_NAME}
docker rm -f jellyfin docker rm -f jellyfin
do_install_detail do_install_detail

View File

@ -786,15 +786,27 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['selected_config'])) {
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div> </div>
<script> <script>
setTimeout(function() { document.addEventListener("DOMContentLoaded", function () {
var warningAlert = document.getElementById('nginxWarning'); let lastWarningTime = localStorage.getItem('nginxWarningTime');
if (warningAlert) { let currentTime = new Date().getTime();
warningAlert.classList.remove('show'); let warningInterval = 12 * 60 * 60 * 1000;
setTimeout(function() {
warningAlert.remove(); if (!lastWarningTime || currentTime - lastWarningTime > warningInterval) {
}, 300); localStorage.setItem('nginxWarningTime', currentTime);
let warningAlert = document.getElementById('nginxWarning');
if (warningAlert) {
warningAlert.style.display = 'block';
setTimeout(function() {
warningAlert.classList.remove('show');
setTimeout(function() {
warningAlert.remove();
}, 300);
}, 5000);
}
} }
}, 5000); });
</script> </script>
<?php endif; ?> <?php endif; ?>
<div class="container-sm container-bg callout border border-3 rounded-4 col-11"> <div class="container-sm container-bg callout border border-3 rounded-4 col-11">