netstat mostra o socket conectado com o caminho para ele, mas o caminho não existe

1

Estou dentro de um contêiner docker e executei netstat -x | grep docker que me pegou o:

unix  3      [ ]         STREAM     CONNECTED     62288711 /var/run/docker.sock
unix  3      [ ]         STREAM     CONNECTED     59416957 /var/run/docker.sock
unix  3      [ ]         STREAM     CONNECTED      52070 /var/run/dockershim.sock
unix  3      [ ]         STREAM     CONNECTED      52071 /var/run/dockershim.sock
unix  3      [ ]         STREAM     CONNECTED      51987 /var/run/docker.sock
unix  3      [ ]         STREAM     CONNECTED     63299168 /var/run/docker.sock
unix  3      [ ]         STREAM     CONNECTED      52649 /var/run/docker.sock
unix  3      [ ]         STREAM     CONNECTED      42851 /var/run/docker/libcontainerd/docker-containerd.sock

Mas quando quero acessar /var/run/docker.sock ou mesmo /var/run , obtenho

ls: /var/run/: No such file or directory

Isso é algum tipo de mecanismo de segurança como uma capacidade que é descartada? Eu me pergunto por que o netstat pode apontar para esse caminho enquanto não está lá? Existe alguma outra maneira de acessar esse socket, já que tem que estar lá de alguma forma?

    
por InsOp 20.07.2018 / 09:48

1 resposta

1

A execução desse comando dentro de um contêiner do Docker mostra informações sobre soquetes em um sistema inteiro (não apenas dentro do contêiner). Esta informação está disponível para processos de container via / proc / net / unix e outros arquivos similares, que o netstat usa. Portanto, /var/run/... na saída do netstat é um caminho global em seu sistema, não disponível para aquele contêiner específico.

    
por 13.11.2018 / 13:07