如何在Docker容器中使用GnuPG,因为它缺少熵?
我需要将一个apt存储库停靠.其中的包需要签名,目前已完成 在此之前,需要使用gpg –gen-key创建密钥. 但这样私有密钥将在docker镜像内部创建,这似乎不是一个好习惯.此外,id甚至不起作用;运行gpg –gen-key –batch< gpg.in卡住:
我不知道是否甚至可以在docker容器中生成一个gpg密钥,即使它是,也可能不是一个好主意. 有没有办法通过外部密钥签署回购的内容? 最佳答案
缺少熵
Docker不提供虚拟/ dev / [u]随机设备.如果容器中没有足够的熵,则主机上没有足够的熵. 检查/ proc / sys / kernel / random / entropy_avail的内容,它们在Docker主机和容器上应该几乎相同(如果数量略有不同,它只是经常更改,否则重新检查几次). 可能的原因: >在虚拟机中运行docker主机,例如由于boot2docker或自构造的虚拟机.只需确保在虚拟机中获得更多的熵,对于开发人员机器而言,hasgd是一个非常简单的解决方案,但可能不适合生产. 外部生成密钥对 无论如何,在真实机器上生成密钥并且仅将(私有)子密钥移动到服务器可能更合理.这样,您可以不时地交换子密钥(如果它被泄露).阅读What is a good general purpose GnuPG key setup?,了解设置OpenPGP密钥时要考虑的不同事项. 在构建Docker镜像时,使用COPY将文件放入机器,然后使用gpg – 在Dockerfile中导入它.之后,它的使用方式与使用gpg –gen-key在容器内生成它的方式完全相同. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |