AFAIK não há documentação oficial sobre eles.
Esses arquivos foram usados somente pelo antigo e driver de execução LXC obsoleto . Eles eram hacks exigidos pela janela de encaixe ao usar o LXC para executar os contêineres.
O .dockerinit
era uma espécie de processo de inicialização . Foi o binário executado pelo comando lxc-attach
chamado ao iniciar um contêiner. Foi o responsável por configurar o ambiente, o usuário e o diretório de trabalho e depois executar o seu entrypoint / cmd.
O .dockerenv
continha as variáveis de ambiente definidas dentro do contêiner. Eles foram usados para configurar as variáveis de ambiente corretamente após o anexo lxc. Este arquivo foi lido pelo .dockerinit
process .
O novo libcontainer / runc driver ( o driver ativado por padrão ) não usa esses arquivos. Você os encontrará vazios em seus contêineres. Na verdade, o suporte do LXC foi removido recentemente do ramo de desenvolvimento do docker .
Então, talvez esses arquivos desapareçam no futuro, embora atualmente sejam amplamente usados por aplicativos para detectar a presença do docker.