invoiceninja / dockerfiles

Docker files for Invoice Ninja
https://hub.docker.com/r/invoiceninja/invoiceninja
GNU General Public License v2.0
418 stars 268 forks source link

Blank screen after upgrade #550

Open BrendanTCC opened 11 months ago

BrendanTCC commented 11 months ago

Setup information

docker-compose

Describe the bug To put things simply, seeing a blank screen after upgrading to latest, just like as observed in #549.

To reproduce Steps to reproduce the behavior:

  1. Run docker-compose down
  2. Run docker-compose pull
  3. Run docker-compose up (as normal)

Expected behavior See, at the very least, a login screen

Logs

root@help:~/dockerfiles# docker-compose up
Starting dockerfiles_db_1 ... done
Starting dockerfiles_app_1 ... done
Starting dockerfiles_server_1 ... done
Attaching to dockerfiles_db_1, dockerfiles_app_1, dockerfiles_server_1
app_1     | 2023-12-18T12:13:50Z [INFO] [Entrypoint]: Initialising Invoice Ninja...
db_1      | 2023-12-18 12:13:48+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
db_1      | 2023-12-18 12:13:51+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
db_1      | 2023-12-18 12:13:51+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
server_1  | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
server_1  | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
server_1  | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
server_1  | 10-listen-on-ipv6-by-default.sh: info: IPv6 listen already enabled
server_1  | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh
server_1  | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
server_1  | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
server_1  | /docker-entrypoint.sh: Configuration complete; ready for start up
server_1  | 2023/12/18 12:13:51 [notice] 1#1: using the "epoll" event method
server_1  | 2023/12/18 12:13:51 [notice] 1#1: nginx/1.25.3
server_1  | 2023/12/18 12:13:51 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14) 
server_1  | 2023/12/18 12:13:51 [notice] 1#1: OS: Linux 5.15.0-75-generic
server_1  | 2023/12/18 12:13:51 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
server_1  | 2023/12/18 12:13:51 [notice] 1#1: start worker processes
server_1  | 2023/12/18 12:13:51 [notice] 1#1: start worker process 22
db_1      | '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'
app_1     | 
app_1     |    INFO  Configuration cached successfully.  
app_1     | 
db_1      | 2023-12-18T12:13:53.332091Z 0 [System] [MY-015015] [Server] MySQL Server - start.
db_1      | 2023-12-18T12:13:54.993268Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
db_1      | 2023-12-18T12:13:55.016822Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.2.0) starting as process 1
db_1      | 2023-12-18T12:13:55.097083Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
app_1     | 
app_1     |    INFO  Caching the framework bootstrap files.  
app_1     | 
app_1     |   config .......................................................... 343ms DONE
db_1      | 2023-12-18T12:13:56.933970Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
app_1     |   routes ........................................................ 1,000ms DONE
app_1     | 
db_1      | 2023-12-18T12:13:58.980590Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
db_1      | 2023-12-18T12:13:58.981606Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
db_1      | 2023-12-18T12:13:59.000224Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
db_1      | 2023-12-18T12:13:59.222037Z 0 [Warning] [MY-015032] [Server] 'SET_USER_ID' (granted to 'root@%') is deprecated and will be removed in a future release.
db_1      | 2023-12-18T12:13:59.224909Z 0 [Warning] [MY-015032] [Server] 'SET_USER_ID' (granted to 'root@localhost') is deprecated and will be removed in a future release.
db_1      | 2023-12-18T12:13:59.461106Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
db_1      | 2023-12-18T12:13:59.464513Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.2.0'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
app_1     | 
app_1     |    INFO  Discovering packages.  
app_1     | 
app_1     |   imdhemy/laravel-purchases ............................................. DONE
app_1     |   intervention/image .................................................... DONE
app_1     |   invoiceninja/inspector ................................................ DONE
app_1     |   laravel/slack-notification-channel .................................... DONE
app_1     |   laravel/socialite ..................................................... DONE
app_1     |   laravel/tinker ........................................................ DONE
app_1     |   laravel/ui ............................................................ DONE
app_1     |   livewire/livewire ..................................................... DONE
app_1     |   nesbot/carbon ......................................................... DONE
app_1     |   nunomaduro/termwind ................................................... DONE
app_1     |   nwidart/laravel-modules ............................................... DONE
app_1     |   sentry/sentry-laravel ................................................. DONE
app_1     |   socialiteproviders/manager ............................................ DONE
app_1     |   spatie/laravel-data ................................................... DONE
app_1     |   turbo124/beacon ....................................................... DONE
app_1     |   webpatser/laravel-countries ........................................... DONE
app_1     | 
app_1     | 
app_1     |    INFO  Nothing to migrate.  
app_1     | 
app_1     | 2023-12-18 12:14:17,834 WARN For [program:php-fpm], redirect_stderr=true but stderr_logfile has also been set to a filename, the filename has been ignored
app_1     | 2023-12-18 12:14:17,836 WARN For [program:scheduler], redirect_stderr=true but stderr_logfile has also been set to a filename, the filename has been ignored
app_1     | 2023-12-18 12:14:17,837 WARN For [program:queue-worker], redirect_stderr=true but stderr_logfile has also been set to a filename, the filename has been ignored
app_1     | 2023-12-18 12:14:17,840 WARN For [program:queue-worker], redirect_stderr=true but stderr_logfile has also been set to a filename, the filename has been ignored
app_1     | 2023-12-18 12:14:17,854 INFO supervisord started with pid 1
app_1     | 2023-12-18 12:14:18,863 INFO spawned: 'shutdown' with pid 57
app_1     | 2023-12-18 12:14:18,915 INFO spawned: 'php-fpm' with pid 58
app_1     | 2023-12-18 12:14:19,053 INFO spawned: 'queue-worker_00' with pid 59
app_1     | 2023-12-18 12:14:19,139 INFO spawned: 'queue-worker_01' with pid 60
app_1     | 2023-12-18 12:14:19,367 INFO spawned: 'scheduler' with pid 61
app_1     | READY
app_1     | 2023-12-18 12:14:20,602 INFO success: shutdown entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
app_1     | 2023-12-18 12:14:20,610 INFO success: php-fpm entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
app_1     | 2023-12-18 12:14:20,612 INFO success: queue-worker_00 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
app_1     | 2023-12-18 12:14:20,614 INFO success: queue-worker_01 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
app_1     | 2023-12-18 12:14:20,614 INFO success: scheduler entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
app_1     | [18-Dec-2023 12:14:21] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root
app_1     | [18-Dec-2023 12:14:21] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root
app_1     | [18-Dec-2023 12:14:21] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root
app_1     | [18-Dec-2023 12:14:21] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root
app_1     | [18-Dec-2023 12:14:21] NOTICE: fpm is running, pid 58
app_1     | [18-Dec-2023 12:14:21] NOTICE: ready to handle connections
app_1     | 172.29.0.4 -  18/Dec/2023:12:14:37 +0000 "GET /index.php" 200
server_1  | 172.29.0.1 - - [18/Dec/2023:12:14:37 +0000] "GET / HTTP/1.1" 200 5 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "167.179.128.126"server_1  | 172.29.0.1 - - [18/Dec/2023:12:14:39 +0000] "GET /flutter_service_worker.js?v=5.6.31 HTTP/1.1" 304 0 "https://inv.brendo.org/flutter_service_worker.js?v=5.6.31" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "167.179.128.126"
app_1     |   2023-12-18 12:15:03 Running [queue-size-job] .................... 187ms DONE
app_1     |   2023-12-18 12:15:03 Running [Callback] .......................... 293ms DONE
app_1     | 
app_1     |   2023-12-18 12:15:05 App\Jobs\Ninja\QueueSize ....................... RUNNING
app_1     |   2023-12-18 12:15:05 App\Jobs\Ninja\QueueSize .................. 76.52ms DONE
app_1     |    INFO  No scheduled commands are ready to run.  
app_1     | 
app_1     |    INFO  No scheduled commands are ready to run.  
app_1     | 

Docker/Kubernetes/Helm:

Server: Engine: Version: 24.0.5 API version: 1.43 (minimum version 1.12) Go version: go1.20.3 Git commit: 24.0.5-0ubuntu1~22.04.1 Built: Mon Aug 21 19:50:14 2023 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.12-0ubuntu1~22.04.3 GitCommit:
runc: Version: 1.1.4-0ubuntu1~22.04.3 GitCommit:
docker-init: Version: 0.19.0 GitCommit:


**Additional context**
PLEASE NOTE: Browser console comes back with quite literally nothing, and `~/dockerfiles/docker/app/storage/logs/laravel.log` only has the following:

[2023-12-18 11:54:57] production.INFO: finished running composer install
[2023-12-18 11:54:57] production.INFO: cleared config
[2023-12-18 11:54:57] production.INFO: view cleared
[2023-12-18 11:54:57] production.INFO: queue restarted
[2023-12-18 11:54:58] production.INFO: Sent for version check

hillelcoren commented 11 months ago

Is it possible you've run out of disk space? It can cause this problem.

BrendanTCC commented 11 months ago

Based on what I can see, it appears I've got a whole ~7GB of space free.

Kompromittiert93 commented 11 months ago

Is it possible you've run out of disk space? It can cause this problem.

I actually ran into this problem, is there any solution to get it working again?

update: I've tried a lot of things, nothing helped. I restored from backup.

julianengel commented 6 months ago

Hey @BrendanTCC, it's a longshot, but you can try UPDATE accounts SET set_react_as_default_ap = 0; on the db container. The react app causes the blank screen.

Der-Feind commented 4 months ago

Hey @BrendanTCC, it's a longshot, but you can try UPDATE accounts SET set_react_as_default_ap = 0; on the db container. The react app causes the blank screen.

But it's not the sense of this, to deactivate react - it should work, as it worked before.

After my upgrade to the latest version, I have the same issue. Since then everything worked fine.

BrendanTCC commented 1 month ago

hey, apologies for radio silence for so long. ended up deleting the original container and such and gave up on it for god knows how long... until about a couple of months ago.

did an upgrade again, but this time the vm on which i was running the container ran out of space mid-upgrade.

to make matters worse, like an idiot i never took backups so i've come full circle.

sadly trying to turn off react didn't work this time.

that said, i hoped trying to rollback DB migrations then getting the app to try again would help but alas... no dice. i think i accidentally made things worse.

what doesn't help as well is that dockerfiles-app-1 keeps restarting after i (admittedly quite stupidly) restarted the entire stack so i can't even get back in and get the migration dump to try and whip up a reversal script.

any workarounds (and i suppose belittling for my goofs) appreciated.

BrendanTCC commented 1 month ago

update: i figured out the migrations rollback issue for myself - managed to get into the container and run artisan migrate:refresh. Unfortunately, that hasn't solved the blank screen issue.

at the moment, i'm not comfortable completely shutting down the container given i've accidentally pruned my Linkwarden instance after not realizing it hadn't brought itself back up. with this in mind, any suggestions for going in and otherwise suspending billing for recurring invoices are much appreciated.

jc1231 commented 1 week ago

Same here. Have been running fine for almost a year, did a pull to upgrade to the latest and now I get a white screen. Nginx shows 200's for every request and the app shows 200s as well but every request is logged as just '/index.php'.

Tried setting set_react_as_default_ap = 0, 15gb free space