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:
- from https://docs.docker.com/engine/security/rootless/#uninstall, run
dockerd-rootless-setuptool.sh uninstall
- delete the user data (warning: i wasn’t using any docker volumes and i had no data to lose!!!) using the command that the previous script tells you
- add your user to the docker group and use the traditional “run docker as root” way: https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user
- from https://docs.docker.com/engine/security/rootless/#uninstall, run
I’m not very well versed on docker, but this sounds like a config issue. The behavior seems similar to “squash root” found in many other services.