-
Notifications
You must be signed in to change notification settings - Fork 147
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Dockerfile #7
Conversation
Change to nodejs 16 to successfully build ZeroTier v. 1.84
Zerotier is a c/cpp-based program, which have no affiliate with nodejs. Ztncui is the one who use nodejs. However, according to https://github.com/key-networks/ztncui#prerequisites . Ztncui should use nodejs v14. Different versions(even they are LTS, but not a same major version) might lead to unwanted compiled program and unknown execution results. Refuse to merge due to consideration of compatibility. Please ask upstream if they support nodejs v16 or not. |
Hi @kmahyyg, All I know is that when I tried to build an updated image of ztncui using the Dockerfile in the HEAD of the master branch here (with
So I changed the nodejs env variable to match the version of nodejs I saw being installed (v. 16.x) somewhere during the build. The image that resulted after that change in the Dockerfile ran fine. Maybe you should try a build with the current Dockerfile and see if you get a working ztncui container. |
According to your logging, it seems that this problem is not here. There must be something wrong in a deeper layer. I'll try to investigate the reason and respond ASAP. however, since I'm currently on a business trip, some delay are expected. Thanks for your understanding. |
And also cc @key-networks to see if he could give me a hand like some explanation. |
@pjv could you please attach full container build log for both nodejs version number? |
@kmahyyg both build logs are here. (Line 544 in both of those logs is what made me think to change the environment variable in the Dockerfile). For me there is no urgency about this issue; I have a working build by changing the environment variable. I just wanted to share that with anyone else who may be trying to use this repo to produce updated builds of ztncui. Thanks again for your work here. |
Excellent. Things just go as what I imagined and your log confirmed this problem. Here, even if you specified nodejs version 14, it still installed version 16. That's the root cause of this behavior. https://gist.github.com/pjv/9a376235f5790dba63e244cb447b3964#file-nodejs_major-14-log-L561 Then all things went normal, however, here: Line 21 in c8649fc
packed all the binaries stuff or nodejs dependencies using nodejs 14, which made all dependencies inconsistent. There're two ways to fix this problem, I personally prefer the first one, since it wouldn't break anything in theory.
Line 13 in c8649fc
Why this scirpt does not take corresponding environment variable? This is an unintended behavior. But it is working previously.
Further comments are welcome. |
I found the solution, either you or me fix it should be okay. The following changes should be done:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Check latest comments in discussion of PR.
@kmahyyg I reverted the I tested this commit in my environment and it is producing a working image / container. I did not add the detailed explanation about the environment variable because I do not think I understand well enough where it is and isn't being used, so I will leave that documentation to you whenever you have the chance to add it. Thank you again for making this code available. It is good to be able to keep ztncui running with an up to date zerotier one node. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent work.
It is pretty important for us to keep zerotier up to date. Thanks again for your inquiry. And also, I here personally recommend @key-networks update the repo they have. Here's a relate ZT official post which respond to a recent vulnerability: https://www.zerotier.com/2021/09/21/incident-response-to-september-20th-2021/ . |
By the way, there seems some bad news here: key-networks/ztncui#79 I might need to upgrade to nodejs version 16 later :( |
* fix constant seed issue before generate password * fix #6: remove gosu due to strict perm check and use fixed debian version * fix #6: add custom docker image hosted by github * Update Dockerfile (kmahyyg#7) * Change pkg to nodejs 16.x to successfully build packed ZTNCUI * Switch back to correct nodejs 14.x installation script * docs(README.md): update nodejs environment note Related to PR kmahyyg#7 * chore(node_lts.sh): backup nodejs v14 env install script Related to kmahyyg#7 * update nodejs installation script * update to node 16 * update golang builder to bullseye * update readme * add explanation about public IP detection * readme.md: fix typo Co-authored-by: Patrick Young <16604643+kmahyyg@users.noreply.github.com> Co-authored-by: pjv <pjv@users.noreply.github.com>
Change to nodejs 16 to successfully build ZeroTier v. 1.84