This is a wonderful looking product, you two should be very proud of what you've built!
I tried to start docker on my ubuntu 24.03 laptop and my mac m2.
Connection issues for Redis and PG. I was able to resolve redis and it seems i'm only blocked from PG right now. I see you guys are working through some epic changes, and i'd love to help if I can.
If you'd prefer to handle internally I understand, but can you recommend a stable SHA to checkout I can play around with my goal: I plan to use this and create a service for Homepage (https://gethomepage.dev/widgets/services/) because the world needs this tool.
Logs are without my local changes.
[+] Running 6/0
✔ Container onlinetest-redis-1 Created 0.0s
✔ Container onlinetest-minio-1 Created 0.0s
✔ Container onlinetest-postgresql-1 Created 0.0s
✔ Container onlinetest-mc-1 Created 0.0s
✔ Container onlinetest-sitespeed.io-server-1 Created 0.0s
✔ Container onlinetest-sitespeed.io-testrunner-1 Created 0.0s
Attaching to onlinetest-mc-1, onlinetest-minio-1, onlinetest-postgresql-1, onlinetest-redis-1, onlinetest-sitespeed.io-server-1, onlinetest-sitespeed.io-testrunner-1
onlinetest-postgresql-1 |
onlinetest-postgresql-1 | PostgreSQL Database directory appears to contain a database; Skipping initialization
onlinetest-postgresql-1 |
onlinetest-postgresql-1 |
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:22.871 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:22.871 * Redis version=8.2.2, bits=64, commit=00000000, modified=1, pid=1, just started
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:22.871 * Configuration loaded
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.871 * monotonic clock: POSIX clock_gettime
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.872 * Running mode=standalone, port=6379.
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.873 * Server initialized
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * Reading RDB base file on AOF loading...
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * Loading RDB produced by version 8.2.2
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * RDB age 77801 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * RDB memory usage when created 0.95 Mb
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * RDB is base AOF
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * Done loading RDB, keys loaded: 0, keys expired: 0.
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.876 * DB loaded from base file appendonly.aof.1.base.rdb: 0.004 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.878 * DB loaded from incr file appendonly.aof.1.incr.aof: 0.001 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.878 * DB loaded from append only file: 0.005 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.887 * Opening AOF incr file appendonly.aof.1.incr.aof on server start
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:22.887 * Ready to accept connections tcp
onlinetest-postgresql-1 | 2026-01-08 00:45:22.893 UTC [1] LOG: starting PostgreSQL 16.11 (Debian 16.11-1.pgdg13+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit
onlinetest-postgresql-1 | 2026-01-08 00:45:22.893 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
onlinetest-postgresql-1 | 2026-01-08 00:45:22.893 UTC [1] LOG: listening on IPv6 address "::", port 5432
onlinetest-postgresql-1 | 2026-01-08 00:45:22.896 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
onlinetest-postgresql-1 | 2026-01-08 00:45:22.904 UTC [29] LOG: database system was shut down at 2026-01-08 00:45:20 UTC
onlinetest-postgresql-1 | 2026-01-08 00:45:22.930 UTC [1] LOG: database system is ready to accept connections
onlinetest-mc-1 | mc: <ERROR> Unable to initialize new alias from the provided credentials. Get "http://minio:9000/probe-bsign-qd1eddhuqatxrkhwn96ohhdqkwj0xz/?location=": dial tcp 172.24.0.2:9000: connect: connection refused.
onlinetest-mc-1 exited with code 1
onlinetest-minio-1 | MinIO Object Storage Server
onlinetest-minio-1 | Copyright: 2015-2026 MinIO, Inc.
onlinetest-minio-1 | License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
onlinetest-minio-1 | Version: RELEASE.2025-09-07T16-13-09Z (go1.24.6 linux/arm64)
onlinetest-minio-1 |
onlinetest-minio-1 | API: http://172.24.0.2:9000 http://127.0.0.1:9000
onlinetest-minio-1 | WebUI: http://172.24.0.2:9001 http://127.0.0.1:9001
onlinetest-minio-1 |
onlinetest-minio-1 | Docs: https://docs.min.io
onlinetest-minio-1 |
onlinetest-mc-1 | Added `sitespeedio` successfully.
onlinetest-mc-1 | Bucket created successfully `sitespeedio/sitespeedio`.
onlinetest-mc-1 | Lifecycle configuration rule added with ID `d5ffs8qdms5c74dkivt0` to sitespeedio/sitespeedio.
onlinetest-mc-1 | Access permission for `sitespeedio/sitespeedio` is set to `download`
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:23] ERROR: Could not get a connection to the database (retries 3): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:23] ERROR: Retrying in 5 seconds... (3 retries left)
onlinetest-mc-1 | Successfully applied new settings.
onlinetest-mc-1 | MinIO and lifecycle policy setup complete.
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: No hostname found in configuration. Will use c72e6d9fd7cb
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: Starting testrunner c72e6d9fd7cb version 1.2.0
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: Connecting queue default on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: Retry default attempt 1: Retrying in 200 ms
onlinetest-mc-1 exited with code 0
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: Retry default attempt 2: Retrying in 400 ms
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:24] INFO: Retry default attempt 3: Retrying in 600 ms
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:25] ERROR: Could not connect to the Redis like queue on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:25] INFO: Connecting queue testrunners on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | file:///usr/src/app/src/queue/queuehandler.js:131
onlinetest-sitespeed.io-testrunner-1 | throw new Error('The queue is not available');
onlinetest-sitespeed.io-testrunner-1 | ^
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 | Error: The queue is not available
onlinetest-sitespeed.io-testrunner-1 | at QueueHandler.getQueue (file:///usr/src/app/src/queue/queuehandler.js:131:13)
onlinetest-sitespeed.io-testrunner-1 | at async SitespeedioTestRunner.start (file:///usr/src/app/src/sitespeedio-testrunner.js:56:22)
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 | Node.js v22.21.1
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 exited with code 1
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:28] ERROR: Could not get a connection to the database (retries 2): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:28] ERROR: Retrying in 5 seconds... (2 retries left)
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:33] ERROR: Could not get a connection to the database (retries 1): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:33] ERROR: Retrying in 5 seconds... (1 retries left)
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:38] ERROR: Could not get a connection to the database (retries 0): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:38] ERROR: Could not access the database Error: connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | Error: connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | at /usr/src/app/node_modules/pg-pool/index.js:45:11
onlinetest-sitespeed.io-server-1 | at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
onlinetest-sitespeed.io-server-1 | at async testConnection (file:///usr/src/app/src/database/index.js:171:20)
onlinetest-sitespeed.io-server-1 | at async SitespeedioServer.start (file:///usr/src/app/src/server.js:108:7)
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:38] ERROR: Uncaught Exception thrown: Error: connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | Error: connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | at /usr/src/app/node_modules/pg-pool/index.js:45:11
onlinetest-sitespeed.io-server-1 | at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
onlinetest-sitespeed.io-server-1 | at async testConnection (file:///usr/src/app/src/database/index.js:171:20)
onlinetest-sitespeed.io-server-1 | at async SitespeedioServer.start (file:///usr/src/app/src/server.js:108:7)
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:38] ERROR: Trace Error: connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | at /usr/src/app/node_modules/pg-pool/index.js:45:11
onlinetest-sitespeed.io-server-1 | at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
onlinetest-sitespeed.io-server-1 | at async testConnection (file:///usr/src/app/src/database/index.js:171:20)
onlinetest-sitespeed.io-server-1 | at async SitespeedioServer.start (file:///usr/src/app/src/server.js:108:7)
onlinetest-sitespeed.io-server-1 exited with code 0
^[[A^CGracefully stopping... (press Ctrl+C again to force)
Aborting on container exit...
[+] Stopping 6/6
✔ Container onlinetest-mc-1 Stopped 0.0s
✔ Container onlinetest-sitespeed.io-testrunner-1 Stopped 0.0s
✔ Container onlinetest-sitespeed.io-server-1 Stopped 0.0s
✔ Container onlinetest-redis-1 Stopped 0.2s
✔ Container onlinetest-postgresql-1 Stopped 0.3s
✔ Container onlinetest-minio-1 Stopped 0.3s
^[[Acanceled
jahrichie ~/code/onlinetest [main] $ docker compose -f docker-compose.yml -f docker-compose.app.yml up
--build
[+] Running 6/0
✔ Container onlinetest-redis-1 Created 0.0s
✔ Container onlinetest-minio-1 Created 0.0s
✔ Container onlinetest-postgresql-1 Created 0.0s
✔ Container onlinetest-sitespeed.io-server-1 Created 0.0s
✔ Container onlinetest-mc-1 Created 0.0s
✔ Container onlinetest-sitespeed.io-testrunner-1 Created 0.0s
Attaching to onlinetest-mc-1, onlinetest-minio-1, onlinetest-postgresql-1, onlinetest-redis-1, onlinetest-sitespeed.io-server-1, onlinetest-sitespeed.io-testrunner-1
onlinetest-postgresql-1 |
onlinetest-postgresql-1 | PostgreSQL Database directory appears to contain a database; Skipping initialization
onlinetest-postgresql-1 |
onlinetest-postgresql-1 |
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:56.267 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:56.267 * Redis version=8.2.2, bits=64, commit=00000000, modified=1, pid=1, just started
onlinetest-redis-1 | 1:C 08 Jan 2026 00:45:56.267 * Configuration loaded
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.269 * monotonic clock: POSIX clock_gettime
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.272 * Running mode=standalone, port=6379.
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.273 * Server initialized
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * Reading RDB base file on AOF loading...
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * Loading RDB produced by version 8.2.2
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * RDB age 77835 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * RDB memory usage when created 0.95 Mb
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * RDB is base AOF
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.277 * Done loading RDB, keys loaded: 0, keys expired: 0.
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.278 * DB loaded from base file appendonly.aof.1.base.rdb: 0.004 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.278 * DB loaded from incr file appendonly.aof.1.incr.aof: 0.001 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.278 * DB loaded from append only file: 0.005 seconds
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.290 * Opening AOF incr file appendonly.aof.1.incr.aof on server start
onlinetest-redis-1 | 1:M 08 Jan 2026 00:45:56.290 * Ready to accept connections tcp
onlinetest-postgresql-1 | 2026-01-08 00:45:56.346 UTC [1] LOG: starting PostgreSQL 16.11 (Debian 16.11-1.pgdg13+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit
onlinetest-postgresql-1 | 2026-01-08 00:45:56.347 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
onlinetest-postgresql-1 | 2026-01-08 00:45:56.347 UTC [1] LOG: listening on IPv6 address "::", port 5432
onlinetest-postgresql-1 | 2026-01-08 00:45:56.352 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
onlinetest-postgresql-1 | 2026-01-08 00:45:56.371 UTC [28] LOG: database system was shut down at 2026-01-08 00:45:45 UTC
onlinetest-postgresql-1 | 2026-01-08 00:45:56.387 UTC [1] LOG: database system is ready to accept connections
onlinetest-mc-1 | mc: <ERROR>
onlinetest-mc-1 | Unable to initialize new alias from the provided credentials. Get "http://minio:9000/probe-bsign-z2k3631qqv9db1z4kxcarmj3x3fmqm/?location=": dial tcp 172.24.0.2:9000: connect: connection refused.
onlinetest-mc-1 exited with code 1
onlinetest-minio-1 | MinIO Object Storage Server
onlinetest-minio-1 | Copyright: 2015-2026 MinIO, Inc.
onlinetest-minio-1 | License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
onlinetest-minio-1 | Version: RELEASE.2025-09-07T16-13-09Z (go1.24.6 linux/arm64)
onlinetest-minio-1 |
onlinetest-minio-1 | API: http://172.24.0.2:9000 http://127.0.0.1:9000
onlinetest-minio-1 | WebUI: http://172.24.0.2:9001 http://127.0.0.1:9001
onlinetest-minio-1 |
onlinetest-minio-1 | Docs: https://docs.min.io
onlinetest-minio-1 |
onlinetest-mc-1 | Added `sitespeedio` successfully.
onlinetest-mc-1 | Bucket created successfully `sitespeedio/sitespeedio`.
onlinetest-mc-1 | Lifecycle configuration rule added with ID `d5ffshadms5c75hv7o2g` to sitespeedio/sitespeedio.
onlinetest-mc-1 | Access permission for `sitespeedio/sitespeedio` is set to `download`
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:57] ERROR: Could not get a connection to the database (retries 3): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:45:57] ERROR: Retrying in 5 seconds... (3 retries left)
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:57] INFO: No hostname found in configuration. Will use c72e6d9fd7cb
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:57] INFO: Starting testrunner c72e6d9fd7cb version 1.2.0
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:57] INFO: Connecting queue default on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:57] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:57] INFO: Retry default attempt 1: Retrying in 200 ms
onlinetest-mc-1 | Successfully applied new settings.
onlinetest-mc-1 | MinIO and lifecycle policy setup complete.
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] INFO: Retry default attempt 2: Retrying in 400 ms
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-mc-1 exited with code 0
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] ERROR: Error in default queue: Error: connect ECONNREFUSED 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] INFO: Retry default attempt 3: Retrying in 600 ms
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] ERROR: Could not connect to the Redis like queue on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | [2026-01-08 00:45:58] INFO: Connecting queue testrunners on 127.0.0.1:6379
onlinetest-sitespeed.io-testrunner-1 | file:///usr/src/app/src/queue/queuehandler.js:131
onlinetest-sitespeed.io-testrunner-1 | throw new Error('The queue is not available');
onlinetest-sitespeed.io-testrunner-1 | ^
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 | Error: The queue is not available
onlinetest-sitespeed.io-testrunner-1 | at QueueHandler.getQueue (file:///usr/src/app/src/queue/queuehandler.js:131:13)
onlinetest-sitespeed.io-testrunner-1 | at async SitespeedioTestRunner.start (file:///usr/src/app/src/sitespeedio-testrunner.js:56:22)
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 | Node.js v22.21.1
onlinetest-sitespeed.io-testrunner-1 |
onlinetest-sitespeed.io-testrunner-1 exited with code 1
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:46:02] ERROR: Could not get a connection to the database (retries 2): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:46:02] ERROR: Retrying in 5 seconds... (2 retries left)
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:46:07] ERROR: Could not get a connection to the database (retries 1): connect ECONNREFUSED 127.0.0.1:5432
onlinetest-sitespeed.io-server-1 | [2026-01-08 00:46:07] ERROR: Retrying in 5 seconds... (1 retries left)
o
This is a wonderful looking product, you two should be very proud of what you've built!
I tried to start docker on my ubuntu 24.03 laptop and my mac m2.
Connection issues for Redis and PG. I was able to resolve redis and it seems i'm only blocked from PG right now. I see you guys are working through some epic changes, and i'd love to help if I can.
If you'd prefer to handle internally I understand, but can you recommend a stable SHA to checkout I can play around with my goal: I plan to use this and create a service for Homepage (https://gethomepage.dev/widgets/services/) because the world needs this tool.
Logs are without my local changes.
CHEERS!