Im a massive noob when it comes to backend dev-ops stuff, but I’m trying to setup a KMS provided by Tatum.io that let’s you sign transactions with private keys. Everything seems straightforward except for this one step in their Github repo that mentions mapping the home folder so that the docker volume is mapped to locale storage. Only problem is, I’m not really sure how to go about it. Could anyone help me understand what to do? The Docker docs they link to are not helpful to me at all (too much info to know where to start).
It is just mounting your local folder into the container. I would have given you the same link or based on what I saw in the README of the mentioned repo, this link:
Please, quote the commands or statements that you don’t understand and try to explain what you do understand so we can tell you about the rest.
If the documentation is not enough, there are many explanations on the internet with real examples. You need to learn the basics of containers and Docker if you want to use it. If you have a specific question, we can try to answer that or give you a better link which explains it.
From my understanding the command they give should be automatically mounting the $HOME folder to the /root/.tatumrc directory through the -v command. The problem is that is does not do this as when I go to use the commands, I get an error saying there is no storage path or password (the password is stored in the .env file in the $HOME folder).Im assuming that I get this error because the KMS is trying to access the password, but it’s not accessible because the volume is not mapped to the $HOME folder.
I just wonder why they put the step to map the home folder if the commands in the other steps do this already?
Please, don’t just mention what you don’t understand in the readme, but also quote it. I am not sure what you mean exactly and I would not like to read the whole readme since I don’t need that software. Quote the parts that you don’t understand so we can find exactly what part you are referring to.
If you get an error message, share the exact error message, because we may interpret it differently and give you an explanation why you get that. I am not sure what you shared was the exact error message or just a part of it. Of course, remove sensitive information from the error message before sharing. Make sure you format your post properly when you share error messages, codes or basically any terminal outputs so your message will not be changed by the markdown filter or caught by the spam filter if it contains links.
Let’s not use the word “volume” here to avoid confusion. If you used any network filesystem on Linux, then you probably know the concept of “mounting” it. This is what happens with your HOME folder. I would not use the word “mapped” but “mounted”. The difference is that it is a “bind mount” so it is not a remote filesystem. So it is mounted from your host into your container. If the container runs, the mounted folder is available from the container. It is important to know that the error message is given by Docker or the application in the container. This is why seeing the exact error message is important.
I think it is more likely that the application in the container does not have permission to read or write a file. You can try to run the
ls -l command in the container to see your mounted home from the container.
docker run -v $HOME:/root/.tatumrc --entrypoint "" tatumio/tatum-kms ls -l /root/.tatumrc