我不确定是否应该Dockerfile为我的Node.js应用程序创建不同的文件.一个用于没有开发依赖项的生产,另一个用于包含开发依赖项的测试.
或者一个基本上是开发的文件Dockerfile.dev.然后两个文件的主要区别是npm install命令:
生产:
FROM ...
...
RUN npm install --quiet --production
...
CMD ...
Run Code Online (Sandbox Code Playgroud)
开发/测试:
FROM ...
...
RUN npm install
...
CMD ...
Run Code Online (Sandbox Code Playgroud)
问题出现了,因为我希望能够通过docker run命令在容器内运行我的测试.因此,我需要测试依赖项(通常是我的dev依赖项).
将生产中不需要的依赖项放入图像中似乎有点奇怪.另一方面,创建/维护第二个Dockerfile.dev只是微小的差异似乎也不对.那么这种问题的好习惯是什么呢?
我想将预签名 URL 与 AWS S3 结合使用。我注意到预签名 URL 包含aws_access_key_id和aws_security_token.
根据我的理解,它aws_security_token是 URL 的一部分,因为我使用的是临时安全凭证,并且它是正确签署 URL 所必需的。
但是,给前端客户端提供 URL 来下载图像是否可以?是aws_security_tokenURL 的一部分(未加密)。我担心安全性,并且无法弄清楚令牌的用途是什么。以及攻击者可以用 myaws_access_key_id和aws_security_token.