Installed a new debian server, installed docker, but then now i have a problem with permissions on passed directories.
On the previous server, the uid/gids inside the docker container match the uid/gid on the real server.
Root is 0, www-data is 33, and so on.
On this new server, instead, files owned by root (0) in the container are translated to 1000 on the server, www-data (33) is 100032, and so on (+1000 appended to the uid)
Is this normal or did I misconfigure something? On the previous server I was running everything as root (the interactive user was root), and i would like to avoid that
checked .bash_history, looks like i installed docker in the new rootless mode
wget get.docker.com ls mv index.html docker.sh chmod +x docker.sh ./docker.sh dockerd-rootless-setuptool.sh install sudo dockerd-rootless-setuptool.sh install sudo apt install uidmap dockerd-rootless-setuptool.sh install
now i need to see how to restore it to work in the traditional way or i will become crazy with the permissions…
I fixed it:
for future reference:
dockerd-rootless-setuptool.sh uninstall
Why go through all of that complexity when you could just
sudo apt install docker
?i don’t want to type
sudo
before each singledocker
commandYou can do that with regular docker. Just add your user to the docker group.
(don’t forget to log out and log in again after adding new groups to your user)
Niche use case, but you can also use
newgrp
to run commands with a recently-added group to your user, without having to logout/login yet.Or start a new session by typing bash, when already in bash.
So add your user to the new docker group made on install of that package and you’ll be able to docker without sudo. You may need to relogin or
newgrp docker
before it works tho