一个问题,你如何在不使用 docker swarm 的情况下处理 dockerfile 中的秘密。假设您在 npm 上有一些私有仓库,并通过提供凭据在 dockerfile 中使用 .npmrc 恢复相同的仓库。包还原后,显然我正在从容器中删除 .npmrc 文件。同样,它也适用于 NuGet.config 以及恢复容器内的私有存储库。目前,我在构建 dockerfile 时将这些凭据作为 --build-arg 提供。
但是像docker history --no-trunc这样的命令这样的命令会在日志中显示密码。有什么体面的方法来处理这个。目前,我不在 Kubernetes 上。因此,需要在 docker 本身中处理相同的问题。
我能想到的一种方法是安装 /run/secrets/ 并将其存储在内部,方法是使用一些包含密码的文本文件或通过 .env 文件。但是,这个 .env 文件必须是完成 CI/CD 过程的管道的一部分,这意味着它必须是源代码控制的一部分。有什么方法可以避免这种情况,或者可以通过管道本身来完成,或者可以在这里应用任何类型的加密/解密逻辑?
谢谢。
谢谢。