zipusyan commited on
Commit
6cfe636
·
verified ·
1 Parent(s): dbf3c5e

Upload 4 files

Browse files
Files changed (4) hide show
  1. Dockerfile +4 -0
  2. entrypoint.sh +24 -2
  3. nginx.conf +1 -1
  4. supervisord.conf +2 -1
Dockerfile CHANGED
@@ -32,6 +32,10 @@ RUN sed -i 's/;daemonize\s*=\s*yes/daemonize = no/' /etc/php82/php-fpm.conf \
32
  && sed -i 's/listen\s*=\s*127.0.0.1:9000/listen = \/run\/php\/php8.2-fpm.sock/' /etc/php82/php-fpm.d/www.conf \
33
  && sed -i 's/;listen.owner\s*=\s*nobody/listen.owner = nginx/' /etc/php82/php-fpm.d/www.conf \
34
  && sed -i 's/;listen.group\s*=\s*nobody/listen.group = nginx/' /etc/php82/php-fpm.d/www.conf \
 
 
 
 
35
  && mkdir -p /run/php
36
 
37
  # Configure supervisord
 
32
  && sed -i 's/listen\s*=\s*127.0.0.1:9000/listen = \/run\/php\/php8.2-fpm.sock/' /etc/php82/php-fpm.d/www.conf \
33
  && sed -i 's/;listen.owner\s*=\s*nobody/listen.owner = nginx/' /etc/php82/php-fpm.d/www.conf \
34
  && sed -i 's/;listen.group\s*=\s*nobody/listen.group = nginx/' /etc/php82/php-fpm.d/www.conf \
35
+ && echo "php_admin_value[error_log] = /proc/self/fd/2" >> /etc/php82/php-fpm.d/www.conf \
36
+ && echo "php_admin_flag[log_errors] = on" >> /etc/php82/php-fpm.d/www.conf \
37
+ && echo "php_admin_value[display_errors] = stdout" >> /etc/php82/php-fpm.d/www.conf \
38
+ && echo "php_admin_value[error_reporting] = E_ALL" >> /etc/php82/php-fpm.d/www.conf \
39
  && mkdir -p /run/php
40
 
41
  # Configure supervisord
entrypoint.sh CHANGED
@@ -61,7 +61,7 @@ fi
61
 
62
  if [ ! -f /app/www/.env ]; then
63
  cat > /app/www/.env <<EOF
64
- APP_DEBUG = false
65
 
66
  [APP]
67
  DEFAULT_TIMEZONE = Asia/Shanghai
@@ -75,7 +75,7 @@ PASSWORD = ${DB_PASSWORD}
75
  HOSTPORT = ${DB_PORT}
76
  CHARSET = utf8mb4
77
  PREFIX = ${DB_PREFIX}
78
- DEBUG = false
79
 
80
  [LANG]
81
  default_lang = zh-cn
@@ -83,4 +83,26 @@ EOF
83
  echo "=== .env written ==="
84
  fi
85
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  exec "$@"
 
61
 
62
  if [ ! -f /app/www/.env ]; then
63
  cat > /app/www/.env <<EOF
64
+ APP_DEBUG = true
65
 
66
  [APP]
67
  DEFAULT_TIMEZONE = Asia/Shanghai
 
75
  HOSTPORT = ${DB_PORT}
76
  CHARSET = utf8mb4
77
  PREFIX = ${DB_PREFIX}
78
+ DEBUG = true
79
 
80
  [LANG]
81
  default_lang = zh-cn
 
83
  echo "=== .env written ==="
84
  fi
85
 
86
+ # Always create diagnostic check.php
87
+ cat > /app/www/public/check.php <<'PHPEOF'
88
+ <?php
89
+ header('Content-Type: text/plain; charset=utf-8');
90
+ echo "===== PHP Probe =====\n\n";
91
+ echo "PHP version: " . PHP_VERSION . "\n";
92
+ echo "PHP-FPM user: " . (function_exists('exec') ? exec('whoami') : 'N/A') . "\n";
93
+ echo "\n--- .env ---\n";
94
+ $f = dirname(__DIR__) . '/.env';
95
+ echo file_exists($f) ? "exists\n" . file_get_contents($f) : "MISSING\n";
96
+ echo "\n--- Database ---\n";
97
+ try {
98
+ $p = new PDO("mysql:host=127.0.0.1;port=3306;dbname=dnsmgr;charset=utf8mb4", "dnsmgr", "123456", [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_TIMEOUT => 3]);
99
+ echo "DB OK\nTables: " . implode(", ", $p->query("SHOW TABLES")->fetchAll(PDO::FETCH_COLUMN)) . "\n";
100
+ echo "Config:\n"; foreach ($p->query("SELECT `key`,`value` FROM dnsmgr_config") as $r) { echo " {$r['key']}={$r['value']}\n"; }
101
+ echo "Users:\n"; foreach ($p->query("SELECT id,username,level,status FROM dnsmgr_user") as $r) { echo " {$r['id']} {$r['username']} lv{$r['level']} st{$r['status']}\n"; }
102
+ } catch (Exception $e) { echo "DB ERROR: " . $e->getMessage() . "\n"; }
103
+ echo "\n===== Done =====\n";
104
+ PHPEOF
105
+ chown nginx:nginx /app/www/public/check.php 2>/dev/null || true
106
+ echo "=== check.php created ==="
107
+
108
  exec "$@"
nginx.conf CHANGED
@@ -8,7 +8,7 @@ server {
8
  error_log /dev/stderr;
9
 
10
  location / {
11
- try_files $uri $uri/ /index.php?$query_string;
12
  }
13
 
14
  location ~ \.php$ {
 
8
  error_log /dev/stderr;
9
 
10
  location / {
11
+ try_files $uri $uri/ /index.php$is_args$args;
12
  }
13
 
14
  location ~ \.php$ {
supervisord.conf CHANGED
@@ -39,7 +39,8 @@ command=/usr/bin/php /app/www/think dmtask
39
  priority=40
40
  autostart=true
41
  autorestart=true
42
- startsecs=5
 
43
  stdout_logfile=/dev/stdout
44
  stdout_logfile_maxbytes=0
45
  stderr_logfile=/dev/stderr
 
39
  priority=40
40
  autostart=true
41
  autorestart=true
42
+ startsecs=10
43
+ startretries=2
44
  stdout_logfile=/dev/stdout
45
  stdout_logfile_maxbytes=0
46
  stderr_logfile=/dev/stderr