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.68k stars 100 forks source link

0.11.19 SQLite Db Errors #701

Closed jiriteach closed 1 year ago

jiriteach commented 1 year ago

Seeing db errors with the latest release. Since I used Watchtower - it pulled down the latest 0.11.19 and now the container wont come back up. Have multiple deployments effected.

Assuming this is related to the SQLite changes? How does one fix this? Was a working deployment - only update was the container.

#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(272): Illuminate\\Database\\SQLiteConnection->__construct()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(76): Illuminate\\Database\\Connectors\\ConnectionFactory->createConnection()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(50): Illuminate\\Database\\Connectors\\ConnectionFactory->createSingleConnection()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php(152): Illuminate\\Database\\Connectors\\ConnectionFactory->make()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php(101): Illuminate\\Database\\DatabaseManager->makeConnection()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(210): Illuminate\\Database\\DatabaseManager->connection()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(98): Illuminate\\Cache\\CacheManager->createDatabaseDriver()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(61): Illuminate\\Cache\\CacheManager->resolve()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(72): Illuminate\\Cache\\CacheManager->store()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheServiceProvider.php(36): Illuminate\\Cache\\CacheManager->driver()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(908): Illuminate\\Cache\\CacheServiceProvider->Illuminate\\Cache\\{closure}()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(937): Illuminate\\Container\\Container->resolve()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(922): Illuminate\\Container\\Container->make()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(1454): Illuminate\\Foundation\\Application->make()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(236): Illuminate\\Container\\Container->offsetGet()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(207): Illuminate\\Support\\Facades\\Facade::resolveFacadeInstance()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(347): Illuminate\\Support\\Facades\\Facade::getFacadeRoot()
#23 /var/www/html/app/Providers/RouteServiceProvider.php(29): Illuminate\\Support\\Facades\\Facade::__callStatic()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\\Providers\\RouteServiceProvider->boot()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\\Container\\BoundMethod::callBoundMethod()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1010): Illuminate\\Container\\Container->call()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(991): Illuminate\\Foundation\\Application->bootProvider()
#31 [internal function]: Illuminate\\Foundation\\Application->Illuminate\\Foundation\\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(992): array_walk()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php(17): Illuminate\\Foundation\\Application->boot()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(261): Illuminate\\Foundation\\Bootstrap\\BootProviders->bootstrap()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Foundation\\Application->bootstrapWith()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(199): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#37 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#38 {main}
[previous exception] [object] (Illuminate\\Database\\SQLiteDatabaseDoesNotExistException(code: 0): Database file at path [/var/www/html/database/database.sqlite] does not exist. Ensure this is an absolute path to the database. at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/SQLiteConnector.php:34)

[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(221): Illuminate\\Database\\Connectors\\SQLiteConnector->connect()
#1 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1292): call_user_func()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(574): Illuminate\\Database\\Connection->getPdo()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(788): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(755): Illuminate\\Database\\Connection->runQueryCallback()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(581): Illuminate\\Database\\Connection->run()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(398): Illuminate\\Database\\Connection->statement()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/SQLiteConnection.php(36): Illuminate\\Database\\Schema\\Builder->enableForeignKeyConstraints()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(272): Illuminate\\Database\\SQLiteConnection->__construct()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(76): Illuminate\\Database\\Connectors\\ConnectionFactory->createConnection()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(50): Illuminate\\Database\\Connectors\\ConnectionFactory->createSingleConnection()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php(152): Illuminate\\Database\\Connectors\\ConnectionFactory->make()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php(101): Illuminate\\Database\\DatabaseManager->makeConnection()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(210): Illuminate\\Database\\DatabaseManager->connection()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(98): Illuminate\\Cache\\CacheManager->createDatabaseDriver()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(61): Illuminate\\Cache\\CacheManager->resolve()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(72): Illuminate\\Cache\\CacheManager->store()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheServiceProvider.php(36): Illuminate\\Cache\\CacheManager->driver()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(908): Illuminate\\Cache\\CacheServiceProvider->Illuminate\\Cache\\{closure}()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(937): Illuminate\\Container\\Container->resolve()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(922): Illuminate\\Container\\Container->make()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(1454): Illuminate\\Foundation\\Application->make()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(236): Illuminate\\Container\\Container->offsetGet()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(207): Illuminate\\Support\\Facades\\Facade::resolveFacadeInstance()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(347): Illuminate\\Support\\Facades\\Facade::getFacadeRoot()
#28 /var/www/html/app/Providers/RouteServiceProvider.php(29): Illuminate\\Support\\Facades\\Facade::__callStatic()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\\Providers\\RouteServiceProvider->boot()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#31 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\\Container\\BoundMethod::callBoundMethod()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1010): Illuminate\\Container\\Container->call()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(991): Illuminate\\Foundation\\Application->bootProvider()
#36 [internal function]: Illuminate\\Foundation\\Application->Illuminate\\Foundation\\{closure}()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(992): array_walk()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php(17): Illuminate\\Foundation\\Application->boot()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(261): Illuminate\\Foundation\\Bootstrap\\BootProviders->bootstrap()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Foundation\\Application->bootstrapWith()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(199): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#42 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#43 {main}
"} 
In Connection.php line 801:

  Database file at path [/var/www/html/database/database.sqlite] does not exi  
  st. Ensure this is an absolute path to the database. (Connection: sqlite, S  
  QL: PRAGMA foreign_keys = ON;)                                               

In SQLiteConnector.php line 34:

  Database file at path [/var/www/html/database/database.sqlite] does not exi  
  st. Ensure this is an absolute path to the database.                         

s6-rc: warning: unable to start service laravel-automations: command exited 1
/run/s6/basedir/scripts/rc.init: warning: s6-rc failed to properly bring all the services up! Check your logs (in /run/uncaught-logs/current if you have in-container logging) for more information.
prog: fatal: stopping the container.
ChaseFreeman17 commented 1 year ago

Same issue here, I moved from latest tag back to image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.11.17'

jiriteach commented 1 year ago

I've ended up moving back as well to .17 and its working.

alexdelprete commented 1 year ago

I've ended up moving back as well to .17 and its working.

are you using .env file? docker-compose? can you provide more info please? thanks.

in my case, .19 wasn't reading .env correctly, I moved all env variables to docker-compose file, and now everything's working fine. But I use MariaDB, not sqlite.

jiriteach commented 1 year ago
version: '3.3'
services:
    speedtest-tracker:
        container_name: updated-speedtest-tracker

        network_mode: "host"

        environment:
            - PUID=1000
            - PGID=1000
            - TZ=Pacific/Auckland
            - 
        volumes:
            - '/home/pi/Docker/updated-speedtest-tracker/config:/config'
        image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.11.17'

        restart: unless-stopped
paralovosca commented 1 year ago

Same issue here, I moved from latest tag back to image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.11.17', as well.


speedtest-tracker-vpn:
    container_name: speedtest-tracker-vpn
    image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.11.17'
    restart: unless-stopped
    security_opt:
      - no-new-privileges:true
    network_mode: "service:gluetun"
    depends_on:
      gluetun:
        condition: service_healthy
    #ports:
    #  - '8090:80'
    #  - '8443:443'
    environment:
      - 'PUID=${SPEED_PUID}'
      - 'PGID=${PGID}'
      - 'TZ=${TZ}'
      - 'UMASK=${UMASK}'
    volumes:
      #- '/etc/localtime:/etc/localtime:ro'
      - '${DOCKERAPPDATA}/config/speedtest-vpn:/config'
      - '${DOCKERAPPDATA}/config/speedtest-vpn/appdata:/etc/ssl/web'
    healthcheck: # https://github.com/qdm12/gluetun/issues/641#issuecomment-933856220
      test: "curl -sf https://example.com  || exit 1"
      interval: 1m
      timeout: 10s
      retries: 1
    labels:
      - "deunhealth.restart.on.unhealthy=true"
      - "com.centurylinklabs.watchtower.enable=true"
      #- "com.centurylinklabs.watchtower.monitor-only=true"```

```2023-08-31 00:44:14
✅  App key exists
2023-08-31 00:44:14
2023-08-31 00:44:14
🔐  Linking the storage...
2023-08-31 00:44:14
[2023-08-31 04:44:14] production.ERROR: Database file at path [/var/www/html/database/database.sqlite] does not exist. Ensure this is an absolute path to the database. (Connection: sqlite, SQL: PRAGMA foreign_keys = ON;) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): Database file at path [/var/www/html/database/database.sqlite] does not exist. Ensure this is an absolute path to the database. (Connection: sqlite, SQL: PRAGMA foreign_keys = ON;) at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:801)
2023-08-31 00:44:14
[stacktrace]
2023-08-31 00:44:14
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(755): Illuminate\\Database\\Connection->runQueryCallback()```
felho001 commented 1 year ago

same issue here, watchtower automatic update and I back to v0.11.17 and this is work

SaltireSoul commented 1 year ago

Looks like v0.11.18 removed sqlite support

[Chore] Remove support for sqlite by @alexjustesen in https://github.com/alexjustesen/speedtest-tracker/pull/669

Seems this statement wasn't completely true.

Also to note, this impacts new installs not existing.

Originally posted by @alexjustesen in https://github.com/alexjustesen/speedtest-tracker/issues/669#issuecomment-1698451635

mrxxxxxx commented 1 year ago

Same Issue. Use Sqlite. Back to 0.11.17

felho001 commented 1 year ago

Hi how can I set the watchtower not updated speedtest tracking? It is possible? Because my set is 04:00am run all docker compose file updated.

jiriteach commented 1 year ago

Hi how can I set the watchtower not updated speedtest tracking? It is possible? Because my set is 04:00am run all docker compose file updated.

Set a label on the container -

com.centurylinklabs.watchtower.enable

With a value of false

felho001 commented 1 year ago

Hi how can I set the watchtower not updated speedtest tracking? It is possible? Because my set is 04:00am run all docker compose file updated.

Set a label on the container -

com.centurylinklabs.watchtower.enable

With a value of false I use one compose file and there many docker container where can I set? Speedtest tracker row? version: "3.2" services:

Radarr - https://hotio.dev/containers/radarr/

radarr: container_name: radarr image: hotio/radarr:latest restart: unless-stopped logging: driver: "json-file" network_mode: bridge ports:

  • 7878:7878 environment:
  • PUID=XX # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=XX # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone volumes:
  • /etc/localtime:/etc/localtime:ro
  • /volume3/docker/appdata/radarr:/config # Change "/volume3/docker/appdata/radarr" with the path your config will be.
  • /volume1/Video/:/Video # Change "/volume1/Video" with the path where your library + torrent/usenet downloads both are.

    Sonarr - https://hotio.dev/containers/sonarr/

    sonarr: container_name: sonarr image: hotio/sonarr:nightly restart: unless-stopped logging: driver: "json-file" network_mode: bridge ports:

  • 8989:8989 environment:
  • PUID=xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=1xx # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone volumes:
  • /etc/localtime:/etc/localtime:ro
  • /volume3/docker/appdata/sonarr:/config # Change "/volume1/docker/appdata/sonarr" with the path your config will be.
  • /volume1/Video/:/Video # Change "/volume1/data" with the path where your library + torrent/usenet downloads both are.

    lidarr -https://hotio.dev/containers/lidarr/

    lidarr: container_name: lidarr image: hotio/lidarr ports:

  • "8686:8686" environment:
  • PUID=xx
  • PGID=xx
  • UMASK=002
  • TZ=Europe/Budapest volumes:
  • /etc/localtime:/etc/localtime:ro
  • /volume3/docker/appdata/lidarr:/config:rw
  • /volume3/music/:/music
  • /volume1/Video/:/Video

    qBittorrent - https://docs.linuxserver.io/images/docker-qbittorrent

    qbittorrent: container_name: qbittorrent image: linuxserver/qbittorrent restart: unless-stopped logging: driver: json-file network_mode: bridge ports:

  • 16681:16681
  • 16681:16681/udp
  • 8880:8880 environment:
  • PUID=1xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=xx # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone
  • UMASK_SET=022
  • WEBUI_PORT=8880 volumes:
  • /etc/localtime:/etc/localtime:ro
  • /volume3/docker/appdata/qbittorrent:/config:rw # Change "/volume1/docker/appdata/qbittorrent" with the path your config will be.
  • /volume1/Video/Downloads/:/Video/Downloads:rw # Change "/volume1/data/torrents" with the path your usenet data ends up in.

    Watchtower (automatic docker container updater) - https://github.com/containrrr/watchtower

    watchtower: container_name: watchtower image: containrrr/watchtower restart: unless-stopped logging: driver: "json-file" network_mode: bridge environment:

  • PUID=xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=xx# you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone
  • UMASK=022
  • WATCHTOWER_CLEANUP=true
  • WATCHTOWER_INCLUDE_STOPPED=false
  • WATCHTOWER_MONITOR_ONLY=false
  • WATCHTOWER_SCHEDULE=0 0 4 * # use cron to change update interval set at 4am.
  • WATCHTOWER_TIMEOUT=10s volumes:
  • /etc/localtime:/etc/localtime:ro
  • /var/run/docker.sock:/var/run/docker.sock

    Jackett - https://hotio.dev/containers/jackett/

    jackett: container_name: jackett image: hotio/jackett restart: unless-stopped logging: driver: "json-file" network_mode: bridge ports:

  • 9117:9117 environment:
  • PUID=xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=xx # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone
  • UMASK=002
  • DEBUG=no volumes:
  • /volume3/docker/appdata/jackett:/config:rw # Change "/volume1/docker/appdata/plex" with the path your config will be.

    Bazarr - https://hotio.dev/containers/bazarr/

    bazarr: container_name: bazarr image: hotio/bazarr:nightly restart: unless-stopped logging: driver: "json-file" network_mode: bridge ports:

  • 6767:6767 environment:
  • PUID=xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=1xx # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone
  • UMASK=002
  • DEBUG=no volumes:
  • /etc/localtime:/etc/localtime:ro
  • /volume3/docker/appdata/bazarr:/config # Change "/volume1/docker/appdata/bazarr" with the path your config will be.
  • /volume1/Video/:/Video # Change "/volume1/data/media" with the path where your library are(sonarr+radarr).

    onzu/homebride - https://docs.docker.com/compose/install/

    homebridge: image: oznu/homebridge:latest container_name: homebridge restart: unless-stopped network_mode: host environment:

  • HOMEBRIDGE_CONFIG_UI_PORT=8581
  • PUID=xx # you must find out your PUID through SSH, type in terminal: id $user
  • PGID=xx # you must find out your PGID through SSH, type in terminal: id $user
  • TZ=Europe/Budapest # Change to your timezone
  • UMASK=002 volumes:
  • /volume3/docker/appdata/homebridge:/config

    speedtest-track:

    container_name: speedtest-track image: ghcr.io/alexjustesen/speedtest-tracker:v0.11.17 ports:

  • 8766:80 volumes:
  • /volume3/docker/appdata/speedtest-track:/config environment:
  • TZ=Europe/Budapest
  • PGID=xx
  • PUID=xx
  • OOKLA_EULA_GDPR=true
  • TELEGRAM_BOT_TOKEN=1x
  • TELEGRAM_CHAT_ID=-x network_mode: bridge logging: driver: "json-file" options: max-file: "10" max-size: "200k" restart: unless-stopped
Christophe999s commented 1 year ago

Same issue, went back to 0.11.17, which corrected the issue

mdepedrof commented 1 year ago

same error. Back to 0.11.17 to solve the error. Please can tell us how to resolve with the new versions?

sahara101 commented 1 year ago

Same here. I will wait for Alex before going back :)

sadden3194 commented 1 year ago

same issue. I solved it to swtich from sqlite file to mysql database.

spupuz commented 1 year ago

Since last upgrade I can't login, don't see errors using Sql too

Drallas commented 1 year ago

It's also failing the MariaDB version, also went back to 0.11.17.

Thunder7ga commented 1 year ago

Same...back to 0.11.17 and all good.

alexjustesen commented 1 year ago

Oops... v0.11.20 restores the symlink and is building now: https://github.com/alexjustesen/speedtest-tracker/releases/tag/v0.11.20

SaltireSoul commented 1 year ago

Oops... v0.11.20 restores the symlink and is building now: https://github.com/alexjustesen/speedtest-tracker/releases/tag/v0.11.20

sqlite still not functioning on v0.11.20

In Connection.php line 801:

  SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select *  
   from information_schema.tables where table_schema = speedtest_tracker and   
  table_name = migrations and table_type = 'BASE TABLE')                       

In Connector.php line 65:

  SQLSTATE[HY000] [2002] Connection refused  

s6-rc: warning: unable to start service laravel-automations: command exited 1
/run/s6/basedir/scripts/rc.init: warning: s6-rc failed to properly bring all the services up! Check your logs (in /run/uncaught-logs/current if you have in-container logging) for more information.
prog: fatal: stopping the container.
MarkusMory commented 1 year ago

I get the same error messages but the speedtest-tracker does work normally

alexjustesen commented 1 year ago

You'll need to pass an env variable stating the following and remove any other DB_ environment variables you might be passing...

DB_CONNECTION=sqlite

I'll update the docs later today with how to use sqlite as a DB just know going forward its intended for backwards compatibility only and the recommended DBs will be MySQL/MariaDB and Postresql.

Once #676 is done I'll be working on #591 so you can migrate from SQLite to any of the other options.

alexjustesen commented 1 year ago

Pinning this issue and re-opening it to reduce duplicates until I can get the docs updated later today.

CorneliousJD commented 1 year ago

You'll need to pass an env variable stating the following and remove any other DB_ environment variables you might be passing...

DB_CONNECTION=sqlite

I'll update the docs later today with how to use sqlite as a DB just know going forward its intended for backwards compatibility only and the recommended DBs will be MySQL/MariaDB and Postresql.

Once #676 is done I'll be working on #591 so you can migrate from SQLite to any of the other options.

Adding the ENV variable you noted still results in an error for me

In SQLiteConnector.php line 34:

Database file at path [speedtest_tracker] does not exist. Ensure this is an
absolute path to the database.

spupuz commented 1 year ago

i'll have the same problem

alexjustesen commented 1 year ago

@CorneliousJD I'll take a closer look in a couple hours after meetings. Likely a result of some environment defaults.

alexjustesen commented 1 year ago

@CorneliousJD @spupuz can one of you try passing DB_DATABASE=null as an environment variable?

CorneliousJD commented 1 year ago

DB_DATABASE

No luck there either unfortuantely.

In Connection.php line 801:

  SQLSTATE[HY000] [14] unable to open database file (Connection: sqlite, SQL:  
   PRAGMA foreign_keys = ON;)                                                  

In Connector.php line 65:

  SQLSTATE[HY000] [14] unable to open database file  
Drallas commented 1 year ago

Speedstest start normal, but getting a 500 error in the browser now. (using MariaDB) When I change the tag back to '0.11.17' it's all good again.

Normal startup

Screenshot 2023-08-31 at 15 59 18

Can't get into the WebGUI Error 500 in Browser

Screenshot 2023-08-31 at 15 59 24

But Data via API.

Screenshot 2023-08-31 at 15 59 34
spupuz commented 1 year ago

In Connection.php line 801:

SQLSTATE[HY000] [14] unable to open database file (Connection: sqlite, SQL:

PRAGMA foreign_keys = ON;)

In Connector.php line 65:

SQLSTATE[HY000] [14] unable to open database file

s6-rc: warning: unable to start service laravel-automations: command exited 1

/run/s6/basedir/scripts/rc.init: warning: s6-rc failed to properly bring all the services up! Check your logs (in /run/uncaught-logs/current if you have in-container logging) for more information.

prog: fatal: stopping the container.

AleksCee commented 1 year ago

@Ghost108

same issue. I solved it to swtich from sqlite file to mysql database. Did you only switch or migrate the data? And if you migrate, how? Only an sql-dump and import...?

sadden3194 commented 1 year ago

I switched only. but yes you can make a sql dump and import this

felho001 commented 1 year ago

New version not fix it I restore v0.11.17 version

AleksCee commented 1 year ago

I switched only. but yes you can make a sql dump and import this

I have try it put the dump is not compatible for import in mariadb. :-(

felho001 commented 1 year ago

Anyone know how can change my compose file work new version.

container_name: speedtest-track image: ghcr.io/alexjustesen/speedtest-tracker:latest ports:

spupuz commented 1 year ago

Anyone know how can change my compose file work new version.

container_name: speedtest-track image: ghcr.io/alexjustesen/speedtest-tracker:latest ports:

* 8766:80
  volumes:

* /volume3/docker/appdata/speedtest-track:/config
  environment:

* TZ=Europe/Budapest

* PGID=xx

* PUID=xx

* OOKLA_EULA_GDPR=true

* TELEGRAM_BOT_TOKEN=1x

* TELEGRAM_CHAT_ID=-x
  network_mode: bridge
  logging:
  driver: "json-file"
  options:
  max-file: "10"
  max-size: "200k"
  restart: unless-stopped

No latest version seems not working

spupuz commented 1 year ago

Speedstest start normal, but getting a 500 error in the browser now. (using MariaDB) When I change the tag back to '0.11.17' it's all good again.

Normal startup Screenshot 2023-08-31 at 15 59 18

Can't get into the WebGUI Error 500 in Browser Screenshot 2023-08-31 at 15 59 24

But Data via API. Screenshot 2023-08-31 at 15 59 34

qhich tool are you using for container logs?

Drallas commented 1 year ago

qhich tool are you using for container logs?

That’s Portainer logging.

mvanlijden commented 1 year ago

Just did a fresh install on Unraid based on template and included the DB_CONNECTION variable for sqlite but still not working.

In Connection.php line 801:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. (Connection: sqlite, SQL: PRAGMA foreign_ke  
  ys = ON;)                                                                    

In SQLiteConnector.php line 34:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. 
chandz05 commented 1 year ago

@mvanlijden

Just did a fresh install on Unraid based on template and included the DB_CONNECTION variable for sqlite but still not working.

In Connection.php line 801:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. (Connection: sqlite, SQL: PRAGMA foreign_ke  
  ys = ON;)                                                                    

In SQLiteConnector.php line 34:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. 

My db connection issues and 500 refused errors have been resolved on docker in UnRaid. For Community Applications speedtest-tracker image, I had to explicitly add DB details as env variables (I created a new DB in MariaDB) as well as the APP_KEY variable. Previously this was not required

spupuz commented 1 year ago

@mvanlijden

Just did a fresh install on Unraid based on template and included the DB_CONNECTION variable for sqlite but still not working.

In Connection.php line 801:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. (Connection: sqlite, SQL: PRAGMA foreign_ke  
  ys = ON;)                                                                    

In SQLiteConnector.php line 34:

  Database file at path [speedtest_tracker] does not exist. Ensure this is an  
   absolute path to the database. 

My db connection issues and 500 refused errors have been resolved on docker in UnRaid. For Community Applications speedtest-tracker image, I had to explicitly add DB details as env variables (I created a new DB in MariaDB) as well as the APP_KEY variable. Previously this was not required

can you share the env variable and your anonymized docker compose pls

chandz05 commented 1 year ago

can you share the env variable and your anonymized docker compose pls

Absolutely I can. Please note this is the UnRaid managed Docker Run script:

docker run

-d --name='speedtest-tracker' --net='bridge' -e TZ="America/New_York" -e HOST_OS="Unraid" -e HOST_HOSTNAME="Tower" -e HOST_CONTAINERNAME="speedtest-tracker" -e 'PUID'='1000' -e 'PGID'='1000' -e 'APP_KEY'='base64:somstring' -e 'DB_CONNECTION'='mysql' -e 'DB_HOST'='db' -e 'DB_PORT'='3306' -e 'DB_DATABASE'='speedtest' -e 'DB_USERNAME'='speedtest' -e 'DB_PASSWORD'='password' -l net.unraid.docker.managed=dockerman -l net.unraid.docker.webui='https://[IP]:[PORT:443]/' -l net.unraid.docker.icon='https://raw.githubusercontent.com/devzwf/unraid-docker-templates/main/images/speedtest-tracker-icon.png' -p '9443:443/tcp' -v '/mnt/user/appdata/speedtest-tracker-1':'/config':'rw' 'ghcr.io/alexjustesen/speedtest-tracker:latest'

To get the APP_KEY value, run the following command for your speedtest-tracker container: docker exec -it speedtest-tracker php artisan key:generate --show

spupuz commented 1 year ago

uh ok but you are using myql i tought you where using sqllite

chandz05 commented 1 year ago

uh ok but you are using myql i tought you where using sqllite

Sure, but it seems like a big issue is that the application cannot read the variables in the .env file anymore. Specify your sqllite DB as well as APP_KEY in your docker compose/run files and see if that works. If not, then it is a different issue

holocronology commented 1 year ago

I tried fresh clean installs and get similar errors with MariaDB

jiriteach commented 1 year ago

@alexjustesen - Tried with DB_DATABASE=null and DB_DATABASE=sqlite and no go.

Also tried with no existing config.

Still errors with cannot find the db.

Have dropped back to v17 for now.

chandz05 commented 1 year ago

@holocronology @Jiriteach Have you guys tried adding the APP_KEY variable?

spupuz commented 1 year ago

@alexjustesen - Tried with DB_DATABASE=null and DB_DATABASE=sqlite and no go.

Also tried with no existing config.

Still errors with cannot find the db.

Have dropped back to v17 for now.

Same situation here

spupuz commented 1 year ago

We need an explaination

jiriteach commented 1 year ago

@holocronology @Jiriteach Have you guys tried adding the APP_KEY variable?

I've seen the other thread but my errors are not about the APP_KEY - its cannot find the db. I'll try and see if does make a diff. I dont use a .env file.