alexjustesen / speedtest-tracker

Speedtest Tracker is a self-hosted internet performance tracking application that runs speedtest checks against Ookla's Speedtest service.
https://speedtest-tracker.dev/
MIT License
2.69k stars 99 forks source link

In Terminal.php line 131: exec(): Unable to fork [stty 2>&1] #400

Closed switch263 closed 1 year ago

switch263 commented 1 year ago

Describe the bug "Unable to fork" error on clean startup. I'm able to run all other containers as desired without issue. ulimit values within container appear appropriate, and the system has ample free resources.

To Reproduce Steps to reproduce the behavior: Deploy docker container, observe failure of any tests to run, and errors in docker logs. Docker-compose entry:

  speedtest-tracker:
    container_name: speedtest-tracker
    ports:
        - '8765:80'
        - '8443:443'
    environment:
        - PUID=1001
        - PGID=1001
    volumes:
        - '/data/speedtest-tracker:/config'
    image: 'ghcr.io/alexjustesen/speedtest-tracker:latest'
    restart: unless-stopped

Expected behavior Application to start normally

Environment (please complete the following information):

Screenshots N/A - nothing of value shows in the UI. It appears normal but does not ever get any results data, since forking fails.

**Logs**
💪  Starting the queue worker...
[2023-02-09 18:41:01] production.ERROR: exec(): Unable to fork [stty 2>&1] {"exception":"[object] (ErrorException(code: 0): exec(): Unable to fork [stty 2>&1] at /var/www/html/vendor/symfony/console/Terminal.php:131)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(266): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError()
#1 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}()
#2 /var/www/html/vendor/symfony/console/Terminal.php(131): exec()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(123): Symfony\\Component\\Console\\Terminal::hasSttyAvailable()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Queue\\Console\\WorkCommand->handle()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\\Container\\BoundMethod::callBoundMethod()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(663): Illuminate\\Container\\BoundMethod::call()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(182): Illuminate\\Container\\Container->call()
#10 /var/www/html/vendor/symfony/console/Command/Command.php(312): Illuminate\\Console\\Command->execute()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(152): Symfony\\Component\\Console\\Command\\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(1022): Illuminate\\Console\\Command->run()
#13 /var/www/html/vendor/symfony/console/Application.php(314): Symfony\\Component\\Console\\Application->doRunCommand()
#14 /var/www/html/vendor/symfony/console/Application.php(168): Symfony\\Component\\Console\\Application->doRun()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\\Component\\Console\\Application->run()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\\Console\\Application->run()
#17 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#18 {main}
"}

In Terminal.php line 131:

  exec(): Unable to fork [stty 2>&1]

Additional context N/A

alexjustesen commented 1 year ago

Can you try deleting the image and pulling the latest?

brum74 commented 1 year ago

I have the same problem on a fresh setup. I'm running docker in a debian vm.

alexjustesen commented 1 year ago

Double check you PUID and PGID values as read/write errors can occur if these aren't set correctly. https://docs.speedtest-tracker.dev/getting-started/installation#required-configuration

brum74 commented 1 year ago

I verified my UID=1000 and GID=1000 and attached more of the logging which shows it should be set.

-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------

‍♂️ Checking for Laravel automations...
 SSL_MODE has been set to MIXED, setting the web server to work in HTTP + HTTPS...
 Linking the storage...
‍♂️ An SSL key was not detected, so I'll generate a self-signed SSL certificate pair for you...
.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+...+....+...+...+...........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

   INFO  The [public/storage] link has been connected to [storage/app/public].  

  Configuring Speedtest Tracker...
✅  Database exists
  Creating database symlink
✅  Environment file exists
  Creating symlinks to config and log files
✅  App key exists
  Fixing app path file permissions
  Building the cache...
.+.....................+..+.......+...........+.+...+........+.........+.+........+.+.....+...+.+......+.....+.+..+...+.........+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.....+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.........+.+......+.........+............+...+...........+...+.+..+.......+........+.......+..+....+..+.......+........+....+...........+....+........+...+..........+........+.+......+..............+...+......+......+................+...+......+........+...+...+....+.....+..........+..+.+..+.......+......+.....+...+................+...+......+.........+......+.........+..+......+...+....+............+...+..+...+.......+...............+......+.....+....+...+......+..+...+.........+...............+.............+........+.+.....+....+.....+.+.....+.+.....+.......+...........+....+..+.............+.....+.+...........+....+..+....+......+.........+........+......+......+....+......+...+.....+.......+...........+...+....+..+...+.+..+.........+....+.....+.+...+...............+..+.........+......+...+.......+........+..........+......+..+......................+......+......+...+...+............+...+..+......+............+...+......+......+...+.+......+...+............+.................+.+............+...+..+....+........+.+.....+.+.....+...+.+..+....[02-Mar-2023 11:08:01] NOTICE: fpm is running, pid 102
[02-Mar-2023 11:08:01] NOTICE: ready to handle connections
[02-Mar-2023 11:08:01] NOTICE: systemd monitor interval set to 10000ms
......+.....+...+.......+........+.......+............+...........+....+...+.....+...+.........+.+...............+.....+.+...+...+.....+....+.....+.+.....+.........+..........+.........+..+....+...+...........+.+.....+.+..+.......+.........+...........+......+...+.......+........+......+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
  Migrating the database...
✅  All set, starting Speedtest Tracker container...
⏰  Starting the cron service...
  Starting the queue worker...
[2023-03-02 16:08:01] production.ERROR: exec(): Unable to fork [stty 2>&1] {"exception":"[object] (ErrorException(code: 0): exec(): Unable to fork [stty 2>&1] at /var/www/html/vendor/symfony/console/Terminal.php:131)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(266): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError()
#1 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}()
#2 /var/www/html/vendor/symfony/console/Terminal.php(131): exec()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(123): Symfony\\Component\\Console\\Terminal::hasSttyAvailable()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Queue\\Console\\WorkCommand->handle()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\\Container\\BoundMethod::callBoundMethod()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\\Container\\BoundMethod::call()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\\Container\\Container->call()
#10 /var/www/html/vendor/symfony/console/Command/Command.php(312): Illuminate\\Console\\Command->execute()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\\Component\\Console\\Command\\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(1022): Illuminate\\Console\\Command->run()
#13 /var/www/html/vendor/symfony/console/Application.php(314): Symfony\\Component\\Console\\Application->doRunCommand()

#14 /var/www/html/vendor/symfony/console/Application.php(168): Symfony\\Component\\Console\\Application->doRun()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\\Component\\Console\\Application->run()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\\Console\\Application->run()
#17 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#18 {main}
"} 
In Terminal.php line 131:

  exec(): Unable to fork [stty 2>&1]  

This is my compose:

  speedtest-local:
    container_name: speedtest-local
    image: ghcr.io/alexjustesen/speedtest-tracker:latest
    restart: unless-stopped
    ports:
      - 8766:80
      - 8767:443
    environment:
      - TZ=America/New_York
      - PGID=1000
      - PUID=1000
    volumes:
      - ./speedtest/data/config:/config
snown commented 1 year ago

I'm seeing the same issue. Brand new install on docker

jimueller commented 1 year ago

Seeing the same on Docker Swarm, verified PUID / PGID match. This app looks really great so I'm determined to get it working, despite not being a PHP dev.

I thought it might be nice to run strace to see if I could get more info on what's actually failing. After observing the processes I thought following the s6-supervise queue-worker and it's child threads would be the most promising.

strace -p <QUEUE WORKER PID> -f -Z

Need to track these down a bit more, but decided to post in case anything jumps out to anyone. Looks like it's possibly having trouble finding bash or the run script.

[pid 558716] execve("/command/php", ["php", "/var/www/html/artisan", "queue:work", "--tries=3", "--no-ansi", "-q"], 0x7fff2aae8600 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558716] execve("/usr/local/sbin/php", ["php", "/var/www/html/artisan", "queue:work", "--tries=3", "--no-ansi", "-q"], 0x7fff2aae8600 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558716] execve("/usr/local/bin/php", ["php", "/var/www/html/artisan", "queue:work", "--tries=3", "--no-ansi", "-q"], 0x7fff2aae8600 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558716] execve("/usr/sbin/php", ["php", "/var/www/html/artisan", "queue:work", "--tries=3", "--no-ansi", "-q"], 0x7fff2aae8600 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558716] arch_prctl(0x3001 /* ARCH_??? */, 0x7ffd3a4476f0) = -1 EINVAL (Invalid argument)
[pid 558716] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/usr/lib/locale/C.UTF-8/LC_CTYPE", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/command/php", 0x7ffd3a4440c0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/usr/local/sbin/php", 0x7ffd3a4440c0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/usr/local/bin/php", 0x7ffd3a4440c0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/usr/sbin/php", 0x7ffd3a4440c0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/usr/bin/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/etc/php/8.1/cli/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid 558716] openat(AT_FDCWD, "/usr/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a444f60) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] newfstatat(AT_FDCWD, "/etc/gnutls/config", 0x7ffd3a445360, 0) = -1 ENOENT (No such file or directory)
[pid 558716] ioctl(3, TCGETS, 0x7ffd3a443b90) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] access("/var/www/html/vendor/composer/../amphp/parallel/lib/Sync/SerializationException.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../amphp/amp/lib/Parallel/Sync/SerializationException.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/var/www/html/resources/lang", 0x7ffd3a443d90, 0) = -1 ENOENT (No such file or directory)
[pid 558716] ioctl(1, TCGETS, 0x7ffd3a443dd0) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(2, TCGETS, 0x7ffd3a443dd0) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] access("/var/www/html/vendor/composer/../symfony/translation/TranslatorInterface.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] ioctl(1, TCGETS, 0x7ffd3a443dd0) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] ioctl(2, TCGETS, 0x7ffd3a443dd0) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558716] access("/var/www/html/vendor/composer/../filament/forms/src/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/filament/src/Forms/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/spatie-laravel-settings-plugin/src/Forms/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/forms/src/Commands/Aliases/MakeFormCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/filament/src/Forms/Commands/Aliases/MakeFormCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/spatie-laravel-settings-plugin/src/Forms/Commands/Aliases/MakeFormCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/tables/src/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/filament/src/Tables/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/spatie-laravel-settings-plugin/src/Tables/Commands/Aliases/InstallCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/tables/src/Commands/Aliases/MakeTableCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/filament/src/Tables/Commands/Aliases/MakeTableCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../filament/spatie-laravel-settings-plugin/src/Tables/Commands/Aliases/MakeTableCommand.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/storage/app/laravel-settings/settings.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/vendor/composer/../doctrine/dbal/src/Driver/PDOConnection.php", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/config/database.sqlite-journal", 0x7ffd3a442d00, 0) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/config/database.sqlite-wal", 0x7ffd3a442d00, 0) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/config/database.sqlite-journal", 0x7ffd3a443440, 0) = -1 ENOENT (No such file or directory)
[pid 558716] newfstatat(AT_FDCWD, "/config/database.sqlite-wal", 0x7ffd3a443440, 0) = -1 ENOENT (No such file or directory)
[pid 558716] access("/var/www/html/bootstrap/cache/events.php", F_OK) = -1 ENOENT (No such file or directory)
strace: Process 558718 attached
[pid 558718] execve("/command/stty", ["stty", "-a"], 0x5558b7c1feb0 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558718] execve("/usr/local/sbin/stty", ["stty", "-a"], 0x5558b7c1feb0 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558718] execve("/usr/local/bin/stty", ["stty", "-a"], 0x5558b7c1feb0 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558718] execve("/usr/sbin/stty", ["stty", "-a"], 0x5558b7c1feb0 /* 36 vars */) = -1 ENOENT (No such file or directory)
[pid 558718] arch_prctl(0x3001 /* ARCH_??? */, 0x7ffd801a1c30) = -1 EINVAL (Invalid argument)
[pid 558718] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
[pid 558718] ioctl(0, TCGETS, 0x7ffd801a1c40) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558718] +++ exited with 1 +++
[pid 558716] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5055, si_uid=1000, si_status=1, si_utime=0, si_stime=0} ---
strace: Process 558719 attached
[pid 558719] execve("/command/stty", ["stty", "-a"], 0x5558b7e462a0 /* 37 vars */) = -1 ENOENT (No such file or directory)
[pid 558719] execve("/usr/local/sbin/stty", ["stty", "-a"], 0x5558b7e462a0 /* 37 vars */) = -1 ENOENT (No such file or directory)
[pid 558719] execve("/usr/local/bin/stty", ["stty", "-a"], 0x5558b7e462a0 /* 37 vars */) = -1 ENOENT (No such file or directory)
[pid 558719] execve("/usr/sbin/stty", ["stty", "-a"], 0x5558b7e462a0 /* 37 vars */) = -1 ENOENT (No such file or directory)
[pid 558719] arch_prctl(0x3001 /* ARCH_??? */, 0x7ffebf640f20) = -1 EINVAL (Invalid argument)
[pid 558719] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
[pid 558719] ioctl(0, TCGETS, 0x7ffebf640f30) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558719] +++ exited with 1 +++
[pid 558716] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5056, si_uid=1000, si_status=1, si_utime=0, si_stime=0} ---
[pid 558716] access("/var/www/html/storage/framework/down", F_OK) = -1 ENOENT (No such file or directory)
[pid 558716] clone3({flags=CLONE_VM|CLONE_VFORK, exit_signal=SIGCHLD, stack=0x7ff8f05db000, stack_size=0x9000}, 88) = -1 EPERM (Operation not permitted)
[pid 558716] +++ exited with 1 +++
[pid 558708] ioctl(2, TIOCGWINSZ, 0x7fffe7e03660) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558708] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5054, si_uid=1000, si_status=1, si_utime=25, si_stime=9} ---
[pid 558708] wait4(-1, 0x7fffe7e02ed0, WNOHANG, NULL) = -1 ECHILD (No child processes)
[pid 558708] +++ exited with 1 +++
open("max-death-tally", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
strace: Process 558720 attached
[pid 558720] execve("./finish", ["finish", "1", "0"], 0x7ffc031408e0 /* 34 vars */) = -1 ENOENT (No such file or directory)
[pid 558720] +++ exited with 127 +++
open("timeout-finish", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
read(6, 0x7ffc03140560, 128)            = -1 EAGAIN (Resource temporarily unavailable)
open("lock-fd", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("notification-fd", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
strace: Process 558721 attached
strace: Process 558722 attached
[pid 558722] +++ exited with 1 +++
[pid 558721] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5059, si_uid=0, si_status=1, si_utime=0, si_stime=0} ---
[pid 558721] execve("/command/bash", ["bash", "./run"], 0x7ffee5a813d8 /* 34 vars */) = -1 ENOENT (No such file or directory)
[pid 558721] execve("/usr/local/sbin/bash", ["bash", "./run"], 0x7ffee5a813d8 /* 34 vars */) = -1 ENOENT (No such file or directory)
[pid 558721] execve("/usr/local/bin/bash", ["bash", "./run"], 0x7ffee5a813d8 /* 34 vars */) = -1 ENOENT (No such file or directory)
[pid 558721] execve("/usr/sbin/bash", ["bash", "./run"], 0x7ffee5a813d8 /* 34 vars */) = -1 ENOENT (No such file or directory)
[pid 558721] arch_prctl(0x3001 /* ARCH_??? */, 0x7ffc7fef20c0) = -1 EINVAL (Invalid argument)
[pid 558721] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
[pid 558721] openat(AT_FDCWD, "/dev/tty", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
[pid 558721] ioctl(0, TCGETS, 0x7ffc7fef1f40) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558721] ioctl(-1, TIOCGPGRP, 0x7ffc7fef1fb4) = -1 EBADF (Bad file descriptor)
[pid 558721] newfstatat(AT_FDCWD, "/command/bash", 0x7ffc7fef1bf0, 0) = -1 ENOENT (No such file or directory)
[pid 558721] newfstatat(AT_FDCWD, "/usr/local/sbin/bash", 0x7ffc7fef1bf0, 0) = -1 ENOENT (No such file or directory)
[pid 558721] newfstatat(AT_FDCWD, "/usr/local/bin/bash", 0x7ffc7fef1bf0, 0) = -1 ENOENT (No such file or directory)
[pid 558721] newfstatat(AT_FDCWD, "/usr/sbin/bash", 0x7ffc7fef1bf0, 0) = -1 ENOENT (No such file or directory)
[pid 558721] connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
[pid 558721] connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
[pid 558721] ioctl(2, TIOCGPGRP, 0x7ffc7fef1e54) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558721] ioctl(2, TIOCGPGRP, 0x7ffc7fef1e24) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558721] ioctl(3, TCGETS, 0x7ffc7fef1f50) = -1 ENOTTY (Inappropriate ioctl for device)
[pid 558721] fcntl(255, F_GETFD)        = -1 EBADF (Bad file descriptor)
alexjustesen commented 1 year ago

I'm releasing v0.11.3 which only includes updates to dependencies, if anyone could test to see if this resolves the issues above as I'm not able to replicate them.

switch263 commented 1 year ago

I'm releasing v0.11.3 which only includes updates to dependencies, if anyone could test to see if this resolves the issues above as I'm not able to replicate them.

I gave this new build a try on my current homelab server, as well as a new one I'm not done building yet, and both exhibit the same error as originally reported in this issue thread, unfortunately.

alexjustesen commented 1 year ago

Are you building the image locally or using the published ones?

switch263 commented 1 year ago

I used the published one of the latest build. I can try building it locally later today if that might help.

alexjustesen commented 1 year ago

Give it a whack just in case there is a problem with my builds for whatever reason

switch263 commented 1 year ago

I was able to build the image successfully on a Ubuntu 22.04 box but am still unable to run the container, although it does give a different error now when I try to run it. On both this box and a Ubuntu 18 box I had sat around but not in use, when using the published builds, I still see the same 'unable to fork' error.

-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------

🏃‍♂️ Checking for Laravel automations...
🔐 Linking the storage...
🔒 SSL_MODE has been set to MIXED, setting the web server to work in HTTP + HTTPS...
🏃‍♂️ An SSL key was not detected, so I'll generate a self-signed SSL certificate pair for you...
........+....+...+...+.........+..+.+..+......+.+.....+......+.........+..........+.....+.........+....+..+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*........+..+.+......+...............+.....+.+.........+........+...+...+..........+.....+....+...+...+......+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*............+....+.....+.+...+.....+.....................+.............+.....................+...........+...+...+...+.+...+..+.........+......+.+...+.....+......+....+......+........+......+............+.........+.+.......................+......+...+.......+..................+........+.......+..+...+......+.+...............+...+.....+.+...........+.........+.......................................+.+.........+..+.........+.+......+...+..+...+.+..............+.........+.......+...+............+......+...+.........+......+...........+.........+.........+...+.........+...+.+.................+............+.......+.....+.+...+.....+......+.+..+...............+.+.....+.........+......+......+....+.....+.+.....+....+...........+...............+.+...............+...+..+....+.........+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

   INFO  The [public/storage] link has been connected to [storage/app/public].

🐇  Configuring Speedtest Tracker...
🙄  Database file not found, creating...
🔗  Creating database symlink
✅  Environment file exists
🔗  Creating symlinks to config and log files
✅  App key exists
🔒  Fixing app path file permissions
💰  Building the cache...
....+.+..+....+...+...+..+..........+...+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+......+...+.....+...+.........+....+..+...+............+.......+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*......+............+............+...+...+..+.......+.....+...+.........+...+......+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
[06-Mar-2023 19:53:10] NOTICE: fpm is running, pid 102
[06-Mar-2023 19:53:10] NOTICE: ready to handle connections
[06-Mar-2023 19:53:10] NOTICE: systemd monitor interval set to 10000ms
🚛  Migrating the database...
✅  All set, starting Speedtest Tracker container...
⏰  Starting the cron service...
💪  Starting the queue worker...
/run/s6/basedir/scripts/rc.init: 67: restart:: not found
[06-Mar-2023 19:53:11] NOTICE: Terminating ...
[06-Mar-2023 19:53:11] NOTICE: exiting, bye-bye!
alexjustesen commented 1 year ago

@switch263 can you add DEBUG_OUTPUT=true to your environment vars when creating the container, this will enable a more verbose error output. Example below...

docker run -d --name speedtest-tracker \
    -p 8080:80 \
    -p 8443:443 \
    -e PUID=1000 \
    -e PGID=1000 \
    -e DEBUG_OUTPUT=true \
    -v /path/to/_data:/config \
    speedtest-tracker
switch263 commented 1 year ago

@alexjustesen dropped the logs into a gist here https://gist.github.com/switch263/99ab8e597a2cdef9166a1d05a2b3b074

Hope these can help!

alexjustesen commented 1 year ago

@switch263 one more level of outputs, can you also add S6_VERBOSITY=5 and share a new gist?

alexjustesen commented 1 year ago

Best I can tell it looks like fpm isn't starting for you which is causing the container to stop. I'll dig into it a little more...

alexjustesen commented 1 year ago

I had a typo in the env var, can you use S6_VERBOSITY=5?

alexjustesen commented 1 year ago

v0.11.6 #454 has been released in the hopes it resolves this issue. If it has please comment and I'll close the issue.

snown commented 1 year ago

I updated my docker image pointing to ajustesen/speedtest-tracker this morning, and I am still seeing the same error. If it helps my console output is here:

https://gist.github.com/snown/1bf9dc85dcb15f52f03007e7abd7c79b

switch263 commented 1 year ago

At some point over the last couple days since I last had time to work on my homelab stack, my stack restarted and pulled the latest build and this is now seemingly working as expected. I haven't had time to do extensive testing yet but general functionality is normal for me - the application successfully starts, I'm able to log in, run tests, etc. Since others have chimed in with the same problem I'll leave closing this to @alexjustesen but I'm able to use the tool as intended now. Thanks for all the hard work! :)

alexjustesen commented 1 year ago

Going to close this out for now as the author is all set. Going to continue to improve the startup process though

brum74 commented 1 year ago

I know this is closed but just wanted to comment that this still happens for me and hoping your future startup improvements resolves it.

jimueller commented 1 year ago

In case this helps for anyone else, it does seem 0.11.6 fixed it for me as well, but I did do a couple of other things.

So, not entirely sure what the fix was, something in 0.11.6 either fixed it or exposed the volume permission issue that may have been the root cause. It is strange though because prior to 0.11.6 I had no issues with the volume.

alexdelprete commented 1 year ago

So, not entirely sure what the fix was, something in 0.11.6 either fixed it or exposed the volume permission issue that may have been the root cause. It is strange though because prior to 0.11.6 I had no issues with the volume.

Good catch. I bet my $0.02 on the volume's permissions, and suggest @alexjustesen to modify the recommended docker installation using bind mounts.

With all my containers, I use bind mounts vs named volumes, and probably that's the reason why I'm always unable to reproduce these strange errors many users are reporting.

sjg commented 1 year ago

Have stared a discussion about this as I'm having the same issues on a fresh install.

Discussion #541