On Docker development server, arc shell offers a Debian userland
with Arcanist and Git to interact with Phabricator repositories,
commit, merge, etc.
This is intended to ease the test and maintenance of the Docker images
repositories directly on a Docker development server.
Currently, those containers run as root. Regardless if it's acceptable
or not from a security point of view, this method has a major usability
drawback when the Git index is manipulated, as it populates files owned
by root, requiring afterwards a chown.
This change offers to run the container under the own user id. This user
must exist in the image to avoid issues with SSH client and should exist
to avoid the "I have no name!" prompt. As such, a custom build is needed.
The custom image uses the set (UID, GID) as image tag. The GID ensures
minimal friction when creating directories or working with group permissions.