This commit is contained in:
kaadon
2025-10-31 01:21:31 +08:00
parent 9aebd17f1c
commit a535ec79b6
46 changed files with 695 additions and 4 deletions

5
docker/crontab Normal file
View File

@ -0,0 +1,5 @@
# 每分钟执行 start.sh
* * * * * /bin/sh /app/public/start.sh >> /app/runtime/log/cron.log 2>&1
# 每分钟执行 think InterestTreasure
* * * * * cd /app && /usr/local/bin/php /app/think InterestTreasure >> /app/runtime/log/think.log 2>&1

19
docker/entrypoint.sh Normal file
View File

@ -0,0 +1,19 @@
#!/bin/sh
set -e
# 根据环境变量生成 .env 文件
cat > /app/.env <<EOF
[DATABASE]
HOSTNAME=${database_hostname:-10.100.100.88}
DATABASE=${database_database:-mydatabase}
USERNAME=${database_username:-myuser}
PASSWORD=${database_password:-mypassword}
CHARSET=${database_charset:-utf8mb4}
HOSTPORT=${database_hostport:-3306}
EOF
echo "Generated .env file:"
cat /app/.env
# 执行原始镜像的入口点webdevops 镜像使用 supervisord
exec /entrypoint supervisord

View File

@ -0,0 +1,41 @@
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
}

52
docker/nginx/vhost.conf Normal file
View File

@ -0,0 +1,52 @@
server
{
listen 80;
server_name _;
root /app/public;
index index.php index.html;
#必须放在解析PHP之前
#禁止目录执行php SATRT
location ~* ^/(h5|guoqi|static|upload)/.*\.(php|php5|php7|php8)$ {
default_type application/json;
return 200 '{"message":"You are definitely a particularly bad big fool."}';
}
#禁止目录执行php END
include /opt/docker/etc/nginx/enable-php.conf;
location / {
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
}
location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
location ~ \.well-known{
allow all;
}
if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
return 403;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
error_log /dev/null;
access_log /dev/null;
}
location ~ .*\.(js|css)?$
{
expires 12h;
error_log /dev/null;
access_log /dev/null;
}
# 访问日志
access_log /docker.stdout;
error_log /docker.stderr;
}