java 中使用安全隨機數,SecureRandom
,在調用時,默認使用 /dev/random
,在 docker 容器中調用的時候,容易被阻塞掛起,參考文章如下:
- 解惑:SecureRandom極慢
- Not enough entropy to support /dev/random in docker containers running in boot2docker
總結如下三種方案:
- 添加 jvm 的參數:
-Djava.security.egd=file:/dev/./urandom
- 將宿主機的
/dev/urandom
映射到容器的/dev/random
- 將宿主機的
/dev/random
映射到容器的/dev/random