diff --git a/docker/Dockerfile b/docker/Dockerfile index 613e35d..8ad975c 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,7 +1,7 @@ -FROM alpine:edge +FROM alpine:3.20 -RUN apk add --no-cache redis pwgen sudo socat wget curl git nginx \ -php7-ctype php7-ftp php7-simplexml php7 php7-phar php7-curl php7-openssl php7-mbstring php7-json php7-dom php7-fpm +RUN apk add --no-cache pwgen sudo socat wget curl git nginx \ +php83-ctype php83-ftp php83-simplexml php83 php83-phar php83-curl php83-openssl php83-mbstring php83-json php83-dom php83-fpm RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer RUN mkdir -p /var/www/backupdrop @@ -16,12 +16,13 @@ RUN cp /var/www/backupdrop/docker/rootfs/start.sh /etc/start.sh RUN chmod +x /etc/start.sh # nginx stuff -RUN cp /var/www/backupdrop/docker/rootfs/nginx.conf /etc/nginx/conf.d/default.conf +ADD docker/rootfs/nginx.conf /etc/nginx/http.d/default.conf RUN mkdir -p /run/nginx RUN mkdir -p /var/log/nginx # php stuff -RUN cp /var/www/backupdrop/docker/rootfs/php7/* /etc/php7/. +RUN sed -i 's/nobody/nginx/g' /etc/php83/php-fpm.d/www.conf +RUN sed -i 's/E_ALL \& ~E_DEPRECATED \& ~E_STRICT/E_ALL \& ~E_DEPRECATED \& ~E_STRICT \& ~E_NOTICE \& ~E_WARNING/g' /etc/php83/php.ini # web interface stuff WORKDIR /var/www/backupdrop/web/lib diff --git a/docker/rootfs/php7/php-fpm.conf b/docker/rootfs/php7/php-fpm.conf deleted file mode 100644 index 580605d..0000000 --- a/docker/rootfs/php7/php-fpm.conf +++ /dev/null @@ -1,29 +0,0 @@ -[global] -error_log = /var/log/php-fpm/fpm-error.log -daemonize = no - -[www] -user = nginx -group = nginx -;listen = /var/run/php-fpm.sock -listen = 127.0.0.1:9000 - -listen.owner = nginx -listen.group = nginx -listen.mode = 0750 - -pm = dynamic -pm.max_children = 9 -pm.start_servers = 3 -pm.min_spare_servers = 2 -pm.max_spare_servers = 4 -pm.process_idle_timeout = 10s; -pm.max_requests = 500 - -rlimit_files = 50000 -rlimit_core = 0 -request_terminate_timeout = 600 - -chdir = / -clear_env = no -catch_workers_output = yes diff --git a/docker/rootfs/php7/php.ini b/docker/rootfs/php7/php.ini deleted file mode 100644 index 148b8b0..0000000 --- a/docker/rootfs/php7/php.ini +++ /dev/null @@ -1,264 +0,0 @@ -[PHP] - -; For Systems that run from a RAM disk -; You might want to change the temp Directories -; So the uploads don't eat up your ram -; don't forget to make the folders writeable -; -;sys_temp_dir = /data/tmp/php -;upload_tmp_dir = /data/tmp/php - - -;;;;;;;;;;;;;;;;;;;; -; Language Options ; -;;;;;;;;;;;;;;;;;;;; - -engine = On -short_open_tag = Off -asp_tags = Off -precision = 14 -output_buffering = 4096 -zlib.output_compression = Off -implicit_flush = Off -unserialize_callback_func = -serialize_precision = 17 -disable_functions = -disable_classes = -zend.enable_gc = On - -;;;;;;;;;;;;;;;;; -; Miscellaneous ; -;;;;;;;;;;;;;;;;; - -expose_php = Off -cgi.fix_pathinfo = 0 - -;;;;;;;;;;;;;;;;;;; -; Resource Limits ; -;;;;;;;;;;;;;;;;;;; - -max_execution_time = 3600 -max_input_time = 3600 -memory_limit = -1 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Error handling and logging ; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE -display_errors = Off -display_startup_errors = Off -log_errors = On -log_errors_max_len = 1024 -ignore_repeated_errors = Off -ignore_repeated_source = Off -report_memleaks = On -track_errors = Off -html_errors = On - -;;;;;;;;;;;;;;;;; -; Data Handling ; -;;;;;;;;;;;;;;;;; - -variables_order = "GPCS" -request_order = "GP" -register_argc_argv = Off -auto_globals_jit = On -post_max_size = 0M -auto_prepend_file = -auto_append_file = -default_mimetype = "text/html" -default_charset = "UTF-8" - -;;;;;;;;;;;;;;;;;;;;;;;;; -; Paths and Directories ; -;;;;;;;;;;;;;;;;;;;;;;;;; - -doc_root = -user_dir = -enable_dl = Off - -;;;;;;;;;;;;;;;; -; File Uploads ; -;;;;;;;;;;;;;;;; - -file_uploads = On -upload_max_filesize = 0M -max_file_uploads = 20 - -;;;;;;;;;;;;;;;;;; -; Fopen wrappers ; -;;;;;;;;;;;;;;;;;; - -allow_url_fopen = On -allow_url_include = Off -default_socket_timeout = 60 - -;;;;;;;;;;;;;;;;;;; -; Module Settings ; -;;;;;;;;;;;;;;;;;;; - -[CLI Server] -cli_server.color = On - -[Date] -date.timezone = UTC - -[Pdo_mysql] -pdo_mysql.cache_size = 2000 -pdo_mysql.default_socket = - -[mail function] -SMTP = localhost -smtp_port = 25 -sendmail_path = "/usr/sbin/sendmail -t -i" -mail.add_x_header = On - -[SQL] -sql.safe_mode = Off - -[ODBC] -odbc.allow_persistent = On -odbc.check_persistent = On -odbc.max_persistent = -1 -odbc.max_links = -1 -odbc.defaultlrl = 4096 -odbc.defaultbinmode = 1 - -[Interbase] -ibase.allow_persistent = 1 -ibase.max_persistent = -1 -ibase.max_links = -1 -ibase.timestampformat = "%Y-%m-%d %H:%M:%S" -ibase.dateformat = "%Y-%m-%d" -ibase.timeformat = "%H:%M:%S" - -[MySQL] -mysql.allow_local_infile = On -mysql.allow_persistent = On -mysql.cache_size = 2000 -mysql.max_persistent = -1 -mysql.max_links = -1 -mysql.default_port = -mysql.default_socket = -mysql.default_host = -mysql.default_user = -mysql.default_password = -mysql.connect_timeout = 60 -mysql.trace_mode = Off - -[MySQLi] -mysqli.max_persistent = -1 -mysqli.allow_persistent = On -mysqli.max_links = -1 -mysqli.cache_size = 2000 -mysqli.default_port = 3306 -mysqli.default_socket = -mysqli.default_host = -mysqli.default_user = -mysqli.default_pw = -mysqli.reconnect = Off - -[mysqlnd] -mysqlnd.collect_statistics = On -mysqlnd.collect_memory_statistics = Off - -[PostgreSQL] -pgsql.allow_persistent = On -pgsql.auto_reset_persistent = Off -pgsql.max_persistent = -1 -pgsql.max_links = -1 -pgsql.ignore_notice = 0 -pgsql.log_notice = 0 - -[Sybase-CT] -sybct.allow_persistent = On -sybct.max_persistent = -1 -sybct.max_links = -1 -sybct.min_server_severity = 10 -sybct.min_client_severity = 10 - -[bcmath] -bcmath.scale = 0 - -[Session] -session.save_handler = files -session.save_path = "/var/lib/php7/sessions" -session.use_strict_mode = 0 -session.use_cookies = 1 -;session.cookie_secure = -session.use_only_cookies = 1 -session.name = PHPSESSID -session.auto_start = 0 -session.cookie_lifetime = 0 -session.cookie_path = / -session.cookie_domain = -session.cookie_httponly = -session.serialize_handler = php -session.gc_probability = 0 -session.gc_divisor = 1000 -session.gc_maxlifetime = 1440 -session.referer_check = -;session.entropy_length = 32 -;session.entropy_file = /dev/urandom -session.cache_limiter = nocache -session.cache_expire = 180 -session.use_trans_sid = 0 -session.hash_function = 0 -session.hash_bits_per_character = 5 -;session.upload_progress.enabled = On -;session.upload_progress.cleanup = On -;session.upload_progress.prefix = "upload_progress_" -;session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS" -;session.upload_progress.freq = "1%" -;session.upload_progress.min_freq = "1" -url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" - -[MSSQL] -mssql.allow_persistent = On -mssql.max_persistent = -1 -mssql.max_links = -1 -mssql.min_error_severity = 10 -mssql.min_message_severity = 10 -mssql.compatibility_mode = Off -mssql.secure_connection = Off - -[Tidy] -tidy.clean_output = Off - -[soap] -soap.wsdl_cache_enabled =1 -soap.wsdl_cache_dir = "/tmp" -soap.wsdl_cache_ttl = 86400 -soap.wsdl_cache_limit = 5 - -[ldap] -ldap.max_links = -1 - -[opcache] -opcache.enable=0 -opcache.validate_timestamps=0 -opcache.memory_consumption=256 -opcache.max_accelerated_files=50000 -opcache.enable_cli = 0 -opcache.interned_strings_buffer = 16 -opcache.max_wasted_percentage = 5 -opcache.use_cwd = 1 -opcache.revalidate_freq = 2 -opcache.revalidate_path =0 -opcache.save_comments = 1 -opcache.load_comments = 1 -opcache.fast_shutdown = 0 -opcache.enable_file_override = 0 -opcache.optimization_level = 0xffffffff -;opcache.inherited_hack = 1 -opcache.dups_fix = 0 -opcache.blacklist_filename = -opcache.max_file_size = 0 -opcache.consistency_checks = 0 -opcache.force_restart_timeout = 180 -opcache.error_log = "" -opcache.log_verbosity_level = 1 -opcache.preferred_memory_model = -opcache.protect_memory = 0 -opcache.restrict_api = diff --git a/docker/rootfs/start.sh b/docker/rootfs/start.sh index 7194d96..3e32ec2 100644 --- a/docker/rootfs/start.sh +++ b/docker/rootfs/start.sh @@ -3,7 +3,7 @@ cd /var/www/backupdrop echo ' [+] Starting php' -php-fpm7 & +php-fpm83 chown -R nginx:nginx /var/www/ &