Configurando uma imagem Docker baseada no Debian 8, especificamente a imagem nginx com o uwsgi adicionado. O serviço da web em questão será executado via uwsgi como www-data. O serviço é copiado para o contêiner com um comando COPY no Dockerfile.
Usando nsenter, consigo conectar-me ao contêiner e depurar como o usuário www-data, o que tem sido super útil, mas estou preso.
O executável do serviço da web é copiado para o diretório / var / www / service , e tudo isso é bom. Quando fica difícil, não é possível carregar uma biblioteca em / var / www / service / database , embora seja de www-data :
www-data@4b8d07cf75a3:~$ ls -la /var/www/service/
total 36
drwxr-xr-x 20 www-data www-data 4096 Jun 7 13:59 .
drwxr-xr-x 5 root root 4096 Jun 7 13:49 ..
-rwxr--r-- 1 www-data www-data 2682 Jun 6 02:45 app.py
drwxr-xr-x 2 www-data www-data 4096 Jun 7 13:59 database
www-data@4b8d07cf75a3:~$ ls -la /var/www/service/database/
ls: cannot open directory /var/www/service/database/: Permission denied
O código app.py é iniciado, mas não pode acessar o diretório do banco de dados, e também não posso, a menos que eu seja raiz no momento.
Eu não vejo nada como um arquivo acl, então estou sem ideias. Alguma ajuda?
Tags permissions docker debian linux