Docker - debian: stretch-slim - instala man e visualiza manpages

2

Ao usar a imagem do debian:stretch Docker, o /usr/share/man/ já contém muitas páginas de manual e man pode ser facilmente instalado para visualizá-los:

$ apt-get update
$ apt-get install man
$ man ls
$ man cp

No entanto, ao usar a imagem do debian:stretch-slim Docker, a% O diretório/usr/share/man/ está intencionalmente vazio:

These tags are an experiment in providing a slimmer base (removing some extra files that are normally not necessary within containers, such as man pages and documentation)

Como preencho o diretório /usr/share/man/ , então posso usar man para exibir páginas de manual para utilitários principais (como cat , chmod , chown , cp , ls , mkdir , mv , rm , tail , etc)?

    
por TachyonVortex 07.11.2018 / 22:54

1 resposta

3

O pacote coreutils preenche o diretório /usr/share/man/man1/ com manpages para utilitários principais .

No entanto, simplesmente executar apt-get update e apt-get install coreutils não é suficiente, porque dpkg foi configurado para excluir /usr/share/man/* , usando path-exclude em /etc/dpkg/dpkg.cfg.d/docker (consulte aqui e aqui ).

O primeiro passo é remover essa linha do arquivo /etc/dpkg/dpkg.cfg.d/docker . Uma maneira de fazer isso é usar sed :

$ sed -i '/path-exclude \/usr\/share\/man/d' /etc/dpkg/dpkg.cfg.d/docker

dpkg também foi configurado para excluir /usr/share/groff/* e isso precisa ser desfeito também (já que groff é necessário para renderizar as páginas de manual):

$ sed -i '/path-exclude \/usr\/share\/groff/d' /etc/dpkg/dpkg.cfg.d/docker

Agora, o diretório /usr/share/man/man1/ precisa ser preenchido no pacote coreutils . Como o coreutils já está instalado na imagem debian:stretch-slim Docker, ele precisa ser reinstalado:

$ apt-get update
$ apt-get install --reinstall coreutils

Finalmente, man pode ser instalado e as páginas de manual podem ser visualizadas:

$ apt-get install man
$ man ls
$ man cp

Também é útil instalar less , que man usará para paginar as páginas de trabalho e fornecerá um melhor experiência do que o more paginator padrão:

$ apt-get install less

Perguntas relacionadas:

por 07.11.2018 / 22:54