GithubHelp home page GithubHelp logo

There appears to be a constraint on the owner id number of the torrc.default file not reflected in the instructions about bitcoin-full-node-with-docker HOT 5 OPEN

jamesfpb avatar jamesfpb commented on July 18, 2024 1
There appears to be a constraint on the owner id number of the torrc.default file not reflected in the instructions

from bitcoin-full-node-with-docker.

Comments (5)

reverse-hash avatar reverse-hash commented on July 18, 2024

Hi @jamesfpb ,

To be honest, I have always deployed the nodes on new machines and probably, the ids have always matched.

I will review the Tor documentation to see if we have any other options and I will update the documentation accordingly.

Thanks for sharing this issue.

from bitcoin-full-node-with-docker.

reverse-hash avatar reverse-hash commented on July 18, 2024

I cannot find any reference or mention to that requirement. Also I was trying to simulate the issue but is not repicable...

# ls -n
total 4
-rw-r--r-- 1 1000 1099 303 Jun 12  2023 torrc.default
# chown nobody torrc.default 
# ls -n
total 4
-rw-r--r-- 1 65534 1099 303 Jun 12  2023 torrc.default
# exit
$ cd <repo>
$ docker-compose up -d tor
// ...
Jun 04 19:58:55.772 [notice] Read configuration file "/home/tor/torrc.default".

Can you think what it might be? Could it be something of the host machine?

from bitcoin-full-node-with-docker.

jamesfpb avatar jamesfpb commented on July 18, 2024

Thanks for your reply!
So it turns out my fix was better than my issue report!

I went back more thoroughly to explore removing and adding back the specific user id assignment in the Dockerfiles. Unfortunately I had it completely the wrong way round in my first report - apologies:

  • The Tor container does work with userid not assigned a specific value in the Dockerfile
  • However both the Bitcoin and the Electrs containers give permission denied errors trying to open their respective config files when the userid is not assigned in the Dockerfiles eventhough the assigned group id of the file is the same as the one assigned for the container user
  • Weirdly for these containers, when the userid is assigned in the Dockerfiles, I can change the owner of the config files so that it does not match the container user id (as you did in your reply) and the containers still run fine

I’m working on a Synology NAS which does some functions including user management a bit differently to other Linux so it’s possible that it’s unique to my situation:.
My host user and host user group are nodebg and nodebgs and I’m using 1033 and 65537 as container user and group ids.

  • Id nodebg → uid=1033(nodebg) gid=100(users) groups=100(users),65537(nodebgs)

Thanks for your further thoughts. No worries if it’s a dead end. Learning all the time…

from bitcoin-full-node-with-docker.

jamesfpb avatar jamesfpb commented on July 18, 2024

P.S. This Dockerfile for a Monero node also sets the user id for the container
https://github.com/sethforprivacy/simple-monerod-docker/blob/main/Dockerfile
There is reference in the readme to this being important on Synology NAS
https://github.com/sethforprivacy/simple-monerod-docker/blob/main/README.md#running-as-a-different-user

from bitcoin-full-node-with-docker.

reverse-hash avatar reverse-hash commented on July 18, 2024

Hi @jamesfpb

Thanks for sharing so detailed info. I was reviewing everything and I think your suggestion is the way to go:

  • Add the user id as a custom param for for all containers
  • Mention in the documentation your experience as a hint.

from bitcoin-full-node-with-docker.

Related Issues (3)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.