linuxserver / docker-heimdall

GNU General Public License v3.0
325 stars 48 forks source link

[BUG] PHP fatal error when trying to access haimdall #133

Closed greedyro closed 6 months ago

greedyro commented 1 year ago

Is there an existing issue for this?

Current Behavior

Instead of heimdall apearing in the broser i get: "504 Gateway Time-out nginx", and in docker logs i get a PHP fatal error

Expected Behavior

No response

Steps To Reproduce

  1. start the docker
  2. after it says in docker logs that it's done
  3. when navigating to the address (for http for example with :80)
  4. in logs appears a PHP error
  5. and in the browser it says: "504 Gateway Time-out nginx"

Environment

- OS:  debian-12.1.0-amd64-netinst
- How docker service was installed:
with docker compose from portainer using :
---
version: "2.1"
services:
  heimdall:
    image: lscr.io/linuxserver/heimdall
    container_name: heimdall
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Bucharest
    volumes:
      - /mnt/prox-share/docker/config/heimdall:/config
    ports:
      - 83:80
      - 443:443
    restart: unless-stopped

CPU architecture

x86-64

Docker creation

---
version: "2.1"
services:
  heimdall:
    image: lscr.io/linuxserver/heimdall
    container_name: heimdall
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Bucharest
    volumes:
      - /mnt/prox-share/docker/config/heimdall:/config
    ports:
      - 83:80
      - 443:443
    restart: unless-stopped

Container logs

thrown
  at /app/www/vendor/facade/ignition/src/SolutionProviders/MergeConflictSolutionProvider.php:52
     48 |     }
     49 |
     50 |     protected function getCurrentBranch(string $directory): string
     51 |     {
  ➜  52 |        $branch = "'".trim(shell_exec("cd ${directory}; git branch | grep \\* | cut -d ' ' -f2"))."'";
     53 | 
     54 |         if ($branch === "''") {
     55 |             $branch = 'current branch';
     56 |         }
PHP Fatal error:  Uncaught Whoops\Exception\ErrorException: Using ${var} in strings is deprecated, use {$var} instead in /app/www/vendor/facade/ignition/src/SolutionProviders/MergeConflictSolutionProvider.php:52
#0 /app/www/vendor/composer/ClassLoader.php(571): Whoops\Run->handleError()
#1 /app/www/vendor/composer/ClassLoader.php(571): include()
#2 /app/www/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile()
#3 [internal function]: Composer\Autoload\ClassLoader->loadClass()
#4 /app/www/vendor/facade/ignition/src/SolutionProviders/SolutionProviderRepository.php(50): class_implements()
#5 [internal function]: Facade\Ignition\SolutionProviders\SolutionProviderRepository->Facade\Ignition\SolutionProviders\{closure}()
#6 /app/www/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(717): array_filter()
#7 /app/www/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(358): Illuminate\Support\Arr::where()
#8 /app/www/vendor/facade/ignition/src/SolutionProviders/SolutionProviderRepository.php(49): Illuminate\Support\Collection->filter()
#9 /app/www/vendor/nunomaduro/collision/src/Adapters/Laravel/IgnitionSolutionsRepository.php(36): Facade\Ignition\SolutionProviders\SolutionProviderRepository->getSolutionsForThrowable()
#10 /app/www/vendor/nunomaduro/collision/src/Writer.php(244): NunoMaduro\Collision\Adapters\Laravel\IgnitionSolutionsRepository->getFromThrowable()
#11 /app/www/vendor/nunomaduro/collision/src/Writer.php(123): NunoMaduro\Collision\Writer->renderSolution()
#12 /app/www/vendor/nunomaduro/collision/src/Handler.php(39): NunoMaduro\Collision\Writer->write()
#13 /app/www/vendor/nunomaduro/collision/src/Adapters/Laravel/ExceptionHandler.php(72): NunoMaduro\Collision\Handler->handle()
#14 /app/www/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(185): NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler->renderForConsole()
#15 /app/www/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(171): Illuminate\Foundation\Bootstrap\HandleExceptions->renderForConsole()
#16 /app/www/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(209): Illuminate\Foundation\Bootstrap\HandleExceptions->handleException()
#17 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleShutdown()
#18 {main}
      thrown in /app/www/vendor/facade/ignition/src/SolutionProviders/MergeConflictSolutionProvider.php on line 52
github-actions[bot] commented 1 year ago

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

j0nnymoe commented 1 year ago

Try using a local folder on your VM rather than a remote mount.

LinuxServer-CI commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

vincejv commented 11 months ago

@j0nnymoe Same error message on my end, not using a mount

---
version: "2.1"
services:
  heimdall:
    image: lscr.io/linuxserver/heimdall:latest
    container_name: heimdall
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/Utc
    volumes:
      - ./config:/config
    network_mode: bridge
    ports:
      - 8082:80
    restart: unless-stopped
vincejv commented 11 months ago

I seem to have figured out the issue, the container needs internet access to pull something from github??? And it's spamming the log files with the error

j0nnymoe commented 11 months ago

Because it pulls down the app list for any updates.

LinuxServer-CI commented 10 months ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

Andy-Voigt commented 9 months ago

I have the same error log spam. But my container has internet access and i can ping github.com without problems.

For me it looks like there is an issue with the permission. The config folder is owned by abc? The containers start with the message:

Setting resolver to  127.0.0.11
Setting worker_processes to 4
generating self-signed keys in /config/keys, you can replace these with your own keys if required
New container detected, installing Heimdall
**** Permissions could not be set. This is probably because your volume mounts are remote or read-only. ****
**** The app may not work properly and we will not provide support for it. ****
Creating app key. This may take a while on slower systems
LinuxServer-CI commented 7 months ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

homerr commented 6 months ago

I've just spun the container up with the same docker compose used above, on a Debian netinst system with local storage and have not been able to replicate the issue.

Happy to go into this further, but it seems as if there could be an issue with the system configurations here leading to the issues posted.

Closing for now.

github-actions[bot] commented 5 months ago

This issue is locked due to inactivity