ephemeraHQ/message-kit

Bug: Backend Deployment Issues with @xmtp/node-sdk Due to GLIBC Compatibility in Docker

Closed this issue · 1 comments

Description:
I'm encountering issues deploying the backend after switching to the new @xmtp/node-sdk package. The initial error I faced was:

Error: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32 not found

This was caused by the debian:bullseye Docker image having an older GLIBC version. I then tried using debian:bookworm (with GLIBC 2.36), but the error changed to:

Error: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.38 not found

Additionally, I'm seeing this error:

Error: Cannot find module '@xmtp/node-bindings-linux-x64-gnu'

Steps Taken:

  • Switched Docker base image from debian:bullseye to debian:bookworm.
  • The errors persisted due to GLIBC compatibility issues.

Questions:

  1. Which Debian or NPM packages need to be installed to resolve this compatibility issue in Docker?
  2. Does the node SDK require such a recent version of GLIBC for specific reasons?
  3. Would it be recommended to use an OS image like ubuntu:24.04 (with GLIBC 2.38+) in Docker as a workaround?

Additional Context:

  • The node bindings are built using Ubuntu 24.04 via GitHub runners (warp build).
  • Upgrading GLIBC in-place within a container is a complex process.

Current Workaround:

Switching to ubuntu:noble resolved the issue.

  • the fix is to use an ubuntu 24.04 image in Docker
  • if running on his ubuntu laptop directly , be sure that he has ubuntu 24.04 at least