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
Yep! The names are basically just a convenient way for referencing a user or group ID.
Under normal circumstances you should let the system decide what IDs to use, but in the confined environment of a docker container you can do pretty much what you want.
If you really, really, really want to create a user and group just set the IDs manually:
FROM alpine:latest COPY myscript.sh /app/myscript.sh RUN addgroup -g 10001 mycoolgroup && adduser -D -u 10000 -G mycoolgroup mycooluser USER mycooluser:mycoolgroup CMD ["sh", "/app/myscript.sh"]
Just make sure to stay at or above 10000 so you won’t accidentally re-use IDs that are already defined on the host.