self-hosted
self-hosted copied to clipboard
?bug: Cannot invoke 'uname` to get architecture type
What happened?
I can't quite understand what the error is related to, I think I did everything according to the instructions :)
docker-compose logs api and minio/mc
Attaching to revolt_api_1
api_1 | INFO revolt_config > Starting [email protected]
api_1 | WARN revolt_config > No Captcha key specified! Remember to add hCaptcha key.
api_1 | **ERROR os_info::architecture > Cannot invoke 'uname` to get architecture type: Os { code: 2, kind: NotFound, message: "No such file or directory" }**
api_1 | INFO revolt_database::models::admin_migrations::ops::mongodb > Migrating the database.
createbuckets_1 | mc: <ERROR> Couldn't construct anonymous client for `minio`. No valid configuration found for 'minio' host alias.
createbuckets_1 | Waiting minio...
Check to see if you can invoke the uname command on the system console
Same issue. uname and uname -a works fine in host machine
Not sure if it's the same issue, but looks quite the same for me. Happens when trying to connect WebSocket
events-1 | INFO revolt_config > Starting [email protected]
events-1 | ERROR os_info::architecture > Cannot invoke 'uname` to get architecture type: Os { code: 2, kind: NotFound, message: "No such file or directory" }
Right after that, main thread collapses
events-1 | thread 'main' panicked at /home/rust/src/crates/core/presence/src/lib.rs:166:43:
events-1 | Redis connection: FailedConnection
events-1 | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
uname in host machine looks good as far as I can tell
uname -a
Linux debian 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux
Fresh setup with .env / Revolt.toml changes for external access via reverse proxy (curl and wscat from local machine directly provides the same results). Used mongo version (4.4 for older CPU as guide says).
Not sure if it's the same issue, but looks quite the same for me. Happens when trying to connect WebSocket
events-1 | INFO revolt_config > Starting [email protected] events-1 | ERROR os_info::architecture > Cannot invoke 'uname` to get architecture type: Os { code: 2, kind: NotFound, message: "No such file or directory" }Right after that, main thread collapses
events-1 | thread 'main' panicked at /home/rust/src/crates/core/presence/src/lib.rs:166:43: events-1 | Redis connection: FailedConnection events-1 | note: run with `RUST_BACKTRACE=1` environment variable to display a backtraceuname in host machine looks good as far as I can tell
uname -a Linux debian 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/LinuxFresh setup with .env / Revolt.toml changes for external access via reverse proxy (curl and wscat from local machine directly provides the same results). Used mongo version (4.4 for older CPU as guide says).
Yes, absolutely same issue (Ubuntu 24.04.1 LTS), old homelab Intel NUC with mongo 4.4.
Same error here, on Synology DS918+.
Same issue here.
uname -a
Linux revolt-chat 5.14.0-513.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Sep 27 07:50:59 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
I'm hosting on Linux/Ubuntu and ran into the same problem.
The error message is created in the os_info library, when i tries to run uname: https://github.com/stanislav-tkach/os_info/blob/master/os_info/src/architecture.rs#L10
Because the revolt image is stripped-down and has no executables, this library call fails to execute uname and fails.
I was able to work around it by modifying my compose.yml to manually copy uname from the original image used to build revolt in the first place.
Specifically, I made this change to my compose.yml:
BEFORE
# API server (delta)
api:
image: ghcr.io/revoltchat/server:20240929-1
AFTER
# API server (delta)
api:
build:
dockerfile_inline: |
FROM rust:1.77.2-slim-bookworm AS builder
FROM ghcr.io/revoltchat/server:20240929-1 AS target
COPY --from=builder /bin/uname /usr/bin/uname
This is fixed in build 20241212-1