Comments (2)
Hi! The /tmp/xfs-51811beb/build.log
log file should describe what is missing. I think the most likely cause is: tdl includes a node addon that is pre-built for glibc-based linux distributions (as noted in the README), but needs to be built from source on musl-based distributions like alpine, requiring a C++ toolchain (and python) to be installed on the system, which the image probably doesn't contain out of the box.
So, you can fix it either by moving to e.g. debian or ubuntu, for example by replacing FROM node:18-alpine
with FROM node:18-bookworm
(just in case, prebuit-tdlib
also doesn't support alpine) or installing the build tools on alpine, something like RUN apk update && apk add gcc g++ python make
should work (the dockerfile can be split into two steps to reduce the size of the final image).
Note that to run the app in the container, you also need TDLib built for the system you use there, so brew install tdlib
on the host machine wouldn't be sufficient.
from tdl.
Hi! The
/tmp/xfs-51811beb/build.log
log file should describe what is missing. I think the most likely cause is: tdl includes a node addon that is pre-built for glibc-based linux distributions (as noted in the README), but needs to be built from source on musl-based distributions like alpine, requiring a C++ toolchain (and python) to be installed on the system, which the image probably doesn't contain out of the box.So, you can fix it either by moving to e.g. debian or ubuntu, for example by replacing
FROM node:18-alpine
withFROM node:18-bookworm
(just in case,prebuit-tdlib
also doesn't support alpine) or installing the build tools on alpine, something likeRUN apk update && apk add gcc g++ python make
should work (the dockerfile can be split into two steps to reduce the size of the final image).Note that to run the app in the container, you also need TDLib built for the system you use there, so
brew install tdlib
on the host machine wouldn't be sufficient.
thanks, changing base image to node:18-bookworm
worked!
regarding that tdlib
on host machine is not enough i am aware of it. i plan to pack it separately from the app in a container on its own, connect tdl
to it and then clean up host machine, so it will be always both locally and in prod deployed via docker. but in order to move forward with actual app code I postponed this stuff. the whole docker build issue raised now only because i wanted to setup github actions to be sure i don't push broken code
thank you once more for the help, have a nice day
from tdl.
Related Issues (20)
- Unknown class "uploadFile" HOT 4
- Clients count HOT 1
- [Question] Event list ? HOT 5
- process is not defined ReferenceError: process is not defined HOT 2
- A utility to install types for arbitrary TDLib version HOT 1
- Unable to auth with prebuilt-tdlib with in Docker container HOT 5
- Slow response after creating multiple clients HOT 3
- Authorization using tdata HOT 1
- Failed to load 'td_json_client_create': Symbol not found: node_register_module_v115 HOT 2
- "Inline keyboard expected" when using keyboardButtonTypeRequestUser in reply markup HOT 2
- strange error HOT 15
- Example with client.login taking ()=>LoginDetails? HOT 1
- Publish fresh `prebuilt-tdlib` please HOT 1
- How to debug stopped process? HOT 1
- How can I use multiple clients? HOT 4
- [Help needed] I can't find the tdjson.dll for Windows HOT 3
- When relogin cant get auth code HOT 2
- When send voicenote with own client official desktop telegram shows it strange HOT 1
- How to click to an inline button HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tdl.