Upload 4 files
Browse files- Dockerfile +4 -0
- entrypoint.sh +24 -2
- nginx.conf +1 -1
- 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 =
|
| 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 =
|
| 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
|
| 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=
|
|
|
|
| 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
|