improve check install status when running in docker

This commit is contained in:
xiaomlove
2025-10-23 16:19:14 +07:00
parent c26bd6f1aa
commit 747d272653
4 changed files with 18 additions and 12 deletions
+1 -6
View File
@@ -40,7 +40,7 @@ class class_cache_redis {
if (isset($config['timeout']) && is_numeric($config['timeout'])) {
$params[] = $config['timeout'];
}
if ($this->isFpmMode()) {
if (nexus()->isFpmMode()) {
try {
$connectResult = $redis->pconnect(...$params);
} catch (\Exception $e) {
@@ -68,11 +68,6 @@ class class_cache_redis {
return true;
}
private function isFpmMode(): bool
{
return php_sapi_name() === 'fpm-fcgi';
}
function getIsEnabled() {
return $this->isEnabled;
}
+9 -5
View File
@@ -6,11 +6,15 @@ require_once $rootpath . 'vendor/autoload.php';
$USERUPDATESET = array();
$query_name=array();
\Nexus\Nexus::boot();
if (!file_exists($rootpath . '.env')) {
$installScriptRelativePath = 'install/install.php';
$installScriptFile = $rootpath . "public/$installScriptRelativePath";
if (file_exists($installScriptFile)) {
nexus_redirect($installScriptRelativePath);
if (nexus()->isFpmMode()) {
if (!file_exists($rootpath . '.env')
|| (getenv('RUNNING_IN_DOCKER') && !file_exists($rootpath . \Nexus\Install\Install::INSTALL_LOCK_FILE))
) {
$installScriptRelativePath = 'install/install.php';
$installScriptFile = $rootpath . "public/$installScriptRelativePath";
if (file_exists($installScriptFile)) {
nexus_redirect($installScriptRelativePath);
}
}
}
require $rootpath . 'nexus/Database/helpers.php';
+3 -1
View File
@@ -49,7 +49,9 @@ class Install
'pcntl_signal', 'pcntl_alarm', 'pcntl_async_signals'
];
protected string $lockFile = 'install.lock';
const INSTALL_LOCK_FILE = 'dont_delete_install.lock';
protected string $lockFile = self::INSTALL_LOCK_FILE;
public function __construct()
{
+5
View File
@@ -176,6 +176,11 @@ final class Nexus
return false;
}
public function isFpmMode(): bool
{
return php_sapi_name() === 'fpm-fcgi';
}
private function generateRequestId(): string
{
$prefix = ($_SERVER['SCRIPT_FILENAME'] ?? '') . implode('', $_SERVER['argv'] ?? []);