我有一个dockerfile,其中entrypoint以shell进程启动java app jar。在entrypoint之前,我已经在dockerfile中设置了USER nobody,以确保entrypoint shell由nobody用户而不是root用户执行。AWS ECS上容器的任务定义负责卷和挂载参数。因此,在容器运行时,理想情况下,主机上的/var/log/applogs会挂载到具有相同路径的容器中。但实际情况是,由于从root用户切换到nobody用户,因此运行容器(执行entrypoint)的nobody没有权利向容器中的/var/log/applogs/目录写入。因此,应用程序无法在容器中创建日志文件。
我看到的是,主机EC2上的/var/log/applogs成功地挂载到由nobody用户运行的容器上,但由于nobody用户在容器中缺少对该路径的写权限,因此无法将应用程序日志写到此处。
在dockerfile或其他方面,如何正确解决这个问题?