我正在创建docker映像,稍后将在具有严格设置的Kubernetes上使用它们:
出于测试目的,我可以在docker-compose配置中使用read_only: true
模拟1)。然后,我必须为具有写活动的地方添加一些目录,例如/ run和/ var。但是,如果我尝试使用here所示的tmpfs,则该目录归root用户所有:
drwxr-xr-x 2 root root 40 Nov 27 11:05 /var
是否有使其成为drwxrwxrwx
的秘密选择?有没有其他选择(除了普通磁盘目录)?
运行:
答案 0 :(得分:1)
您可以指定tmpfs模式:
docker run -d \
-it \
--name tmptest \
--mount type=tmpfs,destination=/app,tmpfs-mode=1770 \
nginx:latest
https://docs.docker.com/storage/tmpfs/#specify-tmpfs-options
使用较早的2.x撰写文件语法,可以将其指定为:
version: "2.4"
services:
my_app:
image: my_app
read_only: true
restart: always
tmpfs:
- /run:mode=770,size=1k,uid=200,gid=10000
https://github.com/docker/cli/issues/698#issuecomment-429688027
对于3.x语法,使用长格式卷定义,您将需要解决以下问题: