让我们有一个 Dockerfile ,它正在向linux映像中添加一些大文件:
Dockerfile
FROM busybox ADD some_really_large_file /
我想在windows上生成此映像,我需要该文件具有某些特定的文件权限,例如: -rw------- ( 600 ).
-rw-------
600
是否可以在windows上构建这样的映像而不必 RUN 这个 chmod 命令,这将使图像大小加倍?
RUN
chmod
我的问题也可以理解为:我可以修复docker安全警告吗:
安全警告:您正在针对非Windows Docker主机从Windows构建Docker映像。添加到构建上下文的所有文件和目录都将具有 -rwxr-xr-x 权限。建议重新检查并重置敏感文件和目录的权限。
-rwxr-xr-x
可以是例如 Windows Subsystem for Linux 不知为何用于此任务?
Windows Subsystem for Linux
以下问题帮助我使用 GNU焦油 (例如,内部 Windows Subsystem for Linux ):
首先,使用 -p 保留权限和 --mode 要设置所需的权限,请执行以下操作:
-p
--mode
tar -czvpf some_really_large_file.tar.gz --mode='a-rwx,u+rw' some_really_large_file
第二,因为 ADD 自动卸载,使用归档文件而不是Dockerfile中的原始文件:
ADD
FROM busybox ADD some_really_large_file.tar.gz /