Particularidades do Bind Mount

Arquivos criados pelo container e pelo terminal identificados com usuários diferentes:

$ ls -l
total 0
-rw-r--r-- 1 marcelo marcelo 0 Aug 25 11:30 teste.txt
-rw-r--r-- 1 root    root    0 Aug 25 11:31 teste2.txt

Essa seria uma desvantagem com níveis de segurança etc.

Uma boa prática é criar o container com o mesmo User ID do diretório do Host:

/tmp/volume/bind/vol$ echo $UID
1000

Criação de um Dockerfile:

/tmp/volume/bind$ touch Dockerfile
/tmp/volume/bind$ vim Dockerfile
FROM ubuntu
# Remove qualquer usuário existente com UID 1000 para evitar conflitos
RUN if id -u 1000 >/dev/null 2>&1; then userdel -f $(getent passwd 1000 | cut -d: -f1); fi
# Cria o usuário 'barbieri' com UID 1000
RUN useradd -u 1000 barbieri
# Define o usuário 'barbieri' como padrão
USER barbieri

Construção da imagem:

Execução do container:

O usuário "barbieri" dentro do container é o mesmo usuário "marcelo" fora do container.

Last updated